Skip to main content

创建 Charge 对象

🚀 查看详细参数及数据样例请查看 OpenAPI 接口声明

创建 Charge 对象

发起一次支付请求时需要创建一个新的 charge 对象,获取一个可用的支付凭据用于客户端向第三方渠道发起支付请求。如果使用测试模式的 API Key,则不会发生真实交易。当支付成功后,会发送 Webhooks 通知。

请求参数

NameTypeDescription
amountfloat[REQUIRED] 订单金额,单位元, 如 0.01
app_idstring[REQUIRED] 应用 id
bodystring[REQUIRED] 服务明细
callback_urlstring[OPTIONAL] 回调地址,如不传则使用 APP 设置中的回调地址。若都为空,则无法跳回原页面
channelChannel[REQUIRED] 渠道名称
client_ipstring[REQUIRED] 客户端机器 IP
currencystring货币单位。国内收单机构仅支持 CNY
descriptionstring[OPTIONAL] 交易描述
extraChargeRequestExtra[OPTIONAL] 各支付渠道元数据
merchant_trade_idstring[REQUIRED] 客户系统的交易单号(订单号),必须在应用下唯一。长度不超过32字符
metadatahash[OPTIONAL] 订单元数据,原样返回
notification_areastring[OPTIONAL] 接受通知服务器所在区域,为确保消息能够送达,请选择服务器所在国家的国家码。如不填默认为 CN
notify_urlstring[OPTIONAL] 通知地址,如不传则使用 APP 设置中的通知地址。若都为空,则不发送通知
subjectstring[REQUIRED] 物品或服务名称(交易标题)
ttlint[OPTIONAL] 订单超时时间,单位秒

返回结果

返回一个支付凭据 charge 对象。鉴于支付渠道对 order_no 的合法性要求,为了保证支付请求的正确处理,请务必保证对于同一支付渠道下,不同支付产品间 order_no 的唯一性。例如:已在微信 JSAPI 支付下使用的 order_no 则无法在微信 Native 扫码下重复使用,该规则同样适用于其他同类渠道。如果发生错误,则会返回错误码和错误详情。