开发者社区 问答 正文

alipay.trade.query(统一收单线下交易查询) 接口返回数据字段与文档描述不一致

RT.

  1. 线下门店扫码支付后,接口中填写的store_id, terminal_id, store_name, ext_infos 等选填字段均未在 支付宝后台显示。

  2. 根据官方文档描述在接口中填写 query_options,也未能返回任何选填字段数据。

所有订单只返回如下固定字段,请求姿势保证真确:

{
"alipay_trade_query_response": {
  "code": "10000",
  "msg": "Success",
  "buyer_logon_id": "shi***@gmail.com",
  "buyer_pay_amount": "0.01",
  "buyer_user_id": "2088102335538965",
  "fund_bill_list": [
    {
      "amount": "0.01",
      "fund_channel": "ALIPAYACCOUNT"
    }
  ],
  "invoice_amount": "0.01",
  "out_trade_no": "20191013000025709483559382652",
  "point_amount": "0.00",
  "receipt_amount": "0.01",
  "send_pay_date": "2019-10-13 14:32:45",
  "total_amount": "0.01",
  "trade_no": "2019101322001438960585365312",
  "trade_status": "TRADE_SUCCESS"
  }
}

展开
收起
1630915728962203 2019-10-13 14:54:55 1285 分享
分享
版权
来自: 支付宝开发者社区 举报
阿里云 AI 助理回答

根据您的描述,您在使用支付宝支付接口时遇到了返回信息不包含自定义选填字段的问题,比如store_id, terminal_id, store_name, ext_infos等。尽管按照官方文档设置了query_options以期望获取这些额外信息,但实际响应中仍然没有包含它们。

这里有几个可能的原因和解决建议:

  1. 确认API版本与文档匹配:首先,请确保您参考的官方文档与您实际调用的API版本相匹配。支付宝会不定期更新其API,不同版本的API可能有不同的参数要求和返回格式。

  2. 检查query_options设置:请再次确认在调用alipay.trade.query接口时是否正确设置了query_options参数,并且该参数值包含了您希望返回的所有字段名。例如,如果要查询store_id,确保query_options中包含了store_id。注意参数格式和逗号分隔的要求。

  3. API权限问题:某些字段或功能可能需要特定的权限才能访问。请检查您的支付宝开放平台账户是否有足够的权限来请求这些额外信息。如果不确定,可以登录支付宝开放平台查看应用的权限设置,或者联系支付宝客服咨询。

  4. 接口限制:部分字段可能由于接口设计的原因,在交易查询接口中不支持返回。虽然文档中可能有提及这些字段作为可选项,但在实际操作中可能受到限制。建议直接咨询支付宝的技术支持确认这些字段是否确实可以通过查询接口获得。

  5. 技术咨询:如果上述步骤都确认无误,可能是技术实现上的问题或者是支付宝系统配置方面的问题。此时,最直接有效的方式是通过支付宝开放平台的帮助中心提交工单,或者联系支付宝的技术支持团队,提供详细的接口调用日志和问题描述,以便他们能更准确地定位并解决问题。

记得在与支付宝技术支持沟通时,提供尽可能详细的信息,包括但不限于接口调用的完整请求参数、响应内容以及您尝试过的所有解决方案,这将有助于快速解决问题。

有帮助
无帮助
AI 助理回答生成答案可能存在不准确,仅供参考
0 条回答
写回答
取消 提交回答
AI助理

你好,我是AI助理

可以解答问题、推荐解决方案等