你可以创建一个 charge 对象向用户收款。charge 是一个支付凭据对象,所有和支付相关的要素信息都存储在这个对象中,你的服务端可以通过发起支付请求来创建一个新的 charge 对象,也可以随时查询一个或者多个 charge 对象的状态。每个 charge 对象都拥有一个标识 id,该 id 在 Ping++ 系统内唯一。
注 :服务端在传 Charge 对象到客户端前,请先使用各 SDK 自带的序列化方式(比如 Java 的 .toString())将对象转换成 JSON 字符串。
| 属性 | 描述 | 
|---|---|
| id string | 由 Ping++ 生成的支付对象 ID, 27位字符串。 | 
| object string | 值为 "charge"。 | 
| created timestamp | 支付创建时的 Unix 时间戳。 | 
| livemode boolean | 是否处于 live模式。 | 
| paid boolean | 是否已付款。 | 
| refunded boolean | 是否存在退款信息,无论退款是否成功。 | 
| reversed boolean | 订单是否撤销。 | 
| app expandable hash | 支付使用的 app对象的id,expandable 可展开,查看如何获取App ID。 | 
| channel string | 支付使用的第三方支付渠道,详情参考 支付渠道属性值。 | 
| order_no string | 商户订单号,适配每个渠道对此参数的要求,必须在商户的系统内唯一。 | 
| client_ip ip address | 发起支付请求客户端的 IP 地址,支持 IPv4、IPv6 格式。 | 
| amount int | 订单总金额(必须大于 0),单位为对应币种的最小货币单位,人民币为分。如订单总金额为 1 元, amount为 100。 | 
| amount_settle int | 清算金额,单位为对应币种的最小货币单位,人民币为分。 | 
| currency string | 3 位 ISO 货币代码,小写字母。 | 
| subject string | 商品标题,该参数最长为 32 个 Unicode 字符。 | 
| body string | 商品描述信息,该参数最长为 128 个 Unicode 字符。 yeepay_wap对于该参数长度限制为 100 个 Unicode 字符;支付宝部分渠道不支持特殊字符。 | 
| extra hash | 特定渠道发起交易时需要的额外参数,以及部分渠道支付成功返回的额外参数,详细参考支付渠道 extra 参数说明。 | 
| time_paid timestamp | 订单支付完成时的 Unix 时间戳。(银联支付成功时间为接收异步通知的时间) | 
| time_expire timestamp | 订单失效时间的 Unix 时间戳。 | 
| time_settle timestamp | 订单清算时间,用 Unix 时间戳表示。(暂不生效) | 
| transaction_no string | 支付渠道返回的交易流水号。 | 
| refunds list | 退款详情列表,详见 Refunds 退款。 | 
| amount_refunded int | 已退款总金额,单位为对应币种的最小货币单位,例如:人民币为分。 | 
| failure_code string | 订单的错误码,详见 错误 中的错误码描述。 | 
| failure_msg string | 订单的错误消息的描述。 | 
| metadata hash | 详见 元数据 。 | 
| credential object | 支付凭证,用于客户端发起支付。 | 
| description string | 订单附加说明,最多 255 个 Unicode 字符。 | 
{
  "id": "ch_Hm5uTSifDOuTy9iLeLPSurrD",
  "object": "charge",
  "created": 1410778843,
  "livemode": true,
  "paid": false,
  "refunded": false,
  "reversed": false,
  "app": "app_1Gqj58ynP0mHeX1q",
  "channel": "upacp",
  "order_no": "123456789",
  "client_ip": "127.0.0.1",
  "amount": 100,
  "amount_settle": 100,
  "currency": "cny",
  "subject": "Your Subject",
  "body": "Your Body",
  "extra":{},
  "time_paid": null,
  "time_expire": 1410782443,
  "time_settle": null,
  "transaction_no": null,
  "refunds": {
    "object": "list",
    "url": "/v1/charges/ch_Hm5uTSifDOuTy9iLeLPSurrD/refunds",
    "has_more": false,
    "data": []
  },
  "amount_refunded": 0,
  "failure_code": null,
  "failure_msg": null,
  "credential": {
    "object": "credential",
    "upacp": {
      "tn": "201409151900430000000",
      "mode": "01"
    }
  },
  "description": null
}