Skip to main content

Sales models in China (and recommended architecture)

This page answers a common question:

“Can AppInChina provide payments and user/product management?”

AppInChina Payments is a payments layer (WeChat Pay + Alipay wrapper + transaction records). It does not replace your user system, product catalog, or entitlement/subscription management.

If you are unsure what is in scope, start with: Capabilities and Limitations (Scope).

Common sales models (alternatives to auto-renew subscriptions)

In Mainland China, many teams avoid “silent” auto-renew and instead ship models that are easier to explain and support.

Typical approaches include:

  • One-time purchase (permanent unlock): user buys once, entitlement is permanent.
  • Fixed-term access (manual renewal): sell “1 month / 3 months / 1 year access” as non-auto-renewing products.
    • The user buys again when the term expires.
    • Your backend extends the entitlement window on confirmed payment.
  • Prepaid top-up / wallet: user buys credits, then consumes credits for features/content.
    • Your backend tracks credit balance and consumption.
  • Bundles / feature packs: user purchases a pack that unlocks a group of features.
  • Activation code / voucher: user redeems a code (sold via a partner channel) that grants entitlement.
    • Your backend validates and redeems the code, then grants entitlement.

Auto-renewing subscriptions can work, but they require extra care: explicit consent, clear renewal rules, cancellation/refund policy, and support handling. AppInChina Payments can record transactions, but subscription lifecycle policy and user support workflows remain on your side.

Responsibility split (who owns what)

AreaYour system (client app + backend)AppInChina Payments
User accountsLogin, account recovery, identity linking, admin toolsNot provided
Product catalogSKUs, pricing, eligibility, promotionsNot provided
Orders & entitlementsInternal order model; grant/revoke/extend access; term logicRecords transaction status and history
Payment initiationTrigger payment flow from your app/backendSDK/API to start WeChat Pay / Alipay
Payment confirmationVerify final status server-side before fulfillmentQuery authoritative transaction status
RefundsYour business policy + customer supportRefund operations via Dashboard (scope)

For identity mapping, see: Login → Payments integration (customer identity).

This pattern works for one-time purchases and fixed-term access.

  1. User logs in (your login system, e.g. Authing / WeChat Login / custom) → your backend returns a stable internal userId.
  2. App loads product catalog from your backend (often hosted in China for latency/compliance, depending on your architecture).
  3. Create internal order in your backend:
    • Compute the final price (and any discount logic you own).
    • Create an internal order ID (bizNo) for idempotency and reconciliation.
  4. Create payment via AppInChina Payments using the final amount and metadata:
    • Include customerIdentity = userId.
    • Optionally include attachData (your product ID, plan ID, etc.) for your own reconciliation.
  5. User completes payment in WeChat Pay / Alipay.
  6. Verify payment server-side by querying order status.
  7. Fulfill in your backend:
    • One-time purchase: grant entitlement permanently.
    • Fixed-term access: extend expiresAt based on the product term (e.g. +30 days).
  8. App refreshes entitlements from your backend and unlocks features.

“Server in China” note (where to store what)

Many clients keep these in their China-region backend:

  • User identity mapping (userId + external identities)
  • Product catalog and pricing rules
  • Entitlements (what the user has access to, and until when)
  • Internal orders (bizNo, product/plan, fulfillment status)

AppInChina Payments stores transaction records and provides query endpoints for status/history, keyed by identifiers you provide (for example bizNo and customerIdentity).