Mobile Browser (H5) - WeChat Pay
To enable WeChat H5 payment, additional offline review process is required, please contact your account manager for detailed information.
Accept WeChat Pay on your mobile website by redirecting shoppers to the WeChat App.
Step 1. Initialize a Payment Intent
Create a Payment Intent with the Create a Payment Intent API API.
If you provide return_url
when creating the Payment Intent to redirect shoppers back to your website, please make sure the domain of your return_url
is the same as or a subdomain of the domain name you submitted in the H5 application. The WeChat Pay app will fail to be invoked if these domains are inconsistent. For example, if you submitted yourwebsite.com
as your domain name when applying for H5, https://shop.yourwebsite.com/orders?id=123456
is acceptable as shop.yourwebsite.com
is a subdomain of yourwebsite.com
.
Step 2. Redirect to WeChat App to complete payment
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 WeChat Pay page with the next_action.url
returned in the confirm Payment Intent response.
WeChat Pay will verify if the shopper is being redirected from an authorized website before invoking the app, so please make sure the domain of the mobile website that you plan to provide service to the shopper is the same as or a subdomain of the domain you submitted in the H5 application.
Redirect the shopper from mobile app Webview to WeChat Pay H5 page is not officially supported by WeChat Pay. Please use
mobile_app
when integrating WeChat Pay with your mobile app.
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.