> ## Documentation Index
> Fetch the complete documentation index at: https://docs.y.uno/llms.txt
> Use this file to discover all available pages before exploring further.

# iOS SDK Changelog

> Latest updates and version history for the Yuno iOS SDK

export const ChangelogBadge = ({type}) => {
  const types = {
    added: {
      color: 'success',
      label: 'ADDED'
    },
    changed: {
      color: 'warning',
      label: 'CHANGED'
    },
    deprecated: {
      color: 'alert',
      label: 'DEPRECATED'
    },
    removed: {
      color: 'error',
      label: 'REMOVED'
    },
    fixed: {
      color: 'info',
      label: 'FIXED'
    },
    security: {
      color: 'security',
      label: 'SECURITY'
    },
    breaking: {
      color: 'breaking',
      label: 'BREAKING'
    }
  };
  const config = types[type.toLowerCase()] || ({
    color: 'secondary',
    label: type.toUpperCase()
  });
  return <span className={`status-badge status-${config.color}`}>
      {config.label}
    </span>;
};

## v2.20.0

*July 8, 2026*

* <ChangelogBadge type="changed" /> **Standard Click to Pay Flow**\
  The payment process will now fall back to the standard Click to Pay flow if a checkout session with Passkey enabled lacks a callback URL.

* <ChangelogBadge type="changed" /> **Card Number Validation**\
  Improved card number validation according to specific card schemes.

* <ChangelogBadge type="changed" /> **Document Number Validation**\
  Enhanced validation for document numbers with country-specific rules and clearer error messages.

* <ChangelogBadge type="added" /> **Expiry Date Smart Parser**\
  Introduced a smart parser for expiry dates that auto-prefixes '0', formats '1X' as '01/X', and caps input at four digits, along with a dedicated error for expired cards.

* <ChangelogBadge type="changed" /> **Instruction Icon Display**\
  Empty or null icons in the instruction view are now respected, aligning iOS behavior with Web and Android when no icon is provided.

* <ChangelogBadge type="changed" /> **Installment ID in Payment Requests**\
  The payment request now includes the selected installment ID, defaulting to the plan ID if the installment ID is empty.

* <ChangelogBadge type="changed" /> **Saved-Card Checkout Layout**\
  Saved-card checkout now shows a compact card summary instead of the large card image, so the CVV field is visible without scrolling.

## v2.19.0

*July 6, 2026*

* <ChangelogBadge type="changed" /> **Installments Dropdown Display**\
  The total amount is now shown for each option in the installments dropdown.

## v2.18.0

*June 12, 2026*

* <ChangelogBadge type="added" /> **Headless Resume Card Payment**\
  Introduced a new method to resume a server-side created card payment, handle remaining actions such as post-3DS challenge, and deliver results through a closure.

## v2.17.2

*June 10, 2026*

* <ChangelogBadge type="fixed" /> **Bug Fix with Card Forms**\
  Resolved a crash issue that occurred with unfolded card forms when using multiple payment methods.

## v2.17.1

*June 2, 2026*

* <ChangelogBadge type="fixed" /> **Render Mode and Apple Pay Form Issues**\
  Resolved issues with the render mode loader and the Apple Pay form view to ensure proper functionality.

## v2.17.0

*May 25, 2026*

* <ChangelogBadge type="added" /> **Netcetera Native 3DS SDK Support**\
  Introduced support for the Netcetera Native 3DS SDK, enabling enhanced security for transactions.

* <ChangelogBadge type="added" /> **Slim Form Variant**\
  A new form layout is available that consolidates card information and address sections into a more compact format. This is available as an opt-in setting.

* <ChangelogBadge type="changed" /> **Secure Payment Badge Visibility**\
  Added an opt-in setting to hide the "Secure payment with YUNO" badge, providing greater flexibility in UI customization.

## v2.16.0

*May 8, 2026*

* <ChangelogBadge type="added" /> **Flexible Actions in Enrollment**\
  Enrollment now supports the same dynamic action screens used in payments, including PIN, image, payment code, OTP, and info screens.

## v2.15.0

*April 10, 2026*

**Form Experience**

* <ChangelogBadge type="changed" /> **Optional Delegate viewController**\
  `delegate.viewController` is now optional, simplifying integrations that do not need to provide a presenting controller. No changes required if you are already setting it.

* <ChangelogBadge type="added" /> **Auto-advance**\
  The form now auto-advances to the next field when input is valid, reducing keystrokes during checkout. No configuration required.

* <ChangelogBadge type="added" /> **Glass Keyboard Toolbar**\
  Added a keyboard toolbar with a glass effect for iOS 26. The toolbar appears automatically on iOS 26 and has no effect on earlier versions.

* <ChangelogBadge type="changed" /> **Expiration Date Single Source**\
  Removed redundant `@Published` `expirationMonth` and `expirationYear` properties. Expiration date now has a single canonical source, eliminating potential state inconsistencies.

**Address & Contact Collection**

