开放平台
首页
支付业务
首页
支付业务
  • 说明

    • 概述
    • 签名
  • 支付

    • 下单支付

      • 二维码支付
      • JSAPI支付
      • 付款码支付
      • 支付通知
      • JSAPI调起支付
  • 交易查询

    • 交易查询
    • 交易退款

      • 申请退款
      • 退款查询
  • 订单分账
    • 添加分账方
    • 请求分账

支付通知

[TOC]

支付通知 API

通知 URL 是请求接口中提交的参数 notify_url,支付完成后,平台会把相关支付和用户信息发送到该 URL,服务商需要接收处理信息。

对后台通知交互时,如果平台收到商户的应答不是纯字符串 success 返回时,平台认为通知失败,平台会通过一定的策略(通知频率为 0/15/15/30/180/1800,单位:秒),共 6 次间接性重新发起通知,尽可能提高通知的成功率,但不保证通知最终能成功。 由于存在重新发送通知的情况, 因此同样的通知可能会多次发送给服务商系统。服务商系统必须能够正确处理重复的通知。

推荐的做法是, 当收到通知进行处理时, 首先检查对应业务数据的状态, 判断该通知是否已经处理过, 如果没有处理过再进行处理, 如果处理过直接返回结果成功。 在对业务数据进行状态检查和处理之前, 要采用数据锁进行并发控制, 以避免函数重入造成的数据混乱。 特别注意:后台接收到通知参数后,要对接收到通知参数里的订单号 out_trade_no 和订单金额 total_amount 和自身业务系统的订单和金额做校验,校验一致后才更新数据库中交易状态

通知方式 【POST】

通知参数内容为 json 格式的字符串

通知参数

通知示例

{
  "code": "000000",
  "message": "",
  "data": {
    "out_trade_sn": "20241213011549",
    "trade_no": 241213011551911301,
    "merchant_no": "20241213011549",
    "trade_state": "SUCCESS",
    "pay_trade_no": "20241213011549",
    "transaction_id": "4200002553202412139947935291",
    "total_amount": 6,
    "pay_time": 1734023762,
    "attach": ""
  },
  "sign": "sJ4HNCFk6orGYNLXC4Zeu8i7rWwSaZbL++wdnOOqEl733rOHfGwzUtT+b2iwMAgp84J7mea33nSVnsi80p\\/TBYclEorQET6CuU\\/EiA6z4jMcfDZjLSmuap1bEleeaXyOTGg2rFv9hyqIhWkzlr8Ul1SxCCkfTMbEhkCYU5qiMiqYi+Nn+MeZCoxHDLqwGjtYaX5BPwc21vPv810wxbeYqeqCF79zcX\\/l0s1C\\/MCyj0DKDI0clxtqa6QJ5dLHFHcewDJuxuPlyC9tbia6HafjXQ6+xPPXePq74KZA2gipKrRAyK93OcfnAFnbql4ukCQwP6x4eTvkWhnUDnzGfNqMdw=="
}

通知参数说明

参数必填类型说明
out_trade_sn是string服务商自定义的交易订单流水号
trade_no是string聚合平台交易单号
pay_trade_no是string支付凭证里的【商户单号】
transaction_id是string支付凭证里的【交易单号】
merchant_no是string商户号
total_amount是string订单金额
total_amount是string订单总金额 单位为分
pay_time否string支付时间
attach否string附加信息,可做扩展参数
Prev
付款码支付
Next
JSAPI调起支付