POST
/api/payment
Initiates a payment request against a zkPay handle.
Request Body
| Parameter | Type | Required | Description |
|---|---|---|---|
| zkpay_handle | string | Yes | The user's zkPay identity (e.g., user@zkpay.me). |
| amount | number | Yes | The amount to charge. Must be positive. |
| currency | string | Yes | 3-letter currency code (e.g., "USD"). |
| merchant_id | string | Yes | Your unique merchant identifier. |
| merchant_name | string | No | Display name for the transaction statement. |
| description | string | No | Description of the purchase. |
Response
Returns a JSON object with the transaction result.
{
"success": true,
"payment_id": "pay_123...",
"status": "COMPLETED",
"requires_approval": false,
"message": "Payment successful"
}
Status Codes
200 OK: Request processed successfully (result in body).400 Bad Request: Missing parameters or invalid amount.500 Internal Server Error: System error.