* <ChangelogBadge type="added" /> **Apple Pay Contact Fields**\
  The Apple Pay sheet now requests billing/shipping address, name, email, and phone based on the merchant's required fields configuration. Driven by Dashboard settings — no code changes required.

* <ChangelogBadge type="added" /> **Shipping Address Support**\
  Card and APM forms now support shipping address entry, including a billing/shipping toggle and field validation.

**Enrollment & Validation Fixes**

* <ChangelogBadge type="fixed" /> **CVV Length for Enrolled Cards**\
  Fixed the CVV field character limit for enrolled cards: the field now enforces the correct length from `securityCodeLength` in the enrollment data. Previously the default 3-digit limit was always applied.

* <ChangelogBadge type="fixed" /> **Validate IIN Session Header**\
  The validate IIN endpoint now sends `customer_session` instead of `checkout_session` during enrollment. This fixes a validation error that occurred when the session type was mismatched.

## v2.14.2

*March 25, 2026*

* <ChangelogBadge type="fixed" /> **Render Flow Form Hang**\
  Fixed an issue where the render flow could hang on the form view when the form was disabled.

## v2.14.1

*March 10, 2026*

* <ChangelogBadge type="fixed" /> **Card Expiration Year Mismatch**\
  Fixed an inconsistency in the card form expiration year value.

## v2.14.0

*February 25, 2026*

* <ChangelogBadge type="changed" /> **Apple Pay Flow Order**\
  Apple Pay is now triggered before the OTT step for a faster checkout experience.

* <ChangelogBadge type="added" /> **Free Trial Support**\
  Added support for free trial transactions.

* <ChangelogBadge type="fixed" /> **Loader Dismiss Behavior**\
  Fixed the loader dismissal so that it properly closes the last presented view controller, preventing stuck screens after loading finishes.

* <ChangelogBadge type="added" /> **Hindi, Bengali, Malayalam and Urdu Localization**\
  Added Hindi, Bengali, Malayalam and Urdu language support, including Right-to-Left layout for Urdu.

* <ChangelogBadge type="changed" /> **Country Data Endpoint Migration**\
  Migrated country data lookups to the checkout country-data endpoint with session headers. No integration changes required.

## v2.13.0

*January 30, 2026*

* <ChangelogBadge type="added" /> **Dynamic CVV Max Length**\
  The CVV field now enforces a dynamic maximum length based on the `securityCodeLength` value returned by the API. Previously the field always used a fixed 3-digit limit.

* <ChangelogBadge type="changed" /> **Card IIN Endpoint Migration**\
  Migrated card IIN lookups to the `card-info` endpoint with checkout session headers. Dynamic co-badged card brand selection is now supported. No integration changes required.

* <ChangelogBadge type="added" /> **Platform Identification API**\
  Added a public `setPlatform` method and sub-platform header to all requests. Use `setPlatform` when integrating the SDK inside a wrapper framework.

* <ChangelogBadge type="added" /> **Punto Pago Warning Banner**\
  Added a warning banner for the Punto Pago kiosk disclaimer. Activated automatically for eligible payment methods — no integration changes required.

* <ChangelogBadge type="changed" /> **Cardholder Name Max Length**\
  Increased the cardholder name field maximum length from 50 to 255 characters. No integration changes required.

* <ChangelogBadge type="added" /> **Alphanumeric CNPJ Validation**\
  The CNPJ field now accepts alphanumeric input to support the updated Brazilian tax ID format. No integration changes required.

* <ChangelogBadge type="added" /> **API Key Region Support**\
  Added region parsing from the API key. The SDK now routes requests to the correct regional endpoint automatically.

* <ChangelogBadge type="fixed" /> **OKTO PIX Payment**\
  Fixed PIX payments through OKTO so that the payment method is correctly sent in the issuers request and bank-transfer form validation accepts the right field combinations.

## v2.12.3

*January 20, 2026*

* <ChangelogBadge type="changed" /> **Cardholder Name Now Optional**\
  The cardholder name field is now optional in card forms. Forms no longer block submission when this field is empty.

## v2.12.2

*January 8, 2026*

* <ChangelogBadge type="fixed" /> **Data Race in Payment Methods List**\
  Resolved a data race condition in the payment methods list loading function. This fix eliminates intermittent crashes on devices running concurrent background tasks.

## v2.12.1

*December 20, 2025*

* <ChangelogBadge type="fixed" /> **Apple Pay in Render Mode**\
  Fixed an Apple Pay initialization issue that prevented the payment sheet from appearing in render mode. Apple Pay now initializes correctly in all integration modes.

## v2.12.0

*December 5, 2025*

* <ChangelogBadge type="breaking" /> **cardFormType Removed from Initialization**\
  Removed `cardFormType` from SDK initialization. Card form type must now be configured in the Dashboard Checkout Builder. Update your integration before upgrading.\
  [Migration guide →](/changelog/migration-guides/ios/v2-11-to-v2-12)

* <ChangelogBadge type="added" /> **3DS in Enrollment**\
  Added 3D Secure authentication support during card enrollment flows.

