- 新平台
Checkout.com使用Restful的API规范,具体API文档可参考:
https://api-reference.checkout.com/preview/crusoe/
Base Url
在发起API请求时,请使用以下的地址:
环境 | Base URL |
---|---|
沙箱测试环境 | https://api.sandbox.checkout.com/ |
生产正式环境 | https://api.checkout.com/ |
接口安全验证方式
Checkout.com 使用公私钥的方式来进行安全验证,可以在后台系统Dashboard中查找对应密钥信息并在需要时进行新增。
密钥的格式为:
密钥类型 | 沙箱环境 | 生产环境 |
---|---|---|
私钥 | sk_sbox_xxxxxxxxxxxxxxxxxxxxxxxxxx | sk_xxxxxxxxxxxxxxxxxxxxxxxxxx |
公钥 | pk_sbox_xxxxxxxxxxxxxxxxxxxxxxxxxx | pk_xxxxxxxxxxxxxxxxxxxxxxxxxx |
其中公钥一般用于iFrame的初始化,或者移动端的SDK。
私钥则是后端接口调用时进行鉴权。具体使用方式是在HTTP header中增加参数:Authrozation。并在密钥值前增加 Bearer
如:
Key | Value |
---|---|
Authorization | Bearer sk_sbox_xxxxxxxxxxxxxxxxxxxxxxxxxx |
若贵司使用的是Checkout.com老平台对接,请与负责贵司的工程师进行联系。
幂等机制
Checkout.com的大部分业务接口都提供幂等功能,以便商户在出现系统异常时安全的发起重试。其逻辑为:当HTTP请求中增加了幂等的key时,后续使用同一幂等key重新发起的请求会返回此前相同的处理结果(相同的HTTP code返回及body信息)。
沙箱环境的幂等有效期为120秒
生产环境的幂等有效期为24小时
幂等参数同样是在HTTP请求中添加key:
Key | Value |
---|---|
Cko-Idempotency-Key | string |
建议使用V4 UUIDs来产生幂等值。
请求示例如下:
curl -X POST https://api.sandbox.checkout.com/payments
-H 'Authorization: Bearer sk_***'
-H 'Cko-Idempotency-Key: 74f18c1ee79747949cc5f0bd4d771e93'
-H 'Content-Type: application/json'
-d '{
"source": {
"type": "token",
"token": "tok_6qi7zfk7652udgy2thneaoxp7u"
},
"amount": 1000,
"currency": "USD"
}