# 美国支付与代付接口文档 > 本文档根据提供的接口截图整理,**按接口调用顺序**组织,从【说明】→【支付(代收)】→【支付结果异步通知】→【代付】→【代付结果异步通知】,仅聚焦**美国(US)相关支付与代付**。 --- ## 一、接口说明 ### 1. 接口概述 本接口用于商户系统与支付平台进行对接,涵盖: - 接口地址 - 请求/响应格式 - 签名机制 - 支付(代收)与代付流程 ### 2. 接口地址 - **生产环境(正式商户对接)** - 生产地址:由平台运营人员提供 --- ## 二、公共规则 ### 1. 请求方式 - HTTP Method:`POST` - 提交方式:`form` 表单 - Content-Type:`application/x-www-form-urlencoded; charset=UTF-8` ### 2. 字符集 - `UTF-8` ### 3. 签名机制(必选) #### 3.1 签名规则 - 请求参数与回调参数 **都需要参与验签** - **不参与签名的字段**:`sign` - 参数规则: 1. 所有参数按 **ASCII 字典序升序排列** 2. 剔除 `value` 为空或 `null` 的字段 3. 拼接为:`key1=value1&key2=value2...` 4. 最后拼接商户密钥:`&key=商户密钥` > ⚠️ 参数值 **使用原始值,不进行 URL Encode** #### 3.2 签名算法 - MD5(32 位) - 不区分大小写(建议统一转大写) --- ## 三、国家与币种(美国) | 国家 | 国家编码 | 货币编码 | 推荐语言 | |----|----|----|----| | 美国 | US | USD | en | --- ## 四、支付(代收)接口(美国) ### 1. 接口说明 - 用于用户向商户付款 - 支持美国本地支付方式(如 CASH / APP 等) - 下单成功后返回平台订单号 ### 2. 请求方式 - `POST`(form 表单) ### 3. 请求参数(核心字段) | 参数名 | 必填 | 类型 | 说明 | |---|---|---|---| | version | 是 | string | 接口版本号,如 `2.1` | | orgNo | 是 | string | 平台分配的机构编号 | | custId | 是 | string | 平台分配的商户编号 | | custOrderNo | 是 | string | 商户订单号(唯一) | | payType | 是 | string | 支付类型(如 CASH_APP、APPLE_PAY) | | payAmt | 是 | int | 支付金额(单位:分,100=1 美元) | | currency | 是 | string | USD | | backUrl | 是 | string | 支付结果异步通知地址 | | sign | 是 | string | 签名值 | ### 4. 返回参数(示例字段) | 参数名 | 类型 | 说明 | |---|---|---| | code | string | 返回码,`000000` 表示成功 | | msg | string | 返回描述 | | prdOrdNo | string | 平台订单号 | | sign | string | 签名 | --- ## 五、支付结果异步通知 ### 1. 通知说明 - 平台根据 `backUrl` 向商户后台回调支付结果 - 商户需: - 验签 - 做幂等处理(同一订单只处理一次) - 若商户返回内容 **包含 `SC000000`**,视为回调成功 ### 2. 请求方式 - `POST`(form 表单) ### 3. 通知参数 | 参数名 | 必填 | 类型 | 说明 | |---|---|---|---| | version | 是 | string | 版本号 | | orgNo | 是 | string | 机构编号 | | custId | 是 | string | 商户编号 | | custOrderNo | 是 | string | 商户订单号 | | prdOrdNo | 是 | string | 平台订单号 | | payAmt | 是 | int | 支付金额 | | ordStatus | 是 | string | 订单状态 | | sign | 是 | string | 签名 | #### 订单状态说明 - `00` 未交易 - `01` 成功 - `02` 失败 - `03` 被拒绝 - `04` 处理中 - `05` 已取消 - `06` 未支付 - `07` 已退款 - `08` 退款中 > 除成功和失败外,其余状态均可视为处理中 ### 4. 回调成功示例 ``` SC000000 ``` --- ## 六、代付接口(美国) ### 1. 接口说明 - 用于商户向用户付款(提现 / 打款) - 美国代付方式:`CASH` / `CASH_APP` / `APPLE_PAY` ### 2. 请求方式 - `POST`(form 表单) ### 3. 请求参数(核心字段) | 参数名 | 必填 | 类型 | 说明 | |---|---|---|---| | version | 是 | string | 版本号 | | orgNo | 是 | string | 机构编号 | | custId | 是 | string | 商户编号 | | custOrderNo | 是 | string | 商户代付订单号 | | country | 是 | string | US | | currency | 是 | string | USD | | payAmt | 是 | int | 代付金额(分) | | payOutType | 是 | string | 代付方式 | | accountName | 是 | string | 收款人姓名 | | sign | 是 | string | 签名 | ### 4. 返回参数 | 参数名 | 类型 | 说明 | |---|---|---| | code | string | 返回码 | | msg | string | 描述 | | prdOrdNo | string | 平台代付订单号 | | sign | string | 签名 | --- ## 七、代付结果异步通知 ### 1. 通知说明 - 平台根据 `callBackUrl` 回调代付结果 - 商户需校验签名并做幂等处理 - 返回内容包含 `SC000000` 即视为成功 ### 2. 请求方式 - `POST`(form 表单) ### 3. 通知参数 | 参数名 | 必填 | 类型 | 说明 | |---|---|---|---| | custOrderNo | 是 | string | 商户代付订单号 | | prdOrdNo | 是 | string | 平台代付订单号 | | payAmt | 是 | int | 代付金额 | | ordStatus | 是 | string | 代付状态 | | casDesc | 是 | string | 代付说明 | | utr | 否 | string | UTR(印度专用,美国可忽略) | | sign | 是 | string | 签名 | #### 代付状态说明 - `00` 未处理 - `01` 待结算 - `06` 清算中 - `07` 清算完成(成功) - `08` 清算失败 - `09` 清算撤销 > 实际状态以该字段为准,除成功 / 失败,其余均视为处理中 ### 4. 回调成功示例 ``` SC000000 ``` --- ## 八、流程总览(美国) 1. 商户发起 **支付(代收)请求** 2. 平台返回下单结果 3. 平台异步回调 **支付结果** 4. 商户发起 **代付请求** 5. 平台异步回调 **代付结果**