* <ChangelogBadge type="added" /> **3DS Fallback Behavior**\
  Added fallback handling for 3DS authentication when the primary path is unavailable.

* <ChangelogBadge type="added" /> **Luhn Card Number Verification**\
  Card numbers are now validated with the Luhn algorithm before submission, surfacing invalid numbers earlier in the form.

* <ChangelogBadge type="added" /> **Co-Badged Card Choice UI**\
  Added a card-brand selector when the entered card supports more than one network, letting customers choose which network to use.

* <ChangelogBadge type="added" /> **Installments Financial Cost Table**\
  Added a financial cost table to the installments view so customers can see total cost details per plan.

* <ChangelogBadge type="added" /> **Substatus from WebSocket**\
  Payment notifications delivered via WebSocket now include the substatus value, enabling finer-grained status handling in the host app.

* <ChangelogBadge type="changed" /> **Headless Enrollment Raw Status**\
  Headless enrollment now returns the raw backend status instead of a mapped enum value, giving integrators direct access to provider-specific states.

* <ChangelogBadge type="fixed" /> **Card Form Placeholder Font**\
  Fixed an issue where card form placeholders did not pick up the custom font configured through Appearance.

## v2.11.3

*December 1, 2025*

* <ChangelogBadge type="changed" /> **RTL Driven By SDK Language**\
  Right-to-Left layout is now applied based on the SDK language setting instead of the device language, giving merchants direct control over checkout direction.

## v2.11.1

*November 20, 2025*

* <ChangelogBadge type="fixed" /> **Bug Fixes and Stability**\
  Various bug fixes and stability improvements. No API changes required.

## v2.11.0

*November 5, 2025*

* <ChangelogBadge type="changed" /> **Podspec Configuration Updates**\
  Updated podspec configuration for improved CocoaPods compatibility. No API changes required.

* <ChangelogBadge type="fixed" /> **Bug Fixes and Stability**\
  Various bug fixes and stability improvements. No API changes required.

* <ChangelogBadge type="added" /> **RTL Layout and Arabic Language**\
  Added Right-to-Left layout support and Arabic localization for checkout screens.

* <ChangelogBadge type="changed" /> **Brand Field in Headless**\
  The brand field is now mapped and surfaced through the headless integration.

## v2.10.1

*October 20, 2025*

* <ChangelogBadge type="changed" /> **Updated Package Checksum**\
  Updated the Swift Package Manager checksum. Re-resolve your package dependencies after upgrading.

## v2.10.0

*October 5, 2025*

* <ChangelogBadge type="fixed" /> **Bug Fixes and Stability**\
  Various bug fixes and stability improvements. No API changes required.

* <ChangelogBadge type="changed" /> **Architecture Improvements**\
  Internal architecture refactoring for improved maintainability. No API changes required.

* <ChangelogBadge type="added" /> **Payment and Enrollment in a Single Flow**\
  Added support for combining payment and enrollment in the same checkout flow.

* <ChangelogBadge type="added" /> **CEP Address Auto-Fill**\
  Added support for calling CEP services to auto-fill Brazilian address fields from a postal code.

* <ChangelogBadge type="added" /> **Notification URL in Apple Pay Token**\
  The Apple Pay payment token payload now includes the notification URL.

## v2.9.0

*September 10, 2025*

* <ChangelogBadge type="changed" /> **Cards Expiring This Month Allowed**\
  Cards expiring in the current month and year are now accepted at checkout. Previously these cards were incorrectly rejected as expired.

* <ChangelogBadge type="added" /> **Click to Pay Passkey Support**\
  Added Click to Pay passkey authentication support. Activated automatically for eligible transactions — no integration changes required.

* <ChangelogBadge type="added" /> **PayPal Installments**\
  Added support for PayPal installments payment flow. Activated automatically when PayPal installments is configured for your account.

* <ChangelogBadge type="added" /> **Dark Mode Support**\
  The SDK UI now adapts to the system dark mode setting. No configuration required; the SDK follows the device appearance automatically.

* <ChangelogBadge type="fixed" /> **Dark Mode in Dropdowns**\
  Fixed dropdown components so they render correctly in dark mode.

* <ChangelogBadge type="fixed" /> **Processing Status on Close**\
  The SDK now reports a processing status when the customer closes an action screen mid-flow.

* <ChangelogBadge type="fixed" /> **CEP Neighborhood Handling**\
  Fixed CEP address auto-fill so the neighborhood field is populated correctly.

## v2.8.1

*August 20, 2025*

* <ChangelogBadge type="changed" /> **Hide Debit Cards When Credit Only**\
  Debit cards are now hidden from the payment methods list when the merchant has enabled credit-only mode. No integration changes required.

* <ChangelogBadge type="added" /> **Click to Pay Passkey for Render Mode**\
  Click to Pay passkey authentication is now supported in render mode. No integration changes required.

## v2.8.0

*August 5, 2025*

