Thailand Payment API
The Thailand Payment API from SoPay lets merchants accept and send THB through a single integration surface. Whether you are launching gaming payouts, marketplace settlements, or subscription billing for Thai customers, this guide explains how Merchant Collection API and Merchant Payout API work at the platform layer and points to authoritative field documentation.
Technical parameters, environment URLs, and request examples are maintained in the Thailand Payment API documentation—not on this marketing-oriented page.
What merchants integrate with
Thailand Payment API usually means:
- Creating payin orders to collect baht from customers
- Creating payout orders to send baht to local beneficiaries
- Querying order status when webhooks are delayed or for reconciliation
- Verifying RSA2 signatures on requests and callbacks
- Handling webhooks on a public HTTPS endpoint
Local methods such as bank transfer and PromptPay may appear in payer or payee experiences, but you integrate through SoPay Payment Gateway API contracts rather than licensing each Thai rail yourself.
Documented Thailand capabilities
| Topic | Description | Link |
|---|---|---|
| Overview | Base URLs, API map, credentials | Thailand Payment API documentation |
| Payin | Create, query, callback | Thailand Payin API |
| Payout | Create, query, callback | Thailand Payout API |
| Signing | RSA2 and payload rules | Signature guide |
| Webhooks | Verification and OK response | Merchant Callback API |
Historical documentation may describe both Open API (appId, stringified bizContent) and header-signed merchant API (X-Merchant-No, X-Sign). Use the variant assigned to your merchant account—do not mix auth styles in one integration.
Merchant Collection API (THB Payin)
A typical Thailand Payin API flow:
- Server-side order create with amount, merchant reference, and
callback_url - Platform returns identifiers or payment instructions depending on channel
- Payer completes payment
- Terminal status delivered via POST to your callback URL
Open API integrations must serialize inner JSON as a string inside bizContent. See Thailand Payin API for parameters and samples.
Merchant Payout API (THB Payout)
Thailand Payout API sends funds to beneficiaries identified by account and bank metadata (for example payee_bank_code in documented Open API shapes). Field naming may mix camelCase in create responses with snake_case in query or webhook payloads—always parse the JSON your environment returns.
Ensure sufficient merchant wallet balance before payout create where wallet funding applies; see Thailand overview.
PromptPay and local channels
PromptPay API is often used informally to describe QR or instant-transfer experiences in Thailand. SoPay documents payin and payout at the merchant API level. Whether a payin response includes PromptPay-specific artifacts is determined by enabled products and sandbox/production responses—not by guarantees on this page.
Integration checklist
- Confirm API style (Open vs header-signed) from operations
- Read Thailand Payment API documentation
- Implement Merchant Signature Verification
- Integrate Payin and/or Payout
- Expose HTTPS callbacks per Merchant Callback API
Cross Border Payment API angle
Merchants headquartered outside Thailand frequently use SoPay as a Cross Border Payment API aggregator: same signing and webhook patterns as India or Pakistan docs, with countryCode=TH and currency=THB scoped rules. Multi-country programs should still implement per-country overview pages rather than assuming one global schema.
Frequently Asked Questions
Open API or header-signed merchant API?
Both appear in documentation history. Follow the credential pack and Thailand overview for your merchant—never combine two auth models in one client.
Can payin and payout share one callback URL?
Often yes, but your handler must distinguish order type and enforce idempotency on merchant order numbers.
How do I query an order?
Use documented query endpoints with either platform_order_no or merchant_order_no. See Thailand Payin API and Thailand Payout API.
Where is the Chinese documentation?
Simplified Chinese pages live at /tha/* and /solutions/thailand-payment-api without the /en prefix. English mirror: Thailand Payment API documentation.
What webhook response stops retries?
HTTP 200 with body OK after successful verification and business update. See Callback guide.
