Mobile Website Browser - Toss Pay
Accept Toss Pay payment from the shopper’s mobile browser by redirecting them to the Toss Pay page.
Step 1. Initialize a Payment Intent
Create a Payment Intent with the Create a Payment Intent API API.
POST /api/v1/pa/payment_intents/create
Step 2. Redirect to Toss Pay to complete payment
When a shopper selects to pay with Toss Pay on their mobile browser, call the Confirm a Payment Intent API API to get a redirect URL.
POST /api/v1/pa/payment_intents/{id}/confirm
You will get a response similar to the following.
You should redirect the shopper to the Toss Pay page with the next_action.url
returned in the confirm Payment Intent response.
Note, if you use the mobile browser flow in your App’s Webview and pull up the Toss Pay app. Multiple redirects may happen after visiting next_action.url. When handling redirection to a non-HTTP URL, please add schemes when you want to pull up the Toss Pay app on the shopper’s mobile phone. For exmpale:
Android
iOS
Step 3. Query the payment result status
To get the payment result, we suggest you poll the status of the Payment Intent via the Retrieve a Payment Intent API API. You may start polling the Payment Intent status after the shopper is redirected back to your website or mobile app, i.e. the return_url
passed when creating the Payment Intent.
GET /api/v1/pa/payment_intents/{id}
In addition, Airwallex will notify you of the payment result asynchronously via the webhooks. Please refer to the webhook documentation to set up your webhook accordingly. Although subscribing to webhook events is optional, it is recommended to subscribe to the payment_intent.succeeded
webhook which indicates that the shopper has paid the order.