**Last updated**: 13 March 2026 | [**Change log**](/access/products/apms/changelog/)

# WeChat Pay

WeChat Pay, officially referred to as Weixin Pay in China, is a mobile payment and digital wallet service.

Note
Make yourself familiar with our [API principles](/access/products/reference/api-principles) to ensure a resilient integration.

details
summary
Product overview
## Why use WeChat Pay?

WeChat Pay is a digital wallet allowing your customers to make online or mobile wallet payments. It is considered a vital payment method if you are operating in China.

### Feature summary

| Payment type | Recurring | Reversals | Partial reversals | Disputes | Auth and settlement (sale) |
|  --- | --- | --- | --- | --- | --- |
| Digital wallet | ❌ | ✅ | ✅ | ❌ | ✅ |


- Maximum transaction value: 50.000 CNY
- Maximum transaction per consumer wallet per day: 100.000 CNY


#### Acceptance currencies

| Currency | Currency codes |
|  --- | --- |
| Australian Dollar | AUD |
| Canadian Dollar | CAD |
| Chinese Yuan | CNY |
| Euro | EUR |
| Hong Kong Dollar | HKD |
| Japanese Yen | JPY |
| New Zeland Dollar | NZD |
| Pound Sterling | GBP |
| US Dollar | USD |
| Singapore Dollar | SGD |


## Get started

Use our [API reference](/access/products/apms/openapi) and set your headers.

## Request

`POST` `https://try.access.worldpay-bsh.securedataplatform.com/apmPayments`

### Example requests

### Parameters

## Response

### Example response

Successful

```
{
  "paymentId": "HZ75WBkfRwmD9YzLSZFnQ5v2I5ddQFtUqfQjfH6MtZWlDSUrxrcX5x_wn93uYUZBrpxTgfQTxtQsmy9dE_z-m-zZvrP-LeCRz0uWrqdvJK9lFEMgr042IFWuXU4qz5JB5ruD3eXP8P1s6nqEcRq5d-NwnkVtXPzEhC9FQ_77m3c",
  "lastEvent": "pending",
  "_links": {
    "self": {
      "href": "https://try.access.worldpay-bsh.securedataplatform.com/apmPayments/HZ75WBkfRwmD9YzLSZFnQ5v2I5ddQFtUqfQjfH6MtZWlDSUrxrcX5x_wn93uYUZBrpxTgfQTxtQsmy9dE_z-m-zZvrP-LeCRz0uWrqdvJK9lFEMgr042IFWuXU4qz5JB5ruD3eXP8P1s6nqEcRq5d-NwnkVtXPzEhC9FQ_77m3c"
    }
  },
  "_actions": {},
  "redirect": "iVBORw0KGgoAAAANSUhEUgAAAQAAAAEAAQAAAAB0CZXLAAABdklEQVR4Xu2VS27DMAxE6ZWP4ZvG1E19DK3EzpBKgrhAu+2gGjiCTD0vJvzI4hfZPXDXAkoLKC2gtIDSvwLcoCN6PnGdne+bGtDw68fYAw+AjVgGtYBuCDYYpEeadTtEAXh02My9OoDyO0WBYMmlwWwZ7CsoBTjDR+uvJzE1oNSycWzH+pYQgALz9NXS8qPGshqAluHRDo+BZIEfn40jAXi2fI2vwTnGqtvUgLFfeB1MGbN2svamtAAzWjvTZjJ6QDB+PTJlgyTWj2RJAKPu9NzgtGUR6gGZHTg95yi+6lQLcDRO5wRuT8svRggIvrLk4NFyCETmTgtonUGn2bm52ZQABg1OLJPFtakBjcwxR7Gl9s//QQEoOXKECTaHGFctwGlsZqoFC4+rGkBHGUS/WBp0kmpAt40Ag3AK11t9JQgE70ScHjOiCdAdzD7J7zb/OhBZcmR4m9As7xQxwA1CyXGIOYfw/VqUAH7QAkoLKC2gtIDSAkpfsu6k9bsX4o0AAAAASUVORK5CYII=",
  "paymentInstrument": {
    "method": "wechatpay",
    "type": "direct"
  },
  "commandId": "cmdEy5vwB0krLe9eMwAcE66c0"
}
```

Error response

```json
{
  "errorName": "bodyDoesNotMatchSchema",
  "message": "The json body provided does not match the expected schema",
  "validationErrors": [
    {
      "errorName": "fieldHasInvalidValue",
      "message": "Field is mandatory",
      "jsonPath": "$.instruction.value.amount"
    }
  ]
}
```

### Schema

#### Errors

Check out our API reference for [more responses or error codes](/access/products/apms/openapi/other/payment#other/payment/response&c=400).

## Simulation

To simulate payment outcomes and trigger webhooks in our Try environment you can send a request prompting our simulator.

All requests return the same encoded QR code, allowing you to test the synchronous response and the embedding of the QR code image within your checkout page.

You can use magic values in the `amount` field of your request body to generate specific outcomes. Adding an `amount` other than the below magic values for refused or erroneous outcomes, will give you a happy path.

| Magic value `amount` | Outcome | Description |
|  --- | --- | --- |
| Any numeric value | `authorized` | You receive a `pending` status in the immediate response and an `authorized` webhook once the payment status changes. |
| 43000 | `refused` | You receive a `pending` status in the immediate response and a `refused` webhook once the payment status changes. |
| 32000 | error | You get a 500 response. |


**Next steps**

[Manage your WeChat Pay payment](/access/products/apms/manage/)