Payment Applications API
Endpoints for creating and managing payment applications. All endpoints require OAuth2 authentication.
List Applications
Get all payment applications for your account.
GET /api/payment-applications
Authorization: Bearer YOUR_OAUTH_TOKEN
Response
{
"data": [
{
"id": "550e8400-e29b-41d4-a716-446655440000",
"name": "My E-commerce Store",
"clientId": "a1b2c3d4e5f6g7h8i9j0k1l2m3n4o5p6",
"userId": "...",
"currencyWhitelist": ["BTC", "ETH", "USDT"],
"site": {
"id": "...",
"url": "https://mystore.com",
"callbackUrl": "https://mystore.com/webhooks/payments"
},
"paymentAppImage": null,
"createdAt": "2026-01-01T00:00:00Z",
"deletedAt": null
}
]
}
Get Application
Retrieve a specific payment application.
GET /api/payment-applications/{id}
Authorization: Bearer YOUR_OAUTH_TOKEN
Create Application
Create a new payment application.
POST /api/payment-applications
Authorization: Bearer YOUR_OAUTH_TOKEN
Content-Type: application/json
Request Body
{
"name": "My New Store",
"secret": "your_webhook_secret",
"url": "https://mynewstore.com",
"callbackUrl": "https://mynewstore.com/webhooks/payments",
"currencyWhitelist": ["BTC", "ETH", "USDT"],
"allowUnderpay": false,
"allowOverpay": true
}
Parameters
| Parameter | Type | Required | Description |
|---|---|---|---|
name | string | Yes | Application name (3-255 characters) |
secret | string | Yes | Webhook signing secret for HMAC verification |
url | string | No | Your website URL |
callbackUrl | string | No | Webhook endpoint URL for payment notifications |
currencyWhitelist | array | No | List of accepted cryptocurrency codes |
allowUnderpay | boolean | No | Accept underpaid payments |
allowOverpay | boolean | No | Accept overpaid payments |
Response
{
"data": {
"id": "550e8400-e29b-41d4-a716-446655440000",
"name": "My New Store",
"clientId": "x9y8z7w6v5u4t3s2r1q0p9o8n7m6l5k4",
"userId": "...",
"currencyWhitelist": ["BTC", "ETH", "USDT"],
"site": {
"id": "...",
"url": "https://mynewstore.com",
"callbackUrl": "https://mynewstore.com/webhooks/payments"
},
"createdAt": "2026-01-20T12:00:00Z"
}
}
The clientId is a unique 32-character identifier for your application. Use it in payment creation requests.
Update Application
Update payment application settings.
PUT /api/payment-applications/{id}
Authorization: Bearer YOUR_OAUTH_TOKEN
Content-Type: application/json
Request Body
{
"name": "Updated Store Name",
"callbackUrl": "https://mynewstore.com/webhooks/v2/payments",
"currencyWhitelist": ["BTC", "ETH", "USDT", "USDC"],
"allowUnderpay": true,
"allowOverpay": true
}
All fields are optional. Only include the fields you want to update.
Delete Application
Soft-delete a payment application.
DELETE /api/payment-applications/{id}
Authorization: Bearer YOUR_OAUTH_TOKEN
Restore Application
Restore a soft-deleted payment application.
POST /api/payment-applications/{id}/restore
Authorization: Bearer YOUR_OAUTH_TOKEN