
Overview
WeChat QR Code payment allows customers to use WeChat’s Scan feature to scan a QR code generated by the merchant system and complete payment.Typical flow
- Merchant generates a payment QR code
- Customer scans using WeChat
- WeChat performs security verification
- Payment completes in the wallet
Common scenarios
- Desktop checkout pages
- POS display screens
- Self-service kiosks
Real-name Verification (Optional)
Real-name verification is currently available only for Mainland China citizens.
- payer’s legal name
- Chinese national ID number
- Wallet information must match provided identity data
- Payment still succeeds if the customer has not linked a bank card
- Enforcement depends on merchant configuration
Create Payment Request
HTTP Request
- Method: POST
- Endpoint:
/trade/v1/payment - PayType:
800201(WeChat QR Payment)
Sample Code
All examples follow the same logic. Choose the language matching your backend.
API Response
On success, the API returns a QR code URL.Render the
qrcode value into an image for customers to scan.Request Parameters
| Parameter | Required | Description |
|---|---|---|
txamt | Yes | Amount in cents |
txcurrcd | Yes | Currency code |
pay_type | Yes | Must be 800201 |
out_trade_no | Yes | Unique order ID |
txdtm | Yes | Timestamp |
expired_time | No | QR expiry (5–120 min) |
goods_name | No | Product name |
mchid | No | Required for agent setups |
extend_info | No | Real-name verification data |
Response Fields
| Field | Description |
|---|---|
qrcode | QR code URL |
respcd | 0000 = success |
resperr | status message |
syssn | QFPay transaction ID |
out_trade_no | merchant order ID |
Summary
- Designed for desktop & POS QR display
- Convert returned
qrcodeto a scannable image - Real-name verification is optional
- Always implement order enquiry fallback