* <ChangelogBadge type="added" /> **ACH Field Enrollment**\
  Added ACH bank account fields to the enrollment form. No integration changes required; the fields appear automatically when ACH enrollment is configured.

* <ChangelogBadge type="changed" /> **Settings Migration v1 to v2**\
  SDK settings have been migrated from the v1 schema to v2. Existing settings are migrated automatically on first launch after upgrading.

* <ChangelogBadge type="added" /> **Secondary Background Color in Flexible Actions**\
  Flexible actions now support a secondary background color for improved UI customization. Configure via the `YunoConfig.styles` object.

* <ChangelogBadge type="added" /> **Full Payment List Styling**\
  Added styling support to the full payment list view. Configure appearance via the `YunoConfig.styles` object.

* <ChangelogBadge type="added" /> **Traditional Chinese Date Format**\
  Added Traditional Chinese (zh-TW) date format for the MM/YY expiration field.

* <ChangelogBadge type="fixed" /> **Payment Full Notifications**\
  Fixed an incorrect notification surfaced in the payment-full flow.

* <ChangelogBadge type="fixed" /> **Duplicate Events in Payment Full**\
  Fixed duplicate events emitted when the payment-full list was used in its unfolded state.

* <ChangelogBadge type="fixed" /> **Duplicate Merchant Notifications**\
  Fixed a duplicate notification sent to the merchant when an action view finished with an expire or cancel result.

## v2.7.1

*July 20, 2025*

* <ChangelogBadge type="added" /> **Click to Pay with Passkey**\
  Added Click to Pay authentication with passkey support. Activated automatically for eligible transactions — no integration changes required.

* <ChangelogBadge type="added" /> **Pending Status Enrollment Notification**\
  The SDK now notifies the host app of pending status during enrollment when redirecting to a deeplink. Listen for the `pending` status in your enrollment callback.

* <ChangelogBadge type="fixed" /> **NuPay Copy**\
  Fixed an incorrect copy string in the NuPay payment method UI.

## v2.7.0

*July 5, 2025*

* <ChangelogBadge type="added" /> **ClearSale Web Integration**\
  Integrated ClearSale fraud prevention via web integration. Activated automatically when ClearSale is configured for your account — no integration changes required.

## v2.6.0

*June 20, 2025*

* <ChangelogBadge type="added" /> **Navigation Toolbar for Keyboard**\
  Added a navigation toolbar that appears above the keyboard in payment and enrollment forms. The toolbar provides previous/next field navigation and a dismiss button.

## v2.5.0

*June 5, 2025*

* <ChangelogBadge type="added" /> **Recurring Apple Pay Support**\
  Added support for recurring Apple Pay subscriptions. The SDK handles the recurring payment sheet automatically when the checkout is configured for subscriptions.

* <ChangelogBadge type="added" /> **Simplified Chinese and Traditional Chinese**\
  Added Simplified Chinese (zh-CN) and Traditional Chinese (zh-TW) language support. Activated automatically based on the device language setting.

* <ChangelogBadge type="added" /> **iPad Screen Support**\
  The payment forms now adapt to iPad screen sizes with an optimized layout. No integration changes required.

* <ChangelogBadge type="added" /> **OCR Card Scanning**\
  Added OCR card scanning to automatically populate card number, expiry, and cardholder name fields from the device camera. The button appears automatically in the card form when the device supports it.

* <ChangelogBadge type="added" /> **ELO Card Icon**\
  Added the ELO brand icon to card form and payment list. Displayed automatically when an ELO card is detected.

* <ChangelogBadge type="added" /> **Coinflow Chargeback Protection**\
  Integrated Coinflow chargeback protection. Activated automatically for eligible transactions — no integration changes required.

## v2.4.2

*May 28, 2025*

* <ChangelogBadge type="added" /> **Call Settings in Enrollment**\
  The SDK now calls the settings service during enrollment initialization. No integration changes required.

* <ChangelogBadge type="added" /> **Credit-Only Enrollment Mode**\
  Added support for restricting enrollment to credit cards only. Configure via your Dashboard payment method settings.

## v2.4.0

*May 20, 2025*

* <ChangelogBadge type="removed" /> **Deprecated startCheckout Method**\
  Removed the deprecated `startCheckout(with: self)` method. Use the async `startCheckout` API instead. See the migration guide for details.

* <ChangelogBadge type="changed" /> **getPaymentMethodView Async Replacement**\
  Replaced `getPaymentMethodView` with an async version that returns the view via a completion handler. Update call sites to use the new async signature.

* <ChangelogBadge type="changed" /> **startPaymentRender Replacement**\
  Replaced `startPaymentRender` with a new render flow method. Update call sites to use the new method name.

* <ChangelogBadge type="changed" /> **startPaymentLite Replacement**\
  Replaced `startPaymentLite` with an updated version. Update call sites to use the new method name.

* <ChangelogBadge type="fixed" /> **Missing Apple Pay Values**\
  Added missing values in the `/payment/complete` service call for Apple Pay. This resolves payment failures that occurred for some Apple Pay transactions.

