Amazon Pay Redirect集成请求返回‘Technical problem’问题求助
Amazon Pay Redirect 集成返回「Technical problem」问题排查与解决
问题说明
首次对接Amazon Pay Redirect,构造请求参数如下:
{ "command":"AUTHORIZATION", "access_key": "xxxx", "merchant_id": "xxx", "merchant_reference": "Ahmad", "amount": 100, "currency": "EUR", "language": "us", "customer_email": "test@gmail.com", "signature": "4637c830d1386abf7374f2e694498c91dbf2517a28b61c42ae121f22fcc3f2a1", "order_description":"iphone" }
通过Postman发送请求后,返回response_message: 'Technical problem',以下是可能的错误点及解决办法:
错误排查与修复方案
金额格式不符合要求
Amazon Pay要求金额必须以最小货币单位的整数传递,比如欧元的最小单位是分,100欧元需传10000而非100。当前amount:100实际仅代表1欧元,会触发后端校验异常。
修复:将金额转换为最小单位整数,例如100EUR改为10000。语言参数取值错误
language参数需使用标准语言代码,英语(美国)的正确值是en-US,而非us。错误的语言代码会导致接口解析失败。
修复:将language修改为文档规定的有效值,如en-US。签名生成规则不匹配
签名验证失败是这类技术错误的常见原因,需严格遵循官方步骤生成:- 除
signature外,所有请求参数按参数名称升序排列,拼接成key=value&key=value格式; - 在拼接字符串的首尾添加你的SHA请求密钥;
- 使用SHA-256算法生成哈希值,确保大小写、参数完整性完全符合文档要求。
修复:重新按规则生成签名,替换现有值。
- 除
必填参数缺失
对照官方文档检查AUTHORIZATION请求的必填项,比如可能缺少return_url(支付完成后的跳转地址)等关键参数,缺失会导致接口无法处理请求。
修复:补充所有文档标注的必填参数。环境不匹配
若用生产环境密钥调用沙箱接口,或沙箱密钥调用生产接口,会触发权限验证失败。
修复:确认请求URL(沙箱/生产)与access_key、merchant_id的环境完全匹配。
内容的提问来源于stack exchange,提问作者Ahmad Masri
相关产品推荐
相关产品推荐

