iOS SDK
When capturing a Stored Credential for the first time
Create a customer object and pass it to your server if it is a new customer. Recurring payment requires a customer ID to be initiated.
From your server, Create a Customer API with customer data received from client app and save the
Customer ID
returned.(Optional) If the shopper wishes to pay for the first order
Your client app will need a
PaymentIntent
to form a payment session for Airwallex SDK to present payment flow.From your server, access Airwallex API to Create a Payment Intent API and pass the
PaymentIntent
returned to client app.Create an
AWXRecurringSession
(if No payment is to be made here), or anAWXRecurringWithIntentSession
(ifPayment Intent
was created for this order)Parameters required when creating a
Session
are listed as follows:AWXRecurringSession
JavaAWXRecurringWithIntentSession
JavaPresent payment/authentication flow by creating an
AWXUIContext
with the Session created in the last stepJavaHandle authentication result
In
AWXPaymentResultDelegate
, handle authentication result to present it to the shopper.JavaIf
PaymentIntent
was created for this order, retrieve the Payment Intent API from your server to query payment result and pass it to client app.
When initiating a subsequent one-click transaction (CIT)
Create a
Payment Intent
Your client app will need a
PaymentIntent
to form a payment session for Airwallex SDK to present payment flow.From your server, access Airwallex API to Create a Payment Intent API and pass the
PaymentIntent
returned to client app.Create an
AWXOneOffSession
with thePaymentIntent
created in the previous step, areturnURL
to your app, and shipping address and shopper country code of this order.JavaPresent payment flow by with the
Session
created in the previous step, Airwallex SDK will handle the rest of the payment process and let you know when the payment flow is completed or cancelled.JavaQuery and present payment result
After the
PaymentIntent
is confirmed by SDK, this delegate will be called by the SDK automatically and you can check the status to see whether the payment process has been completed or not.JavaNote that a completed flow does NOT imply a successful transaction, you need to query the payment result afterwards through your server to know whether the order is paied or not. Inside
AWXPaymentResultDelegate
, ask your server to retrieve thePaymentIntent
.On your server, retrieve the Payment Intent API, get the payment result within it and pass it to client app.
When initiating a subsequent subscription and autodebit transaction (MIT)
From your server, Create a Payment Intent API to request for a subsequent payment.
Confirm the Payment Intent API with reference to Payment Consent ID of the stored Payment Consent