* <ChangelogBadge type="added" /> **Nuvei 3DS Support**\
  Integrated Nuvei 3DS challenge handling. Activated automatically for eligible Nuvei transactions — no integration changes required.

* <ChangelogBadge type="changed" /> **Styling Object Update**\
  Updated the `YunoConfig.styles` object structure. Review the styling documentation if you customize SDK appearance.

* <ChangelogBadge type="added" /> **Banner View Payment Action**\
  Added banner view support within the payment action view for flexible actions. No integration changes required.

## v2.3.0

*May 18, 2025*

* <ChangelogBadge type="changed" /> **Text Component Identifier Separation**\
  Separated view block identifiers into specific text components for improved customization. Review custom text configurations if your integration overrides identifier labels.

* <ChangelogBadge type="changed" /> **NuPay Banner Text Weight**\
  NuPay banner messages are now displayed in bold for improved readability. No integration changes required.

* <ChangelogBadge type="changed" /> **CVV and Expiry Field Proportions**\
  Adjusted the width proportions of the CVV and expiration date fields in the card form for a more balanced layout. No integration changes required.

* <ChangelogBadge type="changed" /> **External Browser Redirect**\
  Redirects now open in the external browser when the backend flag is set, instead of always using an in-app web view. No integration changes required.

## v2.2.2

*May 16, 2025*

* <ChangelogBadge type="added" /> **Luhn Validation**\
  Added Luhn algorithm validation to the card number field. Cards with invalid Luhn checksums are now rejected before submission, reducing server-side errors.

## v2.2.1

*May 17, 2025*

* <ChangelogBadge type="fixed" /> **Bug Fixes and Stability**\
  Various bug fixes and stability improvements. No API changes required.

## v2.2.0

*May 16, 2025*

* <ChangelogBadge type="added" /> **PayPal Enrollment**\
  Added PayPal enrollment support. Users can now save their PayPal account during the enrollment flow.

## v2.1.0

*May 15, 2025*

* <ChangelogBadge type="changed" /> **Color Codable Initializers Hidden**\
  Color `Codable` initializers are no longer part of the public API. If you were using these initializers directly, switch to the documented color configuration methods.

* <ChangelogBadge type="added" /> **Sodexo Expiration Date Validation**\
  Added expiration date validation specific to Sodexo brand cards. No integration changes required.

* <ChangelogBadge type="added" /> **Redirect Payment Action Support**\
  Added support for the redirect payment action type, enabling redirect-based APMs to operate through the flexible actions flow.

## v2.0.0

*May 15, 2025*

* <ChangelogBadge type="added" /> **NuPay Installments**\
  Added support for NuPay installments payment flow.

* <ChangelogBadge type="changed" /> **Flexible Actions Migration**\
  Migrated legacy Alternative Payment Methods (APMs) to the flexible actions architecture. Merchants using APMs should verify their payment flows after upgrading.

* <ChangelogBadge type="added" /> **Mercado Pago 3DS**\
  Integrated Mercado Pago 3DS for enhanced fraud protection. Activated automatically for eligible transactions — no integration changes required.

* <ChangelogBadge type="added" /> **Socket Connection Support**\
  Added WebSocket connection support based on a backend feature flag. No integration changes required.

* <ChangelogBadge type="added" /> **Airwallex Anti-fraud Integration**\
  Integrated Airwallex anti-fraud detection. Activated automatically for eligible transactions — no integration changes required.

* <ChangelogBadge type="added" /> **3DS Unlimit Support**\
  Added 3DS challenge support for Unlimit payment method. Activated automatically — no integration changes required.

## v1.25.0

*April 1, 2025*

* <ChangelogBadge type="added" /> **Astropay Enrollment Support**\
  Added support for Astropay card enrollment. Users can now save their Astropay account during the enrollment flow.

* <ChangelogBadge type="added" /> **Redirect-Type Enrollment**\
  Added support for redirect-type enrollment flows. The SDK now handles the redirect and returns the enrollment result to the host app.

## v1.24.2

*March 20, 2025*

* <ChangelogBadge type="changed" /> **Loader Recursive Presentation**\
  Enhanced loader display with recursive view controller presentation for more reliable loading indicators in complex navigation stacks.

## v1.24.1

*March 15, 2025*

* <ChangelogBadge type="added" /> **Full Payment View Size Notification**\
  Added a notification for the full payment view size. Use this to adjust your container layout when the SDK view changes height.

## v1.24.0

*March 5, 2025*

* <ChangelogBadge type="changed" /> **Mercado Pago Checkout Pro Browser**\
  Mercado Pago Checkout Pro now opens in an in-app browser instead of a web view. No integration changes required.

* <ChangelogBadge type="added" /> **Preselected Payment Methods**\
  Added support for preselecting a payment method programmatically. Pass the payment method token when starting checkout to skip the payment list.

* <ChangelogBadge type="changed" /> **Full Payment List Migrated to SwiftUI**\
  The full payment list UI has been migrated to SwiftUI for improved performance and customization. No API changes required.

