申请付款
- Endpoint:
POST /aggregate-pay/api/gateway/paymentOrderPay - Tags: 付款
Description
此接口为API付款接口,该接口返回参数请注意以下事项,否则可能会有资损风险:
- 当"code": "APPLY_SUCCESS"且返回"status":"PENDING",代表下单成功,订单状态请以回调或查询接口status为准;
- 当"code": "ORDER_REPEAT",代表该outTradeNo已经下过单,请等待回调或查询接口确认订单状态,每次下单需确保outTradeNo唯一;
- 其他场景请检查参数后不换outTradeNo重新发起,注意重新设置requestTime;
Parameters
| Field | In | Type | Required | Constraints | Description |
|---|---|---|---|---|---|
Content-Type | header | string | Yes | ||
sign | header | string | Yes | 签名信息请参考技术文档 |
Parameter Examples
Content-Type:"application/json"sign:"FPFVT3o227JrFRbqu19boZCpVVTF9KznxyRawUmxpfXilHV/0yK46haPhAjNu1hPUMy7Vw/ILXhfzffNm4Fj0apWknlTY9OJxnSoQxS9BTFtc61tn5yV1q69x/kkBl82/qwg+XTJ4fOzy7Mar3VaC1E2PlDA6RkkKBUyNE6RYgsdB+Su7an4+4HVTNAnoe74WyvBgxTLMNg28igBTdqxaO3w/UBY6ObVp7vkqkQGdL1Y+HgmMYaAVwrM3+ALWGId0sJ+YqTY4WJ+0xCRGhaSnybiIjZsQEYyID68WNUfuavDLDsEhaMm/HfQvf5p0R1Ltovp3wwJnEbQcjY458iX5A=="
Request Body
Content-Type: application/json
| Field | Type | Required | Constraints | Description | Enum |
|---|---|---|---|---|---|
version | string | Yes | maxLength: 8 | 接口版本 当前值为:1.5 | |
keyVersion | string | Yes | maxLength: 8 | 密钥版本 当前值为:1 | |
requestTime | string | Yes | maxLength: 32 | 请求时间,符合rfc3339规范,格式:yyyy-MM-dd'T'HH:mm:ss.SSSXXX 时间需要在当前时间两分钟内 | |
appId | string | Yes | maxLength: 64 | 商户应用Id,PayerMax分配给商户应用的唯一标识 | |
merchantNo | string | No | maxLength: 32 | 商户号,商户与PayerMax业务签约时生成的唯一标识 | |
data | object | Yes | 请求数据体 | ||
data.outTradeNo | string | Yes | maxLength: 63 | 商户订单号,唯一标识商户的一笔交易,不能重复,只能包含字母、数字、下划线 | |
data.country | string | Yes | maxLength: 2 | 国家代码,大写字母,参见【支持的国家与币种】 | |
data.chargeOption | string | No | 费用承担模式,是否必传参照《付款申请模板及填写规范》 | ||
data.clearingRail | string | No | 枚举值为:SWIFT, SEPA, LOCAL,分别对应签约的SWIFT、SEPA、Local Banks支付方式,请根据实际要用的支付方式来上送,请参照《付款申请模板及填写规范》 | ||
data.userId | string | No | maxLength: 64 | 商户内部的用户Id,需要保证每个ID唯一性 | |
data.sourceAccount | string | No | maxLength: 3 | 扣款账户的币种代码,大写字母 | |
data.destinationCurrency | string | No | maxLength: 3 | 指定到账币种,请参考【支付方式列表】,如有标明到账币种的,需要指定到账币种;若未标明,则到账币种仅支持本币,不需要进行指定 | |
data.trade | object | Yes | 交易信息 | ||
data.trade.amount | string | Yes | maxLength: 12 | 交易金额 ,按照各国币种支持的小数点位上送。注意:印尼,越南,韩国,智利,本币不支持带小数金额 | |
data.trade.currency | string | Yes | maxLength: 3 | 交易币种,大写字母 | |
data.payeeInfo | object | Yes | 收款方信息 | ||
data.payeeInfo.paymentMethodType | string | Yes | maxLength: 64 | 支付方式,请参考【支付方式列表】 | |
data.payeeInfo.targetOrg | string | No | maxLength: 64 | 目标机构,请参考【支付方式列表】 | |
data.payeeInfo.payeeType | string | No | 收款方类型(PERSONAL/CORPORATION),默认PERSONAL | ||
data.payeeInfo.accountInfo | object | Yes | 收款账户信息 | ||
data.payeeInfo.accountInfo.accountNo | string | Yes | maxLength: 128 | 收款方账号,根据付款方式不同填入相应账号 | |
data.payeeInfo.accountInfo.accountType | string | No | 收款账户类型,在不同国家-支付方式下规范不同 | ||
data.payeeInfo.accountInfo.checkDigit | string | No | 收款方账户验证数字 | ||
data.payeeInfo.bankInfo | object | No | 收款方银行信息 | ||
data.payeeInfo.bankInfo.bankCode | string | No | maxLength: 64 | 用于识别特定金融机构下的收款方银行代码,在不同国家下填写规范不同,参见【付款申请模板及填写规范】以及【支持银行范围列表】 | |
data.payeeInfo.bankInfo.bankName | string | No | maxLength: 255 | 收款方银行名称 | |
data.payeeInfo.bankInfo.bankBranch | string | No | maxLength: 64 | 收款人银行网点号/分行号 | |
data.payeeInfo.bankInfo.bankCity | string | No | maxLength: 255 | 收款方银行所在城市 | |
data.payeeInfo.bankInfo.corAccountNo | string | No | maxLength: 128 | 收款方银行的代理账号(correspondent account) | |
data.payeeInfo.name | object | No | 收款方姓名,支持英文、空格、逗号、中划线、点,在不同国家-支付方式下填写规范不同 | ||
data.payeeInfo.name.firstName | string | No | maxLength: 64 | 收款方名 | |
data.payeeInfo.name.middleName | string | No | maxLength: 64 | 收款方中间名,多段中间名时,使用空格进行分隔 | |
data.payeeInfo.name.lastName | string | No | maxLength: 64 | 收款方姓 | |
data.payeeInfo.name.fullName | string | No | maxLength: 512 | 收款方全名 | |
data.payeeInfo.document | object | No | 收款方个人身份信息 | ||
data.payeeInfo.document.documentType | string | No | maxLength: 16 | 收款方个人身份证明类型,在不同国家下可选类型不同,参见《付款申请模板及填写规范》 | |
data.payeeInfo.document.documentId | string | No | maxLength: 64 | 收款方个人识别号码,在不同国家下可选类型不同,参见《付款申请模板及填写规范》 | |
data.payeeInfo.document.documentIssueDate | string | No | maxLength: 10 | 收款方个人识别号码生效日期,在不同国家下可选类型不同,yyyy-MM-dd格式 | |
data.payeeInfo.document.documentExpireDate | string | No | maxLength: 10 | 收款方个人识别号码失效日期,在不同国家下可选类型不同,yyyy-MM-dd格式 | |
data.payeeInfo.address | object | No | 收款方地址信息 | ||
data.payeeInfo.address.address | string | No | maxLength: 512 | 收款方地址 | |
data.payeeInfo.address.city | string | No | maxLength: 255 | 收款方城市 | |
data.payeeInfo.address.state | string | No | maxLength: 255 | 州 | |
data.payeeInfo.address.zipCode | string | No | maxLength: 32 | 收款方邮编 | |
data.payeeInfo.payeePhone | string | No | maxLength: 64 | 收款方移动电话号码,在不同国家-支付方式下填写规范不同 | |
data.payeeInfo.birthDate | string | No | maxLength: 10 | 收款方出生日期,yyyy-MM-dd格式 | |
data.payeeInfo.email | string | No | maxLength: 64 | 收款方邮箱 | |
data.payeeInfo.payeeNationality | string | No | maxLength: 2 | 收款人国籍,ISO 3166-1 alpha-2标准,如CN,US | |
data.payeeInfo.payeeGender | string | No | maxLength: 1 | 收款人性别,枚举值F 或M(F=Female,M=Male) | |
data.payeeInfo.payeeBirthCountry | string | No | maxLength: 2 | 收款人出生国家,ISO 3166-1 alpha-2标准,如CN,US | |
data.payerInfo | object | No | 付款方信息 | ||
data.payerInfo.subMerchantNo | string | No | maxLength: 64 | 子商户号。子商户在系统中的唯一标识 | |
data.payerInfo.businessLegalName | string | No | maxLength: 70 | 付款公司主体注册名 | |
data.payerInfo.registrationCountry | string | No | 付款公司主体注册国家,2位大写国家编码 | ||
data.payerInfo.merchantCategoryCode | string | No | 付款公司行业分类,枚举值,DIGITAL_GOODS_MEDIA:数娱类产品-媒介;DIGITAL_GOODS_APPLICATION:数字产品-应用软件类;TRAVEL_AGENCIES_AND_TRAVEL_RELATED_SERVICES:旅行社;COURIER_SERVICES_AIR_AND_GROUND_AND_FREIGHT_FORWARDERS:快递服务-空运、陆运及货物运输代理商;ADVERTISING_SERVICES:广告业务;TELECOMMUNICATION_SERVICE:电信服务;COMPUTER_NETWORKS_AND_INFORMATION_SERVICES:计算机网络/信息服务;MISCELLANEOUS_GENERAL_MERCHANDISE:电商-杂项百货。 | ||
data.payerInfo.payerId | string | No | maxLength: 70 | 付款公司所属机构/平台商户号 | |
data.payerInfo.name | object | No | 付款方姓名,支持英文、空格、逗号、中划线、点,在不同国家-支付方式下填写规范不同 | ||
data.payerInfo.name.firstName | string | No | 付款方名 | ||
data.payerInfo.name.middleName | string | No | 付款方中间名,多段中间名时,使用空格进行分隔 | ||
data.payerInfo.name.lastName | string | No | 付款方姓 | ||
data.payerInfo.name.fullName | string | No | 付款方全名 | ||
data.riskParams | object | No | 风控业务数据 | ||
data.riskParams.registerName | string | No | 注册账号持有人姓名 | ||
data.riskParams.registerNo | string | No | 商户网站/app上用户的注册标识 | ||
data.riskParams.nickName | string | No | 商户网站/app上用户的昵称 | ||
data.riskParams.thirdAccountNoType | string | No | 第三方 帐户类型: 枚举值 Facebook, Google, AppleID,Others | ||
data.riskParams.thirdAccountNo | string | No | 第三方账号标识 | ||
data.riskParams.bindEmail | string | No | 账号绑定邮箱 | ||
data.riskParams.bindPhoneNo | string | No | 账号绑定手机号 | ||
data.riskParams.accountLevel | string | No | 账号等级 | ||
data.riskParams.vipLevel | string | No | VIP等级 | ||
data.riskParams.regTime | string | No | 账号注册时间,格式:yyyy-MM-dd HH:mm:ss | ||
data.riskParams.lastLoginTime | string | No | 最后一次登录/活跃时间,格式:yyyy-MM-dd HH:mm:ss | ||
data.riskParams.liveCountry | string | No | 现居住地址(国家维度),如CN | ||
data.riskParams.taxId | string | No | 用户税号 | ||
data.riskParams.cumPayoutAmount | string | No | 用户在商户侧,最近3个月累计出款成功金额(USD) | ||
data.riskParams.cumPayoutTxn | string | No | 用户在商户侧,最近3个月累计出款成功笔数 | ||
data.riskParams.accountBalance | string | No | 用户在商户侧,用户账号当前余额 (金币/钻石) | ||
data.riskParams.expressMerchantID | string | No | 针对平台类商户下,在平台注册的卖家注册账号 | ||
data.expiryDays | string | No | 取款码有效天数,当前仅在FawryCash中有效,支持传入1~15整数(1=24Hours),其他值或不传则默认为7 | ||
data.remark | string | No | 出款附言或备注,允许英文,数字,中划线,空格,点;受渠道约束,该字段可能会进行特殊处理,如超长截断或填充默认值 | ||
data.reference | string | No | maxLength: 255 | 透传数据,在付款异步回调通知中原样返回,该字段主要用于商户携带订单的自定义数据 | |
data.notifyUrl | string | No | maxLength: 255 | 商户接收付款结果的后台回调地址,以http/https开头 | |
data.notifyEmail | string | No | maxLength: 64 | 收款方通知邮箱,目前只有个别支付方式会发送取款码邮件,比如FAWRY | |
data.notifyPhone | string | No | maxLength: 64 | 收款方通知电话 | |
data.purpose | string | No | maxLength: 32 | 出款目的,枚举值,ISUBIL:向公用事业提供商付款(i.e.水电煤账单); EPTOUR:旅游业; EPTKAG:支付旅游门票或旅行社费用; ISPAYR:支付工资; ISPAYRA:支付代理工资; ISGDDS:货物买卖; ISSCVE:购买和销售服务; ISSUPP:供应商付款; ISLOGS:物流和运输服务付款; INCEN:激励/促销/用户获取活动; GAME:游戏设备、游戏币和其他游戏物品; SAMENM:企业同名账户转账; PAYCMSN:报销/福利发放/佣金发放; SAMENMC:法人/股东/董事个人账户; AGOPEXP:代运营费用结算; ADEXP:广告费用结算;RFND:退货;SMCNTST:子商户结算;LGTEP:供应商付款-物流费用结算;GOODPAY:供应商付款-货款结算;SINVEST:股票投资;FINVEST:基金投资;TAXPAY:纳税/支付税款;LOANPAY:支付贷款; OTHER:其他; |
Example
json
{
"version": "1.4",
"keyVersion": "1",
"requestTime": "2023-03-08T10:00:00.500+08:00",
"appId": "6666c83333a24666674497c444a33333",
"merchantNo": "010213834123456",
"data": {
"outTradeNo": "orderorder1650532228089613",
"country": "ID",
"sourceAccount": "USD",
"destinationCurrency": "IDR",
"userId": "abc123456789",
"riskParams": {
"registerName": "lily",
"regTime": "2023-07-01 12:08:34",
"liveCountry": "VN",
"bindPhoneNo": "987654232432",
"bindEmail": "example@gmail.com",
"taxId": "1234567890"
},
"trade": {
"amount": "100",
"currency": "IDR"
},
"payeeInfo": {
"paymentMethodType": "WALLET",
"targetOrg": "DANA",
"payeeType ": "PERSONAL",
"accountInfo": {
"accountNo": "0812323233332",
"accountType": "",
"checkDigit": ""
},
"bankInfo": {
"bankCode": "",
"bankName": "",
"bankBranch": "",
"bankCity": "",
"corAccountNo": ""
},
"name": {
"firstName": "James",
"middleName": "Shri Williams",
"lastName": "Kanta",
"fullName": "James Shri Williams Kanta"
},
"document": {
"documentType": "",
"documentId": "",
"documentIssueDate": "",
"documentExpireDate": ""
},
"address": {
"address": "",
"city": "",
"state": "",
"zipCode": ""
},
"payeePhone": "08123456789",
"birthDate": "1996-09-01",
"email": "example@gmail.com",
"payeeNationality": "ID",
"payeeGender": "M",
"payeeBirthCountry": "ID"
},
"payerInfo": {
"businessLegalName": "",
"registrationCountry": "",
"merchantCategoryCode": "",
"payerId": ""
},
"expiryDays": "3",
"remark": "this is remark",
"reference": "this is reference",
"notifyUrl": "http://example.com/callback/",
"notifyEmail": "example@gmail.com",
"notifyPhone": "",
"purpose": "GAME"
}
}Responses
200
| Field | Type | Required | Constraints | Description | Enum |
|---|---|---|---|---|---|
code | string | Yes | 返回码,APPLY_SUCCESS代表成功。只代表接口请求成功,不代表订单状态。 | ||
msg | string | Yes | 返回描述,’Success.’ | ||
data | object | Yes | 返回数据体 | ||
data.outTradeNo | string | Yes | 商户订单号 | ||
data.tradeNo | string | Yes | PayerMax交易流水号 | ||
data.status | string | No | 交易状态 |
Response Example: 1
成功示例
json
{
"msg": "Success.",
"code": "APPLY_SUCCESS",
"data": {
"tradeNo": "20220429052556PO71330000270184",
"outTradeNo": "ORDER123456",
"status": "PENDING"
}
}Response Example: 2
异常示例
json
{
"msg": "The payment account info format is incorrect.",
"code": "PARAMS_INVALID"
}Response Example: 3
异常示例2
json
{
"msg": "The targetOrg is incorrect.",
"code": "PARAMS_INVALID"
}