统一托管
开发前准备
I. 开发须知
两对公私钥作用(API方式)
-
第一对公私钥: 开发者在开通资管账号时,需提前生成一对公私钥,其中公钥(rsa_third_pub)提供给平台B,私钥自己保管,私钥为第三方应用调用钱包服务的唯一凭证,请勿透露给任何人。第三方在请求钱包服务时,通过私钥来加密请求参数,平台接受到请求时,通过提供的公钥(rsa_third_pub)来解密请求数据。
-
第二对公私钥: 开发者开通资管账号后,平台会提供钱包公钥(rsa_wallet_pub)给开发者,第三方应用在接受到钱包的响应数据或异步通知时,需要通过公钥来进行解密。
为什么需要进行提现二次确认(API方式)
钱包服务接收到第三方应用请求时,为了确认该请求为第三方应用合法请求,会调用第三方提供的接口来确认。该过程在一定程度上也能避免第三方私钥丢失所造成的影响,也为钱包服务的安全性提供了一套有效屏障。
生产环境域名 (https://openapi.chainup.com/) | 不支持测试环境 |
---|---|
app_id: | 请创建钱包后获取 |
rsa_wallet_pub: | Custody系统公钥;请创建钱包后从Custody系统获取 |
rsa_third_prv: | 客户私钥;自主生成、保存 |
rsa_third_pub: | 客户公钥;自主生成;请创建钱包后配置到Custody系统 |
密码长度:2048
密钥格式:PKCS#8
openssl genrsa -out rsa_private_key.pem 2048
openssl rsa -in rsa_private_key.pem -pubout -out rsa_public_key_2048.pem
openssl pkcs8 -topk8 -inform PEM -in rsa_private_key.pem -outform pem -nocrypt -out private_pkcs8.pem
II. 资管账号准备
开发者准备如下信息:
-
生成一对公私钥,将公钥提供给平台;
-
第三方应用服务器IP;
-
充值提现回调通知地址;
-
提现二次确认地址;
-
是否开启自动归集功能,开启后,系统会自动将用户充值资金划转到商户归集账户。
联系平台相关人员,提供上述五类信息。平台为您准备资管账号,提供到您这边包括以下信息:
-
商户的唯一标识:app_id;
-
钱包公钥:rsa_wallet_pub。
III. 接口交互过程
文档为钱包服务对第三方应用提供的接口。
以下文档中的接口提供方称为 钱包服务,接口调用方称为 第三方应用。第三方应用在请求钱包服务时,通过RSA算法对请求参数进行加密,接受到钱包服务的响应数据后需要进行解密
IV. 接口规则
传输方式: | https(测试环境暂时使用 http) |
---|---|
签名字段: | 除了 sign 字段,其他所有必填项都需要参与签名 |
响应状态码为: | 0 表示处理成功 ,非 0 表示请求错误或系统异常 |
请求地址: | 域名+接口地址 |
加密算法: | RSA, 详见 API 文档 加解密方式 |