* <ChangelogBadge type="added" /> **Flexible Actions Styling and QR Button**\
  Added styling support and a QR button to flexible actions. Configure via `YunoConfig.styles`.

* <ChangelogBadge type="added" /> **3DS Loading URL Support**\
  Added support for loading external URLs during 3DS challenges. No integration changes required.

## v1.23.2

*February 20, 2025*

* <ChangelogBadge type="added" /> **cancelByUser Notification for Enrollment**\
  The SDK now sends a `cancelByUser` notification when the user closes enrollment forms. Handle this event in your enrollment callback to update your UI accordingly.

## v1.23.1

*February 15, 2025*

* <ChangelogBadge type="added" /> **cancelByUser Notification for Apple Pay**\
  The SDK now sends a `cancelByUser` notification when the user closes the Apple Pay modal. Handle this event in your payment callback to update your UI accordingly.

## v1.23.0

*February 5, 2025*

* <ChangelogBadge type="added" /> **Generic Enrollment Forms and WebSocket**\
  Added support for generic enrollment forms and WebSocket connectivity. Tested with Bancolombia button integration.

## v1.22.1

*January 20, 2025*

* <ChangelogBadge type="fixed" /> **Embedded Web View Publisher**\
  Fixed an issue where embedded web views did not return `anyPublisher` directly. No integration changes required.

## v1.22.0

*January 5, 2025*

* <ChangelogBadge type="changed" /> **Nationality Removed from Required Fields**\
  Nationality has been removed from the required fields list. Forms no longer request this field during enrollment.

* <ChangelogBadge type="added" /> **OTP View in Flexible Actions**\
  Added an OTP (one-time password) input view within the flexible actions flow. Activated automatically for payment methods requiring OTP verification.

* <ChangelogBadge type="added" /> **x-sdk-type Request Header**\
  Added `x-sdk-type` to all outbound request headers for improved platform telemetry. No integration changes required.

* <ChangelogBadge type="added" /> **Enrolled Card Support in Dynamic SDK**\
  Added enrolled card handling to the dynamic SDK. Enrolled cards can now be used in dynamic payment flows.

* <ChangelogBadge type="added" /> **Authorized Substatus Notification**\
  Added notification for the authorized payment substatus. Handle this event to take action when a payment is authorized but not yet captured.

## v1.21.2

*December 20, 2024*

* <ChangelogBadge type="fixed" /> **Enrollment Cancellables Memory Leak**\
  Added `anyCancellables` to `YunoEnrollmentHeadlessImpl` to prevent memory leaks in long-running enrollment sessions.

## v1.21.1

*December 15, 2024*

* <ChangelogBadge type="removed" /> **Koin Dependency Removed**\
  Removed the Koin dependency from the SDK package. This reduces binary size and eliminates potential conflicts with apps that include Koin independently.

## v1.21.0

*December 5, 2024*

* <ChangelogBadge type="added" /> **Xendit Indoramart Payment Method**\
  Added support for Xendit - Indoramart payment method. Activated automatically when configured for your account.

* <ChangelogBadge type="added" /> **MetricKit Performance Monitoring**\
  Integrated MetricKit and `URLSessionTaskMetrics` for performance monitoring and diagnostics. Metrics are collected automatically — no integration changes required.

* <ChangelogBadge type="added" /> **Combined Payment and Enrollment Flow**\
  Added support for a combined payment and enrollment flow. Users can enroll a payment method and complete a payment in a single session.

* <ChangelogBadge type="added" /> **Dynamic Actions Image Support**\
  Added IMAGE action type support to the dynamic actions framework. No integration changes required.

## v1.20.0

*November 20, 2024*

* <ChangelogBadge type="added" /> **Koin SDK Integration**\
  Integrated the Koin SDK package for Koin PIX Parcelado support. Add the Koin dependency to your project if you plan to use Koin payment methods.

* <ChangelogBadge type="added" /> **Koin PIX Parcelado**\
  Added Koin PIX Parcelado installment payment support including socket-based status updates, OTP handling, and in-review status display.

* <ChangelogBadge type="added" /> **Click to Pay Token Storage**\
  Added saving and sending of Click to Pay (C2P) tokens in user defaults. C2P is activated via a feature flag — no integration changes required.

* <ChangelogBadge type="added" /> **Delayed Provider Response Screen**\
  Added a delayed provider response screen for payment methods that take additional time to confirm. No integration changes required.

## v1.19.3

*November 5, 2024*

* <ChangelogBadge type="added" /> **NuPay Redirect Payment**\
  Added NuPay redirect payment flow support. The SDK now handles the redirect and returns the payment result to the host app.

## v1.19.2

*October 28, 2024*

* <ChangelogBadge type="added" /> **Socket on Authorized Substatus**\
  The SDK now opens a socket connection when the payment substatus is `authorized`, enabling real-time status updates for authorized-but-pending payments.

## v1.19.1

*October 20, 2024*

