🚀 VaultsPay API v1 is live. See what's new →
Set UpRequest & Response Format

Request & Response Format

All VaultsPay endpoints exchange JSON over HTTPS.

Requests

  • Send JSON with the header Content-Type: application/json.
  • Use UTF-8 encoding.
  • Numeric monetary values are sent as minor units (e.g. 1050 = AED 10.50).
  • Timestamps are ISO 8601 in UTC (2026-04-24T14:52:03.182Z).
curl -X POST https://api.vaultspay.ae/v1/accounts \
  -H "Authorization: Bearer sk_test_yourApiKeyHere" \
  -H "Content-Type: application/json" \
  -H "Idempotency-Key: a4f8c2b6-1d95-47e1-b0cf-8cb6d2f1fbd0" \
  -d '{ "user_id": "usr_01HX7...", "currency": "AED" }'

Responses

Every response is a JSON object with at least:

{
  "id": "acc_01HX71YM6FJ3A8W7T5K6NRB2DN",
  "object": "account",
  "created_at": "2026-04-24T14:52:03.182Z",
  ...
}

Collection endpoints wrap results in a data array along with pagination metadata:

{
  "object": "list",
  "data": [ { ... }, { ... } ],
  "has_more": true,
  "next_cursor": "acc_01HX72PKQ1..."
}

Common headers

HeaderPurpose
AuthorizationBearer token — your secret API key.
Content-TypeAlways application/json for JSON bodies.
Idempotency-KeyUnique key to safely retry mutating calls.
VaultsPay-VersionPin the API version (default: latest stable).

Versioning

The API version is pinned by date. You can opt into a specific version by sending:

VaultsPay-Version: 2026-04-01

If you don’t send this header, requests use the version set in your dashboard. See Changelog for details.