批量提链
POST
/api/checkout-batchsessions、payment_cdk 和至少一条入口代理必填。页面只有一个代理池时,服务会将它同时用于 Checkout 与 GoPay 支付链路。
{
"sessions": ["<ACCESS_TOKEN_OR_SESSION_JSON>"],
"link_type": "gopay",
"payment_cdk": "<CDK>",
"entry_proxies": ["http://<USER>:<PASS>@<HOST>:<PORT>"],
"exit_proxies": [],
"retry_count": 10,
"use_sen": true,
"use_promo": true,
"promo_campaign": "plus-1-month-free"
}
HTTP 202 只表示任务已受理。每个任务分别返回一次性 job_secret:
{
"ok": true,
"jobs": [{
"row": 1,
"job_id": "<JOB_ID>",
"job_secret": "<JOB_SECRET>",
"queue_position": 0
}],
"rejected": []
}
进度与取消
GET
/api/checkout-progress?job_id={job_id}curl -sS "http://127.0.0.1:18083/api/checkout-progress?job_id=<JOB_ID>" \
-H "X-GoPay-Job-Secret: <JOB_SECRET>"
POST
/api/checkout-progress/batch{
"jobs": [{
"job_id": "<JOB_ID>",
"job_secret": "<JOB_SECRET>",
"log_cursor": 0
}]
}
POST
/api/checkout-cancel{"job_id":"<JOB_ID>"}
进度与取消都需要任务密钥。密钥错误统一返回 404,响应和日志不会回显 Token、CDK 或代理凭据。
第一阶段资格检测
POST
/api/gopay-eligibility资格检测只验证优惠后金额为 0 且 Checkout 开放 GoPay,不执行 confirm、approval 或提链。
{
"sessions": ["<ACCESS_TOKEN_OR_SESSION_JSON>"],
"payment_cdk": "<CDK>",
"entry_proxies": ["http://<PROXY>"],
"promo_campaign": "plus-1-month-free"
}
GET
/api/gopay-eligibility/{job_id}查询时使用资格任务自己的 job_secret。
Midtrans 付款状态
POST
/api/gopay-payment-status{"snap_redirect_url":"https://app.midtrans.com/snap/v1/redirection/<TOKEN>"}
返回 midtrans_payment_state:pending、paid、refunded、failed 或 unknown。
只读接口
GET
/api/healthGET
/api/configPOST
/api/cdk-statusGET
/api/task-capacityGET
/api/link-success-statsGET
/api/payment-stats状态与错误
| HTTP | 含义 |
|---|---|
200 | 查询、取消或只读接口成功。 |
202 | 任务已受理,尚未证明提链成功。 |
400 | 字段、代理、数量或 Snap URL 格式不正确。 |
402 | CDK 缺失、无效、停用或次数耗尽。 |
403 | 请求了 GoPay 之外的支付通道。 |
404 | 任务不存在、密钥不匹配或接口未开放。 |
任务状态为 queued、running、done、error 或 cancelled。只有结果中存在有效 snap_redirect_url 时才计为提链成功并消费 CDK。