统一支付接口

Endpoint
POST {BASE_URL}/api/v2.0/payments/pay

统一支付接口,支持多种场景的支付业务,根据场景代码(scenarioCode)来指定具体业务。 不同的场景代码(scenarioCode)所需要的参数间略有不同,详情请Request Body

创建QR Code支付单ONLINE_QRCODE

QR Code订单适用于PC及手机浏览器进行支付。用户使用微信和支付宝扫码后即可支付。

支付方式

  1. 在商户页面生成二维码支付,使用
    • paymentQRImage: Base64封装的二维码图片,可直接作为img的src属性;
    • paymentUrl: 支付码字符串,商户可以据此自行生成二维码。
  2. 使用payUrl跳转到AlphaPay收银台。
Request Body
scenarioCodestringREQUIRED

场景代码,表示支付订单的使用场景,详情查看场景代码 (scenarioCode)
允许值:ONLINE_QRCODE ONLINE_WEB JSAPI NATIVE_JSAPI ONLINE_WAP APP MINI_APP CREDIT_CARD OFFLINE_QRCODE OFFLINE

paymentRequestIdstringREQUIRED

商户的订单ID

orderobjectREQUIRED

订单信息

隐藏子字段
order.orderAmountobjectREQUIRED

订单金额

隐藏子字段
order.orderAmount.valuestringREQUIRED

订单金额值,单位为货币最小单位,例如传入100表示1.00CAD,需符合正则: ^\d{1,7}$
currency如果是CNY,经汇率转换后不得低于0.01CAD,否则订单可以创建成功,但支付时会报金额不合法错误

order.orderAmount.currencystringREQUIRED

订单币种,允许值:CAD/USD CNY

order.descriptionstringREQUIRED

订单标题(最大长度128字符,超出自动截取)<= 128 characters

order.notifyUrlstring

支付通知URL,支付成功后推送支付成功通知的地址,详见订单推送通知

order.redirectUrlstring

支付跳转URL,支付成功后会跳转到的地址

paymentMethodobjectREQUIRED

支付方式信息

隐藏子字段
paymentMethod.paymentMethodTypestringREQUIRED

支付渠道,允许值:Alipay Wechat UnionPay

QR Code Request Body
{
  "scenarioCode": "ONLINE_QRCODE",
  "paymentRequestId": "string",
  "order": {
      "orderAmount": {
          "value": "string",
          "currency": "CAD"
      },
      "description": "string",
      "notifyUrl": "string",
      "redirectUrl": "string"
  },
  "paymentMethod": {
      "paymentMethodType": "Alipay"
  }
}

Response (200 OK)
scenarioCodestring

场景代码,表示支付订单的使用场景,详情查看场景代码 (scenarioCode)
允许值:ONLINE_QRCODE ONLINE_WEB JSAPI NATIVE_JSAPI ONLINE_WAP APP MINI_APP CREDIT_CARD OFFLINE_QRCODE OFFLINE

paymentRequestIdstring

商户的订单ID

orderobject

订单信息

隐藏子字段
order.orderAmountobject

订单金额

隐藏子字段
order.orderAmount.valuestring

订单金额值,单位为货币最小单位,例如传入100表示1.00CAD,需符合正则: ^\d{1,7}$
currency如果是CNY,经汇率转换后不得低于0.01CAD,否则订单可以创建成功,但支付时会报金额不合法错误

order.orderAmount.currencystring

订单币种,允许值:CAD/USD CNY

order.descriptionstring

订单标题(最大长度128字符,超出自动截取)<= 128 characters

order.notifyUrlstring

支付通知URL,支付成功后推送支付成功通知的地址,详见订单推送通知

order.redirectUrlstring

支付跳转URL,支付成功后会跳转到的地址

paymentMethodobject

支付方式信息

隐藏子字段
paymentMethod.paymentMethodTypestring

支付渠道,允许值:Alipay Wechat UnionPay

paymentInfoobject

支付信息

隐藏子字段
paymentInfo.paymentUrlstring

支付二维码链接字符串,可用于自行生成二维码

paymentInfo.paymentQRImagestring

支付二维码Base64图片信息,该图片为paymentUrl所生成

paymentInfo.payUrlstring

支付跳转链接

paymentCreateTimestring <date-time>

订单创建时间
遵循ISO8601标准,例如:2019-05-28T12:12:12+08:00

paymentExpireTimestring <date-time>

订单超时时间
遵循ISO8601标准,例如:2019-05-28T12:12:12+08:00

paymentIdstring

AlphaPay平台订单ID

resultobject

业务结果

隐藏子字段
result.resultCodestring

业务结果码,详情查看业务结果码 (resultCode)

result.resultMessagestring

业务结果消息

result.resultStatusstring

业务结果状态,详情查看业务结果状态 (resultStatus)

  • S:接口调用成功
  • F:接口调用失败,resultMessage会有详细的错误信息描述,可能是商户也可能是平台的错误。
  • U:业务结果未知或处理中间状态。比如提交支付单后得到 PAYMENT_IN_PROCESS,则需要调用查询接口确认支付结果状态
QR Code Response
{
  "scenarioCode": "ONLINE_QRCODE",
  "paymentRequestId": "string",
  "order": {
      "orderAmount": {
          "value": "string",
          "currency": "CAD"
      },
      "notifyUrl": "string",
      "redirectUrl": "string",
      "description": "string"
  },
  "paymentMethod": {
      "paymentMethodType": "string",
  },
  "paymentInfo": {
      "paymentUrl": "string",
      "paymentQRImage": "string",
      "payUrl": "string"
  },
  "paymentCreateTime": "2019-08-24T14:15:22Z",
  "paymentExpireTime": "2019-08-24T14:15:22Z",
  "paymentId": "string",
  "result": {
      "resultCode": "string",
      "resultMessage": "string",
      "resultStatus": "S"
  }
}