向PayPal按钮URL传递额外参数后如何在订阅接口中查询custom值
解答
根本原因
你使用的custom是PayPal传统HTML按钮的交易级自定义参数,该参数仅绑定在订阅关联的单笔支付交易对象上,不会直接同步到订阅资源的属性中,因此直接调用订阅查询接口无法返回该字段;IPN回调默认会携带交易关联的扩展字段,所以你可以在IPN请求中拿到该值。
解决方案
方案1:查询历史订阅的custom参数值
对于已经生成的存量订阅,你可以通过查询订阅关联的交易记录获取参数:
- 调用订阅查询接口时追加参数
fields=last_payment,获取该订阅下最近一笔交易的ID - 调用交易查询接口
GET https://api-m.paypal.com/v1/reporting/transactions?transaction_id={对应交易ID},返回结果中的custom_field字段即为你传入的custom参数值
方案2:后续新订阅直接在订阅属性中查看自定义值
如果需要后续新生成的订阅可以直接在订阅查询接口返回自定义值,你可以修改按钮链接的参数:
将原有链接中的&custom=123替换为&custom_id=123,该参数会直接写入订阅资源的根属性,后续调用GET /v1/billing/subscriptions/{订阅ID}时可以直接在返回结果中获取custom_id字段的值,无需额外查询交易。
内容的提问来源于stack exchange,提问作者handsome
相关产品推荐
相关产品推荐

