Overview
Last general docs update: 2026-07-17
This API is used to:
- accept customer payments (pay-ins / collections),
- send payouts to customers, partners, or beneficiaries (pay-outs / disbursements),
- track payment lifecycle via webhooks and status polling.
Links
- Swagger UI is available in top navigation under
Swagger UI. - Swagger UI: Prod | Dev
- Canonical machine-readable spec:
merchants.swagger.json
What you need before integration
- API keys (
pk_*for public endpoints,sk_*for authenticated merchant operations). - IP allowlist/whitelist settings aligned with your integration environment: Whitelist.
- A webhook URL configured for your merchant.
- A stable
merchantReferencestrategy on your side.
Quick start (5 steps)
- Configure auth and keys: Authentication
- Review request/response rules: Conventions
- Discover the markets enabled for your account with
GET /merchant/api/v1/catalog: identify the country, currency, and method family for the flow you are implementing - Implement the selected flow and request details: Choose a flow, Pay-ins, Mobile money transfer, Payouts, Payment methods, and the Endpoint index
- Add webhook verification and idempotent processing: Webhooks
Integrator workflow
- Use sidebar navigation for structured reading by topic.
- Use
Cmd/Ctrl + Ksearch for terms such asAuthentication,Webhook,PAYMENT_METHOD,balances. - Use the page
Copymenu to copy or open the current page markdown in ChatGPT/Claude.
Environments
The API is available in separate environments. Use the base URL assigned to your integration.
Typical base URLs:
- Development:
https://merchants-api.payli.dev - Production:
https://merchants-api.tcpay.io
All endpoints are relative to the base URL. Use the exact versioned path shown on the relevant API reference page.
Available countries, currencies, and method families depend on the environment and your merchant account. Start with GET /merchant/api/v1/catalog to identify the markets enabled for your integration, then use the relevant bank or operator discovery endpoint with the same request context you will use for the payment flow. Use Payment methods and Flows to build the final request payloads.
Documentation structure
- Getting started: Whitelist, Environments, Authentication, Conventions
- Discovery: Coverage, Catalog and availability, Payment methods, Mobile money operators
- Guides: Choose a flow, Pay-ins, Mobile money transfer, Payouts, Balances, Payment lifecycle, Webhooks
- API reference: Endpoint index, Object index, Errors
- Compatibility & changes: Forward compatibility, Changelog