Mobile SDK overview
rezolvepay_flutter is the native mobile counterpart to the browser widget: the same screens, the same copy, the same flow — rendered natively, with no WebView and no embedded web checkout. Drop RezolvePayCardForm into your widget tree, give it the order, and it runs the whole payment.
The SDK obtains the checkout's single-use widget token itself. A merchant that already mints tokens on its own backend for the web widget can keep doing so and pass one in instead — see Two ways to get a token.
Step 1: Configure once, at startup
Call RezolvePay.configure(baseUrl: ...) in main(), before any RezolvePay widget is mounted, with the RezolvePay endpoint you were given. No provider key goes here — the publishable key and connected account arrive per-merchant at runtime from the checkout lookup.
Add merchantId and merchantApiKey here if the SDK is to obtain tokens itself.
Step 2: Mount RezolvePayCardForm
RezolvePayCardFormPass the order — or a widgetToken, if your backend minted one. It looks the order up, renders saved cards or the card form, takes the payment, handles 3DS, and polls RezolvePay for the real outcome before calling onSuccess.
One mount runs one payment. To take another, mount again with a new order — a token is spent on Pay, and the next checkout needs its own.
Security: card data never reaches your code. Card number, expiry and CVC are collected by the provider's own native view (
STPPaymentCardTextFieldon iOS,CardInputWidgeton Android) and sent device-to-provider. Your app sees onlybrandandlast4. RezolvePay's API never sees a card number either.
Updated about 4 hours ago

