startCheckout(…), a single startPaymentSeamlessLite(paymentSelected, …) call handed everything off: the SDK rendered the form, tokenized, created the payment, ran 3DS, and reported back through a callbackPaymentState lambda.
In the unified API the same flow is the default behavior of Transaction.start(activity, paymentSelected). No controller overrides beyond onStatus. The structural change is the result-delivery model: was a lambda passed to the start call, now is a callback through onStatus on a TransactionController.
Before you start
- Replace the
com.yuno.sdk.*andcom.yuno.presentation.*imports with theircom.yuno.payments.sdk.api.*counterparts (the side-by-side lists them). Your public API key and the checkout sessions your backend creates do not change (Before you begin). - Decide who creates the payment. The checkout session’s
workflowmust 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
The SDK result screen is off by default now. Set
showStatusScreen = true to keep it.Controller
Entry points
Related
- Get Started. The unified-API walkthrough; the new “Seamless equivalent” is now the default path.
onStatus. Controller that delivers the final status.TransactionConfig. Complete field reference.- Migration / Lite. Almost identical migration; Seamless and Lite collapse into the same default path in the unified API.