Base URL
https://api.chipipay.com/v1
Authentication
All API requests require two headers:
| Header | Value | Description |
|---|
x-api-key | pk_xxxx | Your Chipi public API key |
Authorization | Bearer sk_prod_xxxx | Your secret key (server-side) or user JWT (client-side) |
curl -H "x-api-key: pk_xxxx" \
-H "Authorization: Bearer sk_prod_xxxx" \
https://api.chipipay.com/v1/skus
For detailed instructions on obtaining your API keys, see the API Quickstart.
API Endpoints
Wallets
| Method | Endpoint | Description |
|---|
GET | /chipi-wallets/by-user | Get wallet by user ID |
GET | /chipi-wallets/token-balance | Get token balance |
PATCH | /chipi-wallets/update-encryption-details | Update wallet encryption |
Transactions
| Method | Endpoint | Description |
|---|
POST | /transactions/record-send | Record a send transaction |
GET | /transactions/transaction-list | Get transaction history |
Services (SKUs)
| Method | Endpoint | Description |
|---|
GET | /skus | List available services |
GET | /skus/{id} | Get a single service |
POST | /sku-purchases | Purchase a service |
GET | /sku-purchases/{id} | Get purchase status |
Exchanges
| Method | Endpoint | Description |
|---|
GET | /exchanges/usd-amount | Convert currency to USD |
Notifications and Webhooks
When you purchase a service, you’ll receive status updates via webhooks or email at the URL and email address you configured in your dashboard.
Steps to set up your webhook
- For setting up webhooks and email notifications, see the API Quickstart.
Rate Limits
API requests are limited to 100 requests per minute per API key.
Error Handling
The API uses standard HTTP status codes to indicate success or failure:
200 - Success
400 - Bad Request
401 - Unauthorized
404 - Not Found
429 - Rate Limited
500 - Internal Server Error
Error responses include a JSON object with an error and message field:
{
"error": "invalid_request",
"message": "The request was invalid"
}