开发Shopify支付应用:如何发送HTTP 2xx响应完成支付会话创建?
Shopify支付应用跳转合作方页面问题解决指南
核心问题定位
你需要返回带redirect_url的HTTP 2xx响应的端点,就是你在Shopify合作伙伴后台配置的支付处理端点(Payment Processing Endpoint)——这是你自己服务的公网可访问HTTPS接口,Shopify会在用户发起支付时向这个接口发送请求,你必须在这里返回符合要求的响应,才能完成支付会话创建并跳转到合作方支付页面。
具体实现步骤
- 确认端点配置:登录Shopify合作伙伴后台,进入你的支付应用设置页,找到「Payment processing endpoint」字段,这里填写的URL就是接收Shopify支付请求的地址,确保该地址是公网可访问的HTTPS地址。
- 处理Shopify的POST请求:用户在店铺发起支付时,Shopify会向这个端点发送包含订单详情、金额、支付会话ID等信息的POST请求,你需要解析这些参数,生成合作方支付页面的跳转链接。
- 返回合规响应:构造JSON格式的响应体,包含
redirect_url字段(值为合作方支付页面的HTTPS地址,可携带订单ID、金额等必要参数),并返回HTTP 200(或其他2xx状态码),示例如下:
HTTP/1.1 200 OK
Content-Type: application/json{
"redirect_url": "https://你的支付合作方域名.com/pay?order_id=12345&amount=99.99"
}
常见排查点
- 确保端点支持HTTPS:Shopify仅向HTTPS地址发送请求,HTTP地址会被直接拒绝。
- 响应格式必须正确:Content-Type需设置为
application/json,响应体必须是合法JSON,不能存在语法错误。 redirect_url必须是有效HTTPS地址:不能是本地地址或未备案域名,否则Shopify会判定响应无效。- 测试端点可用性:用Postman等工具模拟Shopify的请求格式,验证端点是否能返回正确响应。
内容的提问来源于stack exchange,提问作者Symon Kibaru
相关产品推荐
相关产品推荐

