Customer Store Credit
Check and issue customer store credit through the Admin API
Check a customer's current store credit balances and add positive store credit to the customer's balance. Use these endpoints for trusted server-side integrations that need to read or grant credit for goodwill, returns, promotions, or external workflows.
Endpoints
GET /customers/{customerId}/store-credit
POST /customers/{customerId}/store-creditAuthentication
Requires a valid Admin API key. Reading the balance needs customers.read, and adding credit needs customers.write.
Authorization: Bearer your_api_key_hereTest the API
Enter your Admin API key, the customer identifier, and any required request values, then select Send.
The POST tester sends a live production request and adds store credit to the customer. Use a unique Idempotency-Key. Your API key is stored only in this browser's local storage, so use the tester on a trusted device.
Authorization
BearerAuth API key from the Tiquo dashboard (Settings > Developer > Admin API)
In: header
Path Parameters
Customer number or document ID
Query Parameters
Optional 3-letter ISO currency code to return one balance.
^[A-Za-z]{3}$3 <= length <= 3Response Body
application/json
application/json
application/json
application/json
application/json
curl -X GET "https://api.tiquo.app/api/v1/customers/string/store-credit"{
"success": true,
"data": {
"customerId": "string",
"customerNumber": "string",
"balances": [
{
"currency": "GBP",
"balance": 25.5
}
],
"totalCurrencies": 0
},
"timestamp": "2019-08-24T14:15:22Z"
}{
"success": false,
"error": "string",
"timestamp": "2019-08-24T14:15:22Z",
"details": {}
}{
"success": false,
"error": "string",
"timestamp": "2019-08-24T14:15:22Z",
"details": {}
}{
"success": false,
"error": "string",
"timestamp": "2019-08-24T14:15:22Z",
"details": {}
}{
"success": false,
"error": "string",
"timestamp": "2019-08-24T14:15:22Z",
"details": {}
}Authorization
BearerAuth API key from the Tiquo dashboard (Settings > Developer > Admin API)
In: header
Path Parameters
Customer number or document ID
Header Parameters
Unique key for this store-credit issuance attempt. Reusing the same key with the same request returns the original transaction; reusing it with different request details returns 409.
^[A-Za-z0-9._:-]+$1 <= length <= 128Request Body
application/json
Positive amount to add to the balance.
0.010 < value <= 1000000^[A-Za-z]{3}$3 <= length <= 3Optional note for the ledger entry.
length <= 500Response Body
application/json
application/json
application/json
application/json
application/json
application/json
application/json
application/json
curl -X POST "https://api.tiquo.app/api/v1/customers/string/store-credit" \ -H "Idempotency-Key: string" \ -H "Content-Type: application/json" \ -d '{ "amount": 1000000, "currency": "GBP" }'{
"success": true,
"data": {
"id": "string",
"entityType": "customer",
"customerId": "string",
"companyId": "string",
"currency": "string",
"type": "issued",
"amount": 0,
"balanceAfter": 0,
"note": "string",
"idempotencyKey": "string",
"createdAt": 0,
"idempotentReplay": true
},
"timestamp": "2019-08-24T14:15:22Z"
}{
"success": true,
"data": {
"id": "string",
"entityType": "customer",
"customerId": "string",
"companyId": "string",
"currency": "string",
"type": "issued",
"amount": 0,
"balanceAfter": 0,
"note": "string",
"idempotencyKey": "string",
"createdAt": 0,
"idempotentReplay": true
},
"timestamp": "2019-08-24T14:15:22Z"
}{
"success": false,
"error": "string",
"timestamp": "2019-08-24T14:15:22Z",
"details": {}
}{
"success": false,
"error": "string",
"timestamp": "2019-08-24T14:15:22Z",
"details": {}
}{
"success": false,
"error": "string",
"timestamp": "2019-08-24T14:15:22Z",
"details": {}
}{
"success": false,
"error": "string",
"timestamp": "2019-08-24T14:15:22Z",
"details": {}
}{
"success": false,
"error": "string",
"timestamp": "2019-08-24T14:15:22Z",
"details": {}
}{
"success": false,
"error": "string",
"timestamp": "2019-08-24T14:15:22Z",
"details": {}
}Idempotency
Every POST request must include an Idempotency-Key header. If you retry the same request with the same key, Tiquo returns the original transaction instead of issuing credit twice. If the same key is reused with different request details, the API returns 409 Conflict.
Idempotency-Key: credit-CUST-000001-2026-06-19-001Get current balance
GET /customers/{customerId}/store-creditUse the optional currency query parameter to return a single currency balance. If the customer has no balance in that currency, the API returns 0.
Example request
curl "https://api.tiquo.app/api/v1/customers/CUST-000001/store-credit?currency=GBP" \
-H "Authorization: Bearer your_api_key_here"Response
{
"success": true,
"data": {
"customerId": "k1234567890abcdef",
"customerNumber": "CUST-000001",
"balances": [
{ "currency": "GBP", "balance": 25 }
],
"totalCurrencies": 1
},
"timestamp": "2026-06-19T10:30:00.000Z"
}Add store credit
POST /customers/{customerId}/store-creditThe amount you send is added to the customer's current store credit balance for that currency.
Path parameters
| Parameter | Type | Required | Description |
|---|---|---|---|
customerId | string | Yes | Customer number or document ID. |
Request body
| Field | Type | Required | Description |
|---|---|---|---|
amount | number | Yes | Amount to add, from 0.01 to 1000000, with up to 2 decimal places. |
currency | string | Yes | Three-letter ISO currency code, for example GBP. |
note | string | No | Optional ledger note, up to 500 characters. |
Example request
curl -X POST "https://api.tiquo.app/api/v1/customers/CUST-000001/store-credit" \
-H "Authorization: Bearer your_api_key_here" \
-H "Content-Type: application/json" \
-H "Idempotency-Key: credit-CUST-000001-2026-06-19-001" \
-d '{
"amount": 25.00,
"currency": "GBP",
"note": "Goodwill credit"
}'Response
New issuances return 201 Created. Idempotent retries return 200 OK with idempotentReplay: true.
{
"success": true,
"data": {
"id": "k1234567890abcdef",
"entityType": "customer",
"customerId": "k9876543210fedcba",
"currency": "GBP",
"type": "issued",
"amount": 25,
"balanceAfter": 125,
"note": "Goodwill credit",
"idempotencyKey": "credit-CUST-000001-2026-06-19-001",
"createdAt": 1767225600000,
"idempotentReplay": false
},
"timestamp": "2026-06-19T10:30:00.000Z"
}Error responses
| Status | Description |
|---|---|
400 | Invalid JSON, amount, currency, note, or idempotency key. Amounts below 0.01, including tiny values that round to zero cents, are refused with "amount must be at least 0.01". |
401 | Missing or invalid API key. |
403 | The API key doesn't have the permission this request needs. |
404 | Customer not found. |
409 | Idempotency-Key was reused with different request details. |
429 | Rate limit exceeded. |
500 | The credit couldn't be issued because of a problem on Tiquo's side. Retry with the same Idempotency-Key. |