Skip to content

Payment Gateway: Payment Pages ​

Updated: 10/15/26, 10:20:22 AM

Payment pages are where the payer pays in a browser: the unified cashier, QR terminal, and aggregate flows, plus the pay-result redirect and transfer confirmation, form the payment-facing side of the gateway. Scanning a code inside WeChat / Alipay opens the cashier mini-program — the two are one collection chain in two environments (see Overview for the division of work and link prefixes).

Unified Cashier ​

The landing page after pre-pay (/cashier/{order-no}), where the payer picks a payment method and pays:

  • Page content: a large amount, a remaining-validity countdown (orange), the order title and order number;
  • Payment method list: icon + name + a "Recommended" tag, single choice; when methods are locked (locked by the merchant), only the designated ones are selectable and the rest are greyed out;
  • Pay action: after choosing a method, tap "Pay Now" at the bottom — the selection never auto-triggers payment, preventing mis-taps;
  • Countdown expiry: the order expires and the pay button is disabled;
  • Methods that need the user's identity (the WeChat JSAPI family, for example): automatically redirect for authorization to obtain the openId, then automatically resume the payment flow — invisible to the payer (mechanism in Authentication & Relay);
  • After payment: QR-type methods display a QR code to scan; the others invoke the corresponding payment. The page polls the order status every 2 seconds (for about 3 minutes) and shows the result once a final state is reached;
  • Redirect after success: when the order has a return URL configured, the result page counts down 3 seconds and returns to the merchant page automatically; re-opening an already-paid order does not redirect again — only a "Return to Merchant" button is shown.

Opening the same link in a desktop browser gives the web cashier: payment methods are shown in a four-column grid, and everything else works the same.

QR Terminal Payment ​

The payment page opened in a browser after scanning a static QR terminal (/h/{qr-terminal-no}):

  • Page content: merchant avatar, QR terminal name, and the subtitle "Pay {merchant short name}";
  • Flexible-amount QR terminals: enter the amount on a numeric keypad (up to two decimals); the keypad's confirm key is "Confirm Payment";
  • Fixed-amount QR terminals: the amount is shown large — just tap "Confirm Payment";
  • Remark: tap the remark row to enter one in a dialog (up to 50 characters); it is passed to the merchant with the order;
  • Environment requirement: the QR terminal page goes through the corresponding channel when opened inside WeChat / Alipay / Douyin / UnionPay wallets; opened in a plain browser it prompts "please scan with your wallet" — the single-channel nature of a QR terminal means it only pays inside a wallet environment;
  • Mini-program-type QR terminals (mini_app program type) do not pay on the H5 side — scanning enters the mini-program directly.

Aggregate Pay ​

The confirmation page for aggregate scan orders (/aggregate/{order-no}): order title, amount, order number and countdown; tap "Pay Now" to finish; in supported scenarios payment is invoked automatically (the button becomes "Retry"). Available only inside wallet environments — a browser shows an unsupported notice.

Pay Result Page ​

The unified result page for channel redirects and completed payments (/pay-result/{trade-no}):

  • Five states: success / failed / closed / expired / load failed;
  • Polls every 2 seconds until a final state is reached (for about 3 minutes), refreshing automatically on change;
  • On success with a return URL configured, counts down 3 seconds and returns to the merchant automatically; without a return URL, shows a "Close Page" button.

Transfer Confirmation ​

The payee confirmation page for WeChat merchant transfers (/transfer-confirm/{transfer-no}): the payee opens it inside WeChat, sees the amount and transfer number, taps confirm to invoke WeChat's confirm-receipt capability, and the page closes automatically once the transfer is accepted. Opening it outside WeChat prompts "please open in WeChat".

Desktop and Mobile Adaptation ​

The same link automatically serves two page sets by device:

  • Mobile browser: the full checkout flow (enter amount / choose method / pay);
  • Desktop browser: the unified cashier becomes the web cashier; QR terminal / aggregate pages show a "please scan with your phone" guide;
  • Touch devices such as iPad are correctly detected as mobile;
  • For debugging, append ?device=pc / ?device=mobile to the link to force a form.

Who Determines the Payment Method List ​

The method list shown on the cashier = the merchant's cashier configuration (name / order / recommended / lock, maintained under "Cashier Config" in the merchant console) filtered by the open environment: the same order can show different options in a browser, WeChat, Alipay, UnionPay, or Douyin. The desktop cashier does not filter by environment and shows the Web bucket configuration.

Multi-language ​

Ten locales (Simplified / Traditional Chinese, English, Japanese, Korean + four ASEAN languages). The first visit auto-matches the browser language; a manual switch is remembered.