/api/v2/checkout创建订单
供商户服务端(Backend)发起创建一笔全新的数字货币支付或挂单账单。成功创建后将返回 cregis_id(系统流水号,务必存储)和 checkout_url(带时效的收银台链接)。
频率限制: 1000 次/分钟
请求
请求体
required
application/jsonnoncestringrequired6位随机字符串
pidinteger<int64>requiredCregis中该收单项目的唯一编号
signstringrequired对该接口请求进行的数字签名以防止非法请求,请参考 签名规则 章节。
timestampinteger<int64>required13位unix时间戳格式
order_amountstringrequired付款总额(如order_currency是法币,则以法币金额计算/如order_currency是加密货币,则以加密货币金额计算)
order_currencystringrequired请参阅 订单货币列表
- 如订单币种为加密货币,例子为USDT、ETH等。
- 如订单币种为法币:则填入ISO 4217 3 位字元货币代码。例子为HKD、USD等。
order_idstringrequired商家内部的订单编号【不超过128位字符】
payer_idstringrequired付款人编号
valid_timeintegerrequired单位:分钟(可填写:10 到 1440 的整数)
订单的有效时间。如超过有效时间,将不可以再支付。
success_urlstringrequired付款成功后,点击“返回商店”按钮,付款人将被重定向到此 URL。请确保 URL 中包含“http://”或“https://”
cancel_urlstringrequired如果付款人不付款或点击“取消”按钮,则定向至此 url。请确保 url 中包含“http://”或“https://”。
order_detailsstring<json>订单商品明细包括价格、数量和商品描述。这显示在 Cregis 结帐页面的订单详情部分
JSON 内部字段application/jsonshopping_costnumber运费
tax_costnumber消费税
sub_merchantstring<json>商户可使用此字段来记录内部子商户的编号
JSON 内部字段application/jsonsub_merchant_idstring子商户唯一编号
sub_merchant_namestring商户名称
payer_emailstring付款人邮箱,若accept_partial_payment或accept_over_payment为false则必填
tokensstring此字段中可限制您允许客户支付的代币。如此字段留空,则表示接受支持所有代币作为支付代币。请参阅 支付货币列表
填写参数可参考付款及结算参数页面内支付货币及支付网络的单位:例如:USDT-BEP20、USDT-TRC20等
payer_namestring付款人姓名,不超过 32 位字符
stablecoin_realtime_ratestringdefault: "false" · enum: "true", "false"默认值:false
- false代表 USDT/USDC 兑 USD 使用固定1:1的汇率
- true代表 USDT/USDC兑USD 使用从CoinMarketCap上获取的实时汇率
underpaid_tolerancenumber<float>default: 0部分支付限额。该订单可接受的支付金额容差下限,单位为
order_currency,默认值为0。此容差下限用于计算订单可接受的最少支付金额。状态判断规则:
- paid
order_amount - underpaid_tolerance <= 实际支付金额 <= order_amount + overpaid_tolerance - partial_paid
实际支付金额 < order_amount - underpaid_tolerance - overpaid
order_amount + overpaid_tolerance < 实际支付金额
示例:如果
order_currency为 HKD,且underpaid_tolerance为 3.50:- paid订单少付金额小于或等于 3.50 HKD
- partial_paid订单少付金额超过 3.50 HKD
- paid
overpaid_tolerancenumber<float>default: 0超额支付限额。该订单可接受的支付金额容差上限,单位为
order_currency,默认值为0。此容差上限用于计算订单可接受的最多支付金额。状态判断规则:
- paid
order_amount - underpaid_tolerance <= 实际支付金额 <= order_amount + overpaid_tolerance - partial_paid
实际支付金额 < order_amount - underpaid_tolerance - overpaid
order_amount + overpaid_tolerance < 实际支付金额
示例:如果
order_currency为 HKD,且overpaid_tolerance为 3.50:- paid订单多付金额小于或等于 3.50 HKD
- overpaid订单多付金额超过 3.50 HKD
- paid
accept_partial_paymentstringdefault: "true" · enum: "true", "false"默认值:“true”
- false如订单不接受部分支付及实际支付金额少于order_amount时,付款人需对订单进行补款或进行退款
- true如订单接受部分支付,即允许付款人不需对订单进行补款或退款
accept_over_paymentstringdefault: "true" · enum: "true", "false"默认值:“true”
- false如订单不接受超额支付及实际支付金额大于order_amount时,付款人需对订单进行差价退款
- true如订单接受超额支付,即允许付款人不需对订单进行差价退款
callback_urlstringCregis 会向此回调地址发送订单状态更新的通知,回调详情参考 订单支付通知
languagestringdefault: "en" · enum: "en", "tc", "sc"默认值:en
用于指定收银台或邮件的默认语言,可选值为:
- en英文
- tc繁体中文
- sc简体中文
remarkstring商户可对这笔支付订单做出备注【不超过256位字符】
响应
200成功application/jsoncodestring返回码
msgstring返回信息