/service/@id/tinopay/sapo-integrations/@integrationUpdate a Sapo integration
Send only the changed fields. Leaving out api_secret keeps the saved secret; TinoPay tests the Sapo connection again only when store_url, api_key or api_secret changes (failure: 422 SAPO_CONNECTION_FAILED). A bank_account_id outside the merchant: 404 BANK_ACCOUNT_NOT_FOUND.
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 |
integration | int | Required | Sapo integration ID (`id` in the Sapo integration list) |
Body (JSON)
| Name | Type | Required | Description |
|---|---|---|---|
name | string | — | — |
store_url | string | — | — |
api_key | string | — | — |
api_secret | string | — | — |
bank_account_id | string | — | — |
virtual_account | string | — | — |
order_prefix | string | — | — |
transaction | array | — | — |
status | string | — | active | inactive |
Response
The source documentation does not show this route's answer. Success is {"data": …}; errors follow the common shape in Getting started with TinoPay.
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.