Skip to content

    WeChat Pay

    Overview - WeChat Pay

    As the most popular instant messaging app in China with over 1.08 billion monthly active user accouts as of the third quarter of 2018, WeChat builds a unique social community for its users across the globe. On top of that WeChat built their own payment sollution called WeChat Pay.

    WeChat Pay is a wallet solution where customers can place their cards or bank accounts in their WeChat account and initiate payments with their mobile app. With the app the user can either scan a QR-code referencing the order or the app will be automatically opened in case the user shops with the mobile device.

    Similar to Alipay there is a very high consumer trust due to the strong brand awareness and WeChat Pay is also a must-have payment method for any businesses that want to reach out to Chinese shoppers.

    Customer Experience - WeChat Pay

    WeChatPay customer experience overview

    Payengine Details - WeChat Pay

    General

    NameDetails
    Productwechat-pay
    ChannelsECOM
    CurrenciesEUR, USD
    CountriesCrossborder outside of China.
    Supported merchant locations:
    AT, BE, DE, DK, FI, FR, ES, GB, GR, HU, IE, IT, IS, LI, LU, MT, NL, NO, PT, SE

    Technical FlowAsynchronous
    RecurringNo
    ChargebacksNo

    Supported Features & Services

    NameDetails
    DebitYes
    PreauthorizationNo
    CancelationNo
    CaptureNo
    RefundsYes
    NotificationsYes (webhook and email)
    Settlement ReportingYes - Unified Settlement Reporting

    Integration Types

    NameDetails
    APIYes
    WidgetYes
    BridgeNo
    Shop PluginNo

    Integration via API - WeChat Pay

    Technical Flow

    WeChatPay IntegrationviaAPI technicalflow

    Webhook notifications

    A merchant should register for the Payengine webhook notifications in order to receive the final status update. A GET on the order or DEBIT transaction would also work, but it is not ensured that the final status will be available immediately after the redirect and a merchant might have to query the GET multiple times. Therefore it is strongly recommended that the asynchronous notifications from the Payengine are used insetad.

    The notifications could be subscribed:

    The following events have to be subscribed for in order to receive the WeChat notifications, depending on the preferred source of notification.

    SourceEvent
    APInotificationState = UPDATED
    Merchant Centerevent type = order update success
    event type = order update failure

    Specifications - WeChat Pay

    WeChat input parameters

    The following input parameters are required for initiating an WeChat payment via direct API integration.

    ParameterMandatory/Optional (M/O)DescriptionExample
    payment.accountHolderOThe name of the bank account holder.John Doe
    payment.countryCodeOThe country code.DE
    meta.preferredLanguageOThe preferred language.en
    localeOA language tag consisting of a two-letter language code combined with a two-letter country code according to [RFC 1766](https://en.wikipedia.org/wiki/IETF_language_tag). Default is en-US.
    Accepted values:
    en-US (English, default)
    zh-CN ( Simplified Chinese)
    zh-TW (Traditional Chinese)
    payment.successUrlMRedirect URL for successful paymenthttp://my.shop.com/success
    payment.failureUrlMRedirect URL for unsuccessful paymenthttp://my.shop.com/fail
    payment.cancelUrlMRedirect URL when payment is canceledhttp://my.shop.com/cancel

    Samples

    Debit transaction

    POST /orders/debit

    WeChat Pay Debit Request

    {
      "product" : "wechat-pay",
      "terms": 1468590412476,
      "privacy": 1468590412476,

    WeChat Pay Debit Response

    {
        "createdAt": 1557302988909,
        "modifiedAt": 1557302988929,
        "merchantId": "merchant_a0kkl9letk",

    Refund transaction

    POST /orders//transactions//refund

    WeChat Pay Refund Request

    {
      "initialAmount": 2380,
      "currency": "EUR",
      "basket": [

    WeChat Pay Refund Response

    {
        "createdAt": 1555313878801,
        "modifiedAt": 1555313878807,
        "type": "REFUND",

    Settlements

    All settlement information will be provided in the Unified Settlement Report. The format and mappings can be found in the corresponding documentation (see Unified Settlement Report).

    Was this helpful?

    What was your feeling about it?