Airwallex logo

Desktop Website Browser - Toss Pay

Accept Toss Pay payments on your website by redirecting the shopper 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

JSON

Step 2. Redirect the shopper to the Toss Pay page

When a shopper selects to pay with Toss Pay on their desktop browser, call the Confirm a Payment Intent API API to get a payment URL pointing to the Toss Pay page.

POST /api/v1/pa/payment_intents/{id}/confirm

JSON

You will get a response similar to the following.

JSON

You should redirect the shopper to the Toss Pay page with the next_action.url returned in the confirm Payment Intent response.

Once generated, the URL will expire in 30 minutes. Confirming the Payment Intent again with Toss Pay or other payment methods will lead to the invalidation of the URL.

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, 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.