* <ChangelogBadge type="added" /> **Document Required Field in Enrollment**\
  Added document number as a required field in enrollment forms when specified by the payment method configuration. No integration changes required.

## v1.19.0

*October 5, 2024*

* <ChangelogBadge type="added" /> **Inswitch Cash Payment**\
  Added support for Inswitch cash payment method. Activated automatically when configured for your account.

* <ChangelogBadge type="added" /> **Inswitch Bank Transfer**\
  Added support for Inswitch bank transfer payment method. Activated automatically when configured for your account.

* <ChangelogBadge type="added" /> **Xendit QRIS Payment Method**\
  Added support for Xendit QRIS payment method. Activated automatically when configured for your account.

## v1.18.0

*September 10, 2024*

* <ChangelogBadge type="added" /> **SDK Seamless Integration**\
  Added SDK seamless integration mode for a frictionless checkout experience. Contact your Yuno technical account manager to enable this feature.

* <ChangelogBadge type="added" /> **RUT Validation and Masks**\
  Added Chilean RUT validation and input mask to document fields. Activated automatically for CLP transactions.

* <ChangelogBadge type="changed" /> **Dynamic SDK Cleanup**\
  Removed `OptionalStateValue` and `YunoDynamicConnection` class from the dynamic SDK. Internal refactoring — no API changes required.

## v1.17.0

*August 15, 2024*

* <ChangelogBadge type="added" /> **Copy Voucher in Enrollment Flow**\
  Added a copy button for voucher codes in the enrollment flow. Users can now copy the voucher code directly from the enrollment screen.

* <ChangelogBadge type="added" /> **Dynamic SDK Conditional Dependencies**\
  Added dependencies for dynamic SDK condition evaluation. No integration changes required.

* <ChangelogBadge type="changed" /> **Dynamic SDK Text Field Restrictions**\
  Restricted allowed characters in dynamic SDK text fields for CARD and APM types to improve input validation. No integration changes required.

## v1.16.0

*July 20, 2024*

* <ChangelogBadge type="added" /> **FAC 3DS Action**\
  Added FAC 3DS action support. Activated automatically for eligible FAC transactions — no integration changes required.

* <ChangelogBadge type="added" /> **Enrolled Card Form in Dynamic SDK**\
  Added enrolled card form support to the dynamic SDK. Enrolled cards can now be managed through dynamic SDK flows.

* <ChangelogBadge type="added" /> **Step-by-Step Card Form in Dynamic SDK**\
  Implemented step-by-step card form in the dynamic SDK. The multi-step card entry flow is now available in dynamic integrations.

* <ChangelogBadge type="changed" /> **Backend-Driven Icons and View Names**\
  Icons and view names in the dynamic SDK are now fetched from the backend. No integration changes required.

## v1.15.0

*June 20, 2024*

* <ChangelogBadge type="added" /> **Step-by-Step Dynamic SDK**\
  Implemented step-by-step card form functionality in the dynamic SDK. The multi-step flow guides users through card entry one field at a time.

* <ChangelogBadge type="added" /> **RUT Validation**\
  Added Chilean RUT document validation. Validation is applied automatically to RUT fields in payment and enrollment forms.

* <ChangelogBadge type="added" /> **Dynamic SDK Analytics**\
  Added analytics event tracking for dynamic SDK flows. Events are sent automatically — no integration changes required.

* <ChangelogBadge type="added" /> **Accessibility Identifiers for Automation**\
  Added accessibility identifiers to the sample app for UI automation testing. No production integration changes required.

## v1.9.0

*April 10, 2024*

* <ChangelogBadge type="added" /> **Loader and Service Timeout**\
  Added loader display during service calls and configurable service timeout. No integration changes required.

* <ChangelogBadge type="changed" /> **Analytics Event Flow**\
  Improved the analytics event flow for more accurate and complete event reporting. No integration changes required.

## v1.6.2

*February 15, 2024*

* <ChangelogBadge type="added" /> **Background Payment Status Query**\
  Added automatic payment status query when the app returns from background. This ensures the SDK has the latest payment state after the user completes a redirect flow.

## v1.1.19

*January 10, 2024*

* <ChangelogBadge type="fixed" /> **Mercado Pago Checkout Pro Caching**\
  Resolved a caching issue in Mercado Pago Checkout Pro that caused stale payment sessions to be reused. The SDK now always fetches a fresh session.

* <ChangelogBadge type="changed" /> **Daviplata Document Type Filtering**\
  Implemented document type filtering in the Daviplata enrollment form. Only supported document types are shown, reducing user errors.

## v1.1.18

*December 20, 2023*

* <ChangelogBadge type="added" /> **Loader Persistence Support**\
  Added support for persisting the loader between navigation steps. No integration changes required.

## v1.1.17

*December 5, 2023*

* <ChangelogBadge type="fixed" /> **Terms and Conditions Opening Bug**\
  Fixed a bug that prevented the terms and conditions link from opening correctly. The link now opens in the in-app browser as expected.

