Skip to main content

技术对接说明

note

本文的主要目标读者是需要对接的合作方的技术实施人员。

文档/样例资源#

  • 样例Demo下载 JAVA、PHP
  • 支付方式说明
  • 异常代码

服务环境#

正式环境

接入流程#

  1. 申请开通商户,获取测试账户
  2. 配置商户账户
  3. 技术接入
    • 沙箱环境联调
  4. 测试完成,申请正式账户
  5. 获取正式账户后,客户需要重新配置商户密钥(测试环境和正式环境的秘钥是不同的)

接口文档概要#

接口数据交互方式#

  1. 提交方式: 采用 POST 方法提交,Content-Type "application/json; charset=utf-8"
  2. 数据格式: 提交和返回数据都为 JSON 格式
  3. 字符编码: 统一采用 UTF-8 字符编码
  4. 金额格式: 单位为印尼盾(卢比) ,正整数
  5. 签名算法: RSA 非对称加密 签名要求:请求和接收数据均需要校验签名,详细方法请参考报文加密规则

业务名词定义#

支付方式#

代码说明
VCCredit Card (Visa / Master)
BCABCA 银行还款码
M1Mandiri 银行还款码
BTPermata银行还款码
B1CIMB 银行还款码
I1BNI 银行还款码
VAMaybank 银行还款码
BRIBRI 银行还款码
I2Danamon 银行还款码
FTAlfamart 便利店
OVOVO 电子钱包
DANADANA 电子钱包
QRISQRIS 扫码

货币单位#

单位统一为印尼盾(卢比),保留整数部分, 比如 30000。由于印尼盾单位比较小,交易时只支持整数。

交易状态说明#

代码描述
INIT_ORDER创建订单成功
NO_PAY 或 OPEN_PAY_URL订单待支付/待处理
SUCCESS订单支付成功
PAY_CANCEL订单已取消,如果支付成功,则表示已经退款
tip

只有订单状态为 SUCCESS 时需要修改订单状态成功,其他状态无需修改订单状态, 目前平台暂不支持退款操作,如需退款给客户,建议商户线下处理。

注意事项#

支付接口参数说明#

  1. 由于印尼市场很多地方不支持中文,所以接口请求参数请避免出现中文以及一些特殊支付,比如表情符号之类。
  2. 支付接口中的 name 字段只是在用户支付时显示虚拟账号名称使用,不做校验,一般 要求由字母、数字以及空格组成,不超过 30 位。
  3. 支付接口中的 email phone 字段只为上游需要,暂时未发现其他作用,并不会给客 户发短信、发邮件的;虽然不会验证,但是需要符合格式规范,如手机号必须为纯 数字,邮箱格式必须为 [email protected]
  4. 当使用 OVO 电子钱包支付时,支付接口中的 phone 字段必须填写客户注册 OVO 电 子钱包的手机号,一般形如:082113086611 OVO 是推送消息的模式, 下单成功后 会往客户手机上的 OVO 电子钱包 app 推送一个付款消息,只要客户点击确认了即 可完成付款,OVO 要求客户必须在 30s 内完成付款,过期失效。
  5. 支付接口的 expiryPeriod(过期时间)单位是分钟,字段值范围建议保持在 15- 97200 范围内,如果该值不送默认为 4320,也就是3天内有效。

支付注意事项#

  1. 收款方式(付款码所属银行)支持跨行还款。具体需要支持的收款方式请根据自身需要,在开通生产帐号时联系商务开通。
  2. 本行/跨行还款均为实时到账
  3. 支付收款(请求付款码)只有当用户付款成功之后才会进行异步通知(回调)。

代付(转账)#

参数说明#

  1. 代付接口中的收款账户的银行(bankCode)、帐号(number)和帐号名称(name)必须相互匹配,否则可能导致转账失败,其中账号名(name)可忽略大小写。建议客户绑卡时调用银行账号校验接口,具体见接口 // TODO:
  2. 代付接口 feeType 字段解释:
    1. 0 指代付手续费从请求的代付交易金额中扣除,比如 请求代付金额1000,我方平台需要收取5元手续费,那么代付到账金额为995;
    2. 1 从 商户余额中扣除,即请求代付金额1000,实际到账1000,商户余额减去1005。

代付注意事项#

  1. 代付请求同步返回根据 platRespCode 来判断是否受理成功,SUCCESS-受理成功; UNKNOWN-系统异常,需要查询;FAIL-受理失败。
  2. 代付查询返回根据 status 判断订单状态:2-表示代付成功;3 和 4 -表示代付失败; 其他表示订单处理中,需要稍后继续查询。
tip

代付请求超时以及返回UNKNOWN系统异常时不能认为订单失败,不要重复发起,此时订单处理结果应该以异步通知结果或代付查询结果为准

常见问题说明#

如何查看商户信息#

回调通知是否重试#

平台回调参数以 form 表单形式提交,收到我方通知后请返回字符串 SUCCESS ,否则我方会每隔一段时间通知一次(一共通知 6 次)。通知的间隔时间依次为 1S、30S、60s、90s、1h、2h

tip

注意:由于网络原因,订单异步通知有可能不会完全按照以上间隔时间通知,并且不排 除重复通知的情况,因此要求商户支持重复通知(即已更改状态的订单不再进行操作, 直接返回字符串 SUCCESS)。