Paytm API已有订单如何更新交易金额?支持重新发起不同金额交易吗?
Paytm 订单金额调整操作方案
首先明确Paytm官方规则限制:已完成的交易不支持直接修改原订单的txnAmount参数,待支付订单的金额修改窗口期仅为txnToken的15分钟有效期,无官方接口支持随时更新原订单金额。你可以根据自身业务场景选择以下可行方案:
场景1:原交易未完成,txnToken已过期
- 直接重新调用
Initiate Transaction API,传入同一原订单号和更新后的目标金额,Paytm会自动覆盖该订单号下未完成的历史交易记录,新生成的txnToken有效期重新计算15分钟,用户支付时会以最新的金额为准。 - 若你需要支持随时修改金额,可在每次用户发起支付操作前,重新调用发起交易接口生成最新的
txnToken即可,无需依赖上一次生成的过期令牌。
场景2:原交易已完成支付
需下调订单金额
直接调用Refund API对差额部分发起部分退款即可,无需修改原订单记录。Paytm侧会留存原交易金额、退款金额两条流水,实际结算金额和用户实付金额均为调整后的数值,和修改原订单金额的业务效果一致。
需上调订单金额
不要修改原订单,在你的业务侧生成和原订单关联的附加费用子订单,针对子订单单独发起新的Paytm交易即可,交易完成后在业务侧将两个订单的金额合并统计为该笔业务的总金额即可。
注意事项
不要对已完成支付的订单强行复用原订单号发起更高金额的新交易,会导致支付侧流水和业务侧订单映射混乱,后续对账会出现异常。
如果你需要用户可多次修改金额后支付,建议将金额修改操作放在业务侧处理,每次用户确认支付时再实时调用Paytm发起交易接口生成最新的交易参数即可,不受15分钟有效期限制。
内容的提问来源于stack exchange,提问作者Sierra
相关产品推荐
相关产品推荐