* <ChangelogBadge type="added" /> **CheckboxColor in Yuno Appearance**\
  Added a `checkboxColor` field to the `Yuno.Appearance` object. Use this to customize the checkbox color in forms.

* <ChangelogBadge type="changed" /> **Payment Method Form Improvements**\
  Improved the payment method form layout and usability. No API changes required.

## v1.1.16

*November 20, 2023*

* <ChangelogBadge type="changed" /> **Card Form Improvements**\
  Multiple improvements to the card form UI and validation. No API changes required.

## v1.1.15

*November 5, 2023*

* <ChangelogBadge type="added" /> **Required Fields in Card Form**\
  Added required field enforcement to the card form. Fields marked as required by the payment method configuration now block form submission when empty.

## v1.1.14

*October 20, 2023*

* <ChangelogBadge type="added" /> **Openpay Payment Method**\
  Added support for Openpay payment method. Activated automatically when configured for your account.

* <ChangelogBadge type="added" /> **One-Step Card Form Customization**\
  Added customization options for the one-step card form. Configure appearance via the `Yuno.Appearance` object.

## v1.1.13

*October 5, 2023*

* <ChangelogBadge type="added" /> **New Payment Method Types**\
  Added support for additional payment method types. New methods are activated automatically when configured for your account.

## v1.1.12

*September 20, 2023*

* <ChangelogBadge type="added" /> **PagSeguro Checkout Support**\
  Added support for PagSeguro checkout payment method. Activated automatically when configured for your account.

* <ChangelogBadge type="added" /> **UNLIMINT Checkout Support**\
  Added support for UNLIMINT checkout payment method. Activated automatically when configured for your account.

## v1.1.11

*September 5, 2023*

* <ChangelogBadge type="changed" /> **Multistep Card Form Improvements**\
  Multiple improvements to the multistep card form flow and validation. No API changes required.

## v1.1.9

*August 10, 2023*

* <ChangelogBadge type="fixed" /> **Yuno Appearance Initialization Bug**\
  Fixed a bug where `Yuno.Appearance` object initialization could fail under certain configurations. The object now initializes correctly in all cases.

* <ChangelogBadge type="added" /> **Dlocal Redirect Payment Method**\
  Added support for Dlocal redirect payment method. Activated automatically when configured for your account.

* <ChangelogBadge type="added" /> **Khipu Payment Method**\
  Added support for Khipu payment method. Activated automatically when configured for your account.

* <ChangelogBadge type="added" /> **Dlocal PSE Payment Method**\
  Added support for Dlocal PSE payment method. Activated automatically when configured for your account.

* <ChangelogBadge type="changed" /> **Multiple Step Card Form Improvements**\
  Multiple improvements to the multiple-step card form validation and navigation. No API changes required.

## v1.1.8

*July 20, 2023*

* <ChangelogBadge type="changed" /> **Multiple Step Card Form Improvements**\
  Multiple improvements to the multiple-step card entry flow. No API changes required.

## v1.1.7

*July 5, 2023*

* <ChangelogBadge type="added" /> **Tarjeta Clave Payment Method**\
  Added support for Tarjeta Clave payment method. Activated automatically when configured for your account.

* <ChangelogBadge type="added" /> **Kushki Payment Method**\
  Added support for Kushki payment method. Activated automatically when configured for your account.

* <ChangelogBadge type="changed" /> **Daviplata UX Improvements**\
  Improved the Daviplata payment form user experience. No API changes required.

* <ChangelogBadge type="changed" /> **Diners Card Form Improvements**\
  Improved the Diners card entry experience in the card form. No API changes required.

## v1.1.3

*May 15, 2023*

* <ChangelogBadge type="added" /> **Multi-Step Card Form Option**\
  Added multi-step card form as an alternative to the single-step form. Configure via `cardFormType` in SDK initialization.

## v1.1.0

*April 10, 2023*

* <ChangelogBadge type="added" /> **Swift Package Manager Support**\
  Added Swift Package Manager distribution. You can now integrate the SDK using either Swift Package Manager or CocoaPods.

## v1.0.17

*March 20, 2023*

* <ChangelogBadge type="changed" /> **Card Form General Improvements**\
  General improvements to the card form including layout, validation, and accessibility. No API changes required.

## v1.0.16

*March 5, 2023*

* <ChangelogBadge type="changed" /> **Card Form Wording Improvements**\
  Updated card form field labels and error messages for clarity. No API changes required.

## v1.0.9

*February 1, 2023*

* <ChangelogBadge type="added" /> **PIX and NuPay Async Payments**\
  Added async payment support for PIX and NuPay. The SDK now polls for status and notifies the host app when the payment completes.

* <ChangelogBadge type="added" /> **Card Enrollment Support**\
  Added card enrollment to allow users to save cards for future payments.

* <ChangelogBadge type="added" /> **Wibond Payment Method**\
  Added support for Wibond payment method. Activated automatically when configured for your account.

* <ChangelogBadge type="added" /> **MercadoPago Wallet Support**\
  Added support for MercadoPago Wallet payment method. Activated automatically when configured for your account.
