Provider reference
2C2P provider reference
Public 2C2P information summarized into a WQN Gateway adapter plan for methods, markets, token flow, notifications, refunds, and operations.
Solutions mapped to WQN
Provider planCard schemes, digital wallets, QR payments, bank channels, BNPL, IPP, and alternative methods through one integration plan.
Payout and fund movement concepts for merchant settlement, disbursement, and reconciliation operations.
Specialized payment operations for travel use cases, multiple channels, and agency integrations.
Payment links, invoices, social-channel checkout, centralized reporting, and invoice matching.
Card, wallet, and loyalty program concepts for later expansion beyond payment acceptance.
Regional market notes
SEA- IndonesiaDigital payments are central to ecommerce; QRIS, mobile wallets, cards, and BNPL should be visible in checkout planning.
- ThailandPromptPay-style QR, mobile wallets, domestic payments, IPP, and multi-currency pricing are important checkout options.
- SEA coreIndonesia, Malaysia, Philippines, Singapore, Thailand, and Vietnam should be treated as primary market presets.
Payment method coverage plan
Cards · QR · Wallet · BNPL| Type | Examples | WQN implementation |
|---|---|---|
| Cards | Visa, Mastercard, AMEX, JCB, UnionPay, Discover, local cards | Hosted checkout or direct provider tokenization |
| QR payments | Online QR, offline QR, PromptPay-style regional QR | QR payment session with expiry and callback |
| Wallets | Digital wallet rails and local wallet options by market | Wallet redirect, deep link, or SDK flow |
| Bank and direct debit | Internet banking, online direct debit, virtual account concepts | Redirect/direct bank flow with status inquiry |
| BNPL and IPP | Buy now pay later, installment plans through supported banks/schemes | Installment selector and risk/fee disclosure |
| Counter and offline | Pay-at-counter and cash-assisted payment points | Voucher/reference number with payment expiry |
Integration flow
Token first- 1Create WQN payment intentMerchant sends amount, currency, order reference, return URL, and idempotency key to WQN.
- 2Request provider payment tokenWQN adapter creates a 2C2P-style payment token before redirect, direct, or SDK payment.
- 3Load payment optionsAdapter fetches available channel categories and payment option details for the customer market and currency.
- 4Proceed with paymentCustomer completes card, wallet, QR, bank, BNPL, counter, or direct-debit flow.
- 5Normalize notificationProvider notification is verified, decrypted when applicable, mapped to WQN payment events, and sent to merchant webhook.
- 6Status, refund, cancelOperations can run status inquiry, refund, cancel/void, and reconciliation from protected workflows.
Security and compliance
Review- Use hosted checkout or provider tokenization to reduce PCI scope; never store raw PAN, CVV, PIN, or sensitive authentication data.
- Support 3DS where available for card-not-present flows and expose 3DS outcome in the payment timeline.
- Verify provider signatures/encryption before updating payment status; use JWE/JWS-compatible processing where required by the provider API.
- Sign WQN merchant webhooks with HMAC SHA-256, timestamp tolerance, replay protection, and request IDs.
- Keep provider credentials in a vault reference and require approval before enabling production routing.
Provider API mapping
Adapter blueprint| 2C2P concept | WQN endpoint/module | Purpose |
|---|---|---|
| Payment Token | /v1/providers/2c2p/payment-token | Create provider session token before checkout, redirect, direct API, or SDK flow. |
| Payment Option / Option Detail | /v1/provider-routes/2c2p/options | Expose payment methods, channel codes, currencies, 3DS/refund support, and customer locale options. |
| Do Payment / Proceed Transaction | /v1/payments/{id}/attempts | Submit selected method details and create a normalized payment attempt. |
| Payment Notification | /v1/providers/2c2p/webhook | Receive provider result and publish WQN events such as payment.succeeded or payment.failed. |
| Transaction Status | /v1/payments/{id}/sync | Inquire and reconcile state when redirects or webhooks are delayed. |
| Refund / Cancel / Void | /v1/refunds and /v1/payments/{id}/cancel | Handle full/partial refunds, pending transaction cancellation, and operations evidence. |
WQN checkout request
curl https://gateway.wqnwqn.com/v1/checkout/sessions \
-H "Authorization: Bearer sk_sandbox_xxx" \
-H "Idempotency-Key: order_20260709_2c2p" \
-H "Content-Type: application/json" \
-d '{
"amount": 125000,
"currency": "THB",
"provider_preference": "2c2p",
"payment_methods": ["card", "qr", "wallet", "bnpl", "counter"],
"return_url": "https://merchant.example.com/return",
"notify_url": "https://merchant.example.com/webhooks/wqn"
}'
Normalized webhook
{
"id": "evt_2c2p_01J2",
"type": "payment.succeeded",
"provider": "2c2p",
"payment_id": "pay_9A41K2",
"provider_reference": "2c2p_txn_...",
"amount": 125000,
"currency": "THB",
"signature": "sha256=..."
}
Official source links
Public docs- 2C2P homepagehttps://2c2p.com/
- 2C2P payment methodshttps://2c2p.com/payment-methods/
- 2C2P developer introductionhttps://developer.2c2p.com/docs/general
- Payment Token APIhttps://developer.2c2p.com/docs/api-payment-token
- SDK payment classeshttps://developer.2c2p.com/docs/sdk-classes-payment-request
- Do Payment APIhttps://developer.2c2p.com/docs/sdk-api-do-payment
- Payload encryptionhttps://devzone.2c2p.com/docs/integration-1
- Refund guidehttps://developer.2c2p.com/docs/payment-maintenance-refund-guide