You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何通过代码在Worldpay Business Gateway实现支付捕获?

实现Worldpay Business Gateway自动支付捕获的可行性及方案

当然可行!Worldpay Business Gateway完全支持通过代码实现自动支付捕获,不用再手动在商家后台操作啦。下面给你梳理下关键步骤和注意事项:

核心前提

首先得确认你的Worldpay账户已经开启了**延迟捕获(Delayed Capture)**功能——只有当你最初的交易是「授权(Auth)」而非直接「完成(Sale)」时,后续才能执行捕获操作。如果还没开启,要么在商家管理后台自行配置,要么联系Worldpay客服帮忙开通。

具体实现步骤

  1. 准备关键交易参数
    从你之前存到数据库的Worldpay响应里,找出这几个必填信息:

    • orderCode:你提交初始交易时自定义的订单编号
    • transactionId或paymentResponseCode:Worldpay返回的唯一交易标识
    • 你的商家ID(merchantCode)和API密钥(这个一定要妥善保管,绝对不能泄露到前端或公开代码里)
  2. 调用捕获API
    Worldpay的Business Gateway提供了REST API来完成捕获操作,这里给你一个POST请求的示例结构:

    POST /api/v1/orders/{orderCode}/captures
    Host: api.worldpay.com
    Authorization: Bearer YOUR_API_KEY
    Content-Type: application/json
    
    {
      "amount": {
        "value": 1000,
        "currency": "GBP"
      },
      "reference": "YOUR_UNIQUE_CAPTURE_REF"
    }
    

    这里要注意:

    • amount可以和授权金额一致(全额捕获),也可以填更小的数值(部分捕获,如果你支持分批次收款的话)
    • reference是你自己生成的唯一捕获参考号,方便后续对账和排查问题
  3. 处理API响应
    调用后会收到Worldpay的响应,记得做好处理:

    • 如果返回201 Created,说明捕获成功,把响应里的captureId和状态更新到你的数据库里
    • 如果返回4xx/5xx错误码,要根据错误信息排查问题——比如授权过期、金额不匹配、API权限不足等

重要注意事项

  • API权限配置:确保你的API密钥拥有「捕获交易」的权限,有些默认生成的密钥可能只支持查询操作,需要在商家后台调整权限设置
  • 授权有效期:授权交易一般有7-30天的有效期(具体取决于卡组织和Worldpay的配置),一定要在有效期内完成捕获,否则授权会自动失效
  • 幂等性保障:如果你的系统可能出现重复请求的情况,一定要用唯一的reference,避免重复捕获同一笔交易
  • 先测后上生产:先在Worldpay的测试沙箱环境里跑通整个捕获流程,确认没问题再切换到生产环境

替代方案(如果REST API不适用)

如果你的技术栈更适配SOAP接口,Worldpay也提供了SOAP版本的捕获API,核心逻辑和REST一致,只是请求格式换成了XML,你可以按需选择。

内容的提问来源于stack exchange,提问作者Sharu Priya

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.05.21 03:44:16