marcopolo Online payment
Sign up

WeChat Pay

Intro

WeChat Pay is a Chinese payment feature integrated into the WeChat app. More than 900 million customers use it at least once a month for easy and quick smartphone payments. Your customers pay in CNY, but you will receive the settlement in your local currency.

The integration is very easy and enables your customers to pay swiftly: You send a standard request to our platform to redirect your customers to the WeChat portal, opening their mobile app to confirm the payment.

Your customers need a wallet in the WeChat application linked to a Chinese bank account.

Overview

Payment group:
Payment product id:
5404
Key benefits
  • Very popular with users in Asia
  • Guaranteed payment
  • Allows refunds

Countries & currencies

Supported countries

Supported currencies

  • Australian dollar (AUD)
  • Czech koruna (CZK)
  • Danish krone (DKK)
  • Euro (EUR)
  • Norwegian krone (NOK)
  • Pound sterling (GBP)
  • Swedish krona/kronor (SEK)
  • Swiss franc (CHF)
  • United States dollar (USD)

Integration

We offer this payment methods for the following integration modes. Learn in our dedicated guides about the individual differences:

Find a high level overview in the "Process flows" chapter.

Depending on the integration mode, differences apply:

Hosted Checkout Page

Add the following properties to a standard CreateHostedCheckout request:

{
  "order": {
    "amountOfMoney": {
      "currencyCode": "EUR",
      "amount": 1200
    }
  },
  "hostedCheckoutSpecificInput": {
    "locale": "en_GB",
    "returnUrl": " https://yourReturnUrl.com"
   },
  "redirectPaymentMethodSpecificInput": {
    "PaymentProductId": 5404
  }
} 
Properties Remarks

order.amountOfMoney
     amount
     currencyCode

amount: The gross amount you want to charge for this order.
currencyCode: The ISO 4217 currency code for this amount.

hostedCheckoutSpecificInput
     returnURL
     locale

returnURL: The URL we redirect your customers to after the payment has been finalized.

locale: The language version of our Hosted Checkout Page.

redirectPaymentMethodSpecificInput.paymentProductId

The numeric identifier of the payment method on our platform. Find this id in the "Overview" tab. It instructs our platform to send your customers directly to the WeChat Pay portal. If left out, our platform sends your customers to the Hosted Checkout Page instead, allowing them to choose this or any other payment method in your account.

Find detailed information about this object and its properties in our CreateHostedCheckoutAPI.

Server-to-server

Add the following properties to a standard CreatePayment request:

{
   "Order":{
      "AmountOfMoney":{
         "Amount":1200,
         "CurrencyCode":"EUR"
      },
      "Customer":{
         "Device":{
            "IpAddress":"217.149.44.205",
            "UserAgent":"Mozilla/5.0 (Linux; Android 4.4.4; MX4 Pro Build/KTU84P) AppleWebKit/537.36 (KHTML, like Gecko) Version/4.0 Chrome/33.0.0.0 Mobile Safari/537.36; 360 Aphone Browser (6.9.7)"
         }
      },
      "References":{
         "MerchantReference":"mr_638143243872475406"
      }
   },
   "RedirectPaymentMethodSpecificInput":{
      "PaymentProductId":5404,
      "redirectionData":{
         "returnURL":"https://yourReturnUrl.com"
      }
   }
}
Properties Remarks

order.amountOfMoney
     amount
     currencyCode

amount: The gross amount you want to charge for this order.
currencyCode: The ISO 4217 currency code for this amount.

customer.device
     ipAdress
     userAgent

ipAdress: Your customers' IP address.

userAgent: Your customers' device used for the transaction.

Mandatory for the "With a mobile device" flow to ensure our platform returns an merchantAction.showFormData.paymentProduct5404.appSwitchLink to open the WeChat Pay app on your customers’ device.

If left out, our platform returns a merchantAction.showFormData. paymentProduct5404.qrCodeUrl instead for the "With a desktop and a mobile device" flow.

redirectPaymentMethodSpecificInput

     paymentProductId
     redirectionData.returnURL

paymentProductId: The numeric identifier of the payment method on our platform. Find this id in the "Overview" tab.

returnURL: The URL we redirect your customers to after the payment has been finalised.

order.customer.contactDetails.emailAddress

Your customer’s e-mail address.

Find detailed information about this object and its properties in our CreatePaymentAPI.

Process flows

Depending on your customers' device(s) used, differences apply:

With a desktop and a mobile device

This flow involves both your customers’ mobile/tablet and desktop device interacting with each other.

  1. Your customers finalise an order in your shop and select WeChat Pay.
  2. You send this CreateHostedCheckout/CreatePayment request to our platform. Depending on your integration mode, differences apply. Check out the "Integration" chapter to find examples for each mode.
  3. You redirect your customers via the redirectUrl to the WeChat Pay portal (For CreateHostedCheckout requests) or display a QR code on your payment page using the merchantAction.showFormData.paymentProduct5404.qrCodeUrl from our response (For CreatePayment requests). Your customers scan the QR code with their mobile/tablet device.
  4. The mobile/tablet device opens the WeChat Pay app. Your customers confirm the payment in the app.
  5. We receive the transaction result.
  6. The mobile/tablet device displays the transaction result in the WeChat Pay app. We redirect your customers to your returnURL  on their desktop device.
  7. You request the transaction result from our platform via GetPaymentDetails/GetHostedCheckout or receive the result via webhooks.
  8. If the transaction was successful, you can deliver the goods / service.

With a mobile device

This flow involves only your customers' mobile device.

  1. Your customers finalise an order in your shop and select WeChat Pay.
  2. You send this CreateHostedCheckout/CreatePayment request to our platform. Depending on your integration mode, differences apply. Check out the "Integration" chapter to find examples for each mode.
  3. You redirect your customers via the redirectUrl (For CreateHostedCheckout requests) or the merchantAction.showFormData.paymentProduct5404.appSwitchLink (For CreatePayment requests). The mobile/tablet device opens the WeChat Pay app. Your customers choose their wallet and confirm the payment in the app.
  4. We receive the transaction result.
  5. The mobile/tablet device displays the transaction result in the WeChat Pay app.
  6. You request the transaction result from our platform via GetPaymentDetails/GetHostedCheckout or receive the result via webhooks.
  7. If the transaction was successful, you can deliver the goods / service.

Testing

Refer to our Test cases for test data and detailed instructions.

Make sure to use the right endpoint and switch back to the live URL as soon as you have finished your tests.

Was this page helpful?

Do you have any comments?

Thank you for your response.