支付

本页面介绍如何创建支付请求并获取支付结果,主要包含以下步骤:

  • 调用createCashierPayment接口创建支付订单。
  • 用户在支付界面完成支付。
  • 支付完成后,集成商可通过以下两种方式获取支付结果:

步骤一:创建支付订单

  1. 用户在集成商平台上提交支付请求。
  2. 集成商调用createCashierPayment接口,创建万里汇支付订单。
  3. 万里汇收到支付请求后,返回响应信息,其中包含重定向URL。
  4. 集成商使用该URL引导用户跳转至支付界面,此URL位于响应信息actionForm.redirectUrl字段中。
  5. 用户绑定万里汇账号后完成支付,具体详见概述-用户体验部分。
  6. 用户完成支付后,集成商可调用inquirePayment接口查询支付结果,万里汇会返回支付相关信息,包括支付状态、金额、支付方式和支付订单ID。
  7. 支付处理完成后,万里汇会调用notifyPayment接口通知集成商支付结果,集成商收到支付结果通知后转发给用户。

步骤二:查询支付结果

集成商可通过以下两种方式获取支付结果:等待万里汇发送的支付结果异步通知,或调用inquirePayment接口查询支付结果。虽然万里汇发送异步通知时有重发机制,但有时由于网路问题,集成商可能无法收到支付成功通知。此时,集成商需调用inquirePayment接口查询支付结果。

若出现以下情况,集成商需调用inquirePayment接口查询支付结果:

  • 支付完成5秒后,集成商可调用inquirePayment查询支付结果。
  • 收到createCashierPayment响应信息30分钟内未收到notifyPayment接口的通知。

步骤三:接收支付结果通知

支付订单处理完成后,万里汇会调用notifyPayment接口通知集成商支付结果。集成商在收到通知之后,需要完成以下步骤:

  1. 验签,确保通知由万里汇发出。

万里汇在发出通知时会添加万里汇签名,集成商收到通知后,需对签名进行验证,具体操作指南详见传输报文及加验签部分。

  1. 发送响应信息,确认信息已收到。

验签确认信息由万里汇发出后,集成商需要向万里汇发送响应信息,通知万里汇信息已收到。

下例为集成商发送至万里汇的响应报文内容:

copy
{
  "result":{
    "resultCode":"SUCCESS",
    "resultMessage":"success.",
    "resultStatus":"S"
  }
}

若万里汇未收到集成商发回的响应信息,万里汇会重新发送请求通知。万里汇重发通知的规则为:

    • 重试总数:7次
    • 两次重发请求之间的间隔:2分钟,10分钟,10分钟,1小时,2小时,6小时,15小时

@2024 WorldFirst