/service/@id/tinopay/pay-codesPayment code patterns
Patterns TinoPay uses to extract code from the transfer content (the webhook's code field), also the order code prefix of the Sapo integration. Returns [{prefix, suffix_from, suffix_to, character_type}]; e.g. DH + 6–8 digits: content DH123456 thanh toan gives the code DH123456.
A TinoPay service route: call it with the service owner's sign-in token; the /v1 gateway (app tokens, personal tokens) does not expose TinoPay yet. See Getting started with TinoPay.
Authentication
Send the token in the header Authorization:
Authorization: Bearer <token>
Tokens that can call it: the TinoPay service owner's sign-in token (the tino.vn client area token).
Parameters
Path parameters
| Name | Type | Required | Description |
|---|---|---|---|
id | int | Required | TinoPay service ID |
Response
Sample built from the TinoPay API v1 documentation (Tino relays TinoPay data as is); values are examples.
Error codes
| Error code | Description |
|---|---|
404 · service_not_found, invalid method | The service does not belong to the signed-in account, or is not TinoPay. |
403 · service_not_active | The service is neither Active nor Suspended. |
403 · MERCHANT_SUSPENDED | The merchant is suspended: writes are blocked, GET still works. |
404 · RESOURCE_NOT_FOUND | The resource does not exist or does not belong to the merchant. |
422 · VALIDATION_FAILED | Invalid data; details lists the fields. |
502 · NETWORK_ERROR…, 504 | The connection between Tino and the partner is interrupted (504: HTML body, request took too long): a Tino-side error, not a token problem. Keep the token, retry later. |
Errors look like {"error": ["<CODE>"], "message", "details", "request_id"}; every code is in Getting started with TinoPay.