创建支付会话
通过向 /payments/session 发送 POST 请求来创建支付会话,并使用 API 密钥进行身份验证。响应会提供一个托管结账 URL,您需要将客户引导至该 URL。
POST https://api.xenonpay.net/api/payments/session请求
在 x-api-key 请求头中提供 API 密钥,并发送 JSON。只有 amount 是必填项。
{
"amount": 500,
"order_id": "merchant-order-123",
"customer_name": "Asha Sharma",
"customer_email": "[email protected]",
"customer_phone": "+919876543210"
}字段 | 类型 | 必填 | 规则 |
|---|---|---|---|
| 数字 | 是 | 整卢比,范围为 500 至 99000(含边界值) |
| 字符串 | 否 | 您自己的订单参考号 |
| 字符串 | 否 | |
| 字符串 | 否 | |
| 字符串 | 否 |
成功响应
成功调用会返回 201 Created。将客户引导至 checkout_url,并将 ref_id 和 session_token 与您的订单关联存储。
{
"ref_id": "XPABC123",
"session_token": "48-character-hex-session-token",
"checkout_url": "https://pay.xenonpay.net/checkout/48-character-hex-session-token",
"amount": 500,
"currency": "INR",
"expires_at": "2026-08-24T10:10:00.000Z",
"bank": {
"upi_id": "merchant@upi",
"qr_image_url": "https://example.com/qr.png"
}
}字段 | 类型 | 说明 |
|---|---|---|
| 字符串 | XenonPay 支付参考号 |
| 字符串 | 用于标识此会话;用于结账 URL 和状态调用 |
| 字符串 | 用于将客户引导至支付页面 |
| 数字 | 整卢比 |
| 字符串 | 始终为 |
| 字符串 | ISO-8601;会话在创建 10 分钟后过期 |
| 字符串或 null | 客户支付时使用的 UPI ID |
| 字符串或 null | 用于支付的 QR 图片 |
amount 验证错误
amount 必须是 ₹500 至 ₹99,000 之间的整卢比金额。除无可用银行的情况外,以下每种情况都会返回 422。
条件 | 状态 | 响应 |
|---|---|---|
缺失、非数字、零或负数 amount | 422 |
|
小数或 paise 金额 | 422 |
|
低于 ₹500 | 422 |
|
高于 ₹99,000 | 422 |
|
没有可用的活跃银行账户 | 503 |
|
有关身份验证错误,请参阅“身份验证”文章。