Skip to main content
Headless mode let you collect the payment data in your own UI: YunoSdk.generateToken tokenized it, your backend created the payment, and YunoSdk.continueCardPayment ran the pending action, such as a 3DS challenge, and resolved with the final state. In the unified API you pass the data you collected as transactionData on the PaymentMethodSelected. The SDK skips its form, tokenizes, hands you the token in createPayment, runs 3DS and reports the result through onStatus.

Before you start

  • Upgrade @yuno-payments/yuno-sdk-react-native to 2.0.0 and run pod install. Your public API key and the checkout sessions your backend creates do not change (Before you begin).
  • On Android, minSdkVersion is now 23. If your android/build.gradle applies the Compose compiler plugin to the Yuno module (a 1.x workaround), remove that block: with 2.0.0 the build fails with “The Compose Compiler requires the Compose Runtime to be on the class path”.
  • Decide who creates the payment. The checkout session’s workflow must match that decision:

Side-by-side

What changes

Grouped in the order you edit the code. Renamed: same role, new name. Moved: same value, new owner. Removed: nothing to call. New: no legacy counterpart. The last column is the only thing you have to do beyond the rename.

Initialization and config

Controller

Entry points