我要开发
商户应阅读开发文档和API文档,商户完成商户端系统的开发。
了解开发配置信息
在开发之前,你需要知道一些ApplePay线上支付的开发配置信息,这些开发配置信息是商户的身份凭证,你需要妥善保管好这些凭证,并且尽可能通过配置进行管理,必便后续调整。
以下是对开发配置信息的说明:
● 分行号、商户号
标识商户的唯一ID,由招商银行统一分配。
● 商户支付密钥
商户的身份凭证,用于交易报文的签名、验签和加密等,商户在“网上商户结账处理系统”自行管理。
● 招行公钥
一般情况下,银行主动发送的通知报文使用招行私钥签名。商户接受到请求报文后需要使用招行公钥验签。
招行公钥会定期更换,但更换频率比较低。商户可通过API每天获取一次并存在本地,每次验签时使用即可,建议每天凌晨2:15发起查询招行公钥请求更新公钥。
● CSR证书申请文件
商户在招行商户管理系统“Apple Pay商户CSR证书申请文件”模块,点击生成商户公私钥对,下载保存CSR证书申请文件;
商户以开发者账户登录苹果开发者网站,上传CSR证书申请文件;苹果CA系统实时给商户签发商户公钥证书。
(此商户公钥证书苹果CA签发后,商户可以不用下载,不参与支付交易封装处理);
了解功能接口
如下接口列表中,实现要求为“必须”的接口,要求商户必须完成开发并测试通过。
接口名称 | 说明 | 实现要求 (可选/必须) | 备注 |
查询招行公钥 | 招行公钥会定期更换,更换频率较低。商户可以通过API每天取一次招行公钥后存在本地,每次验签时使用即可; | 必须 | 建议每天凌晨2:15发起查询招行公钥请求更新公钥 |
客户设备能否进行ApplePay支付 | 支付前,判断客户移动设备能否进行ApplePay支付 | 必须 | 商户IOS APP端实现 |
客户设备能否加载一闪通 | 判断客户设备能否加载一闪通(ApplePay) | 必须 | 商户IOS APP端实现 |
跳转招商银行App并加载一闪通 | 客户设备能加载ApplePay,但是没有加载。 跳转招商银行App并加载一闪通ApplePay的接口。 | 可选 | 商户IOS APP端实现 |
ApplePay线上支付接口 | 客户支付成功后,银行系统会向商户指定的通知回调地址,发送支付结果异步通知。 | 必须 | 商户IOS APP端实现 |
成功支付结果通知 | 客户支付成功后,银行系统会向商户指定的通知地址发送支付结果通知。 | 必须 | 商户Server端实现 |
查询单笔订单 | 根据支付订单的状态等信息。商户未收到支付结果通知的情况下,如需确认订单状态,可以通过单笔订单查询接口查询订单状态。 | 必须 | 商户Server端实现 |
查询批量订单 | 按商户订单日期查询批量订单明细。注意:查询结果不包含退款信息。 | 可选 | 商户Server端实现 |
查询入账明细 | 查询商户入账明细,商户系统应以招行入账明细为准进行对账,对账不平的交易进行退款或请款协商。 商户也可登录“网上商户结账处理系统”查询入账明细。 | 可选 | 商户Server端实现 |
退款 | 该接口可选对接。商户也可登录“网上商户结账处理系统”执行退款。 | 可选 | 商户Server端实现 |
查询退款 | 该接口可选对接。商户也可登录“网上商户结账处理系统”查询退款信息。 | 可选 | 商户Server端实现 |
AP支付功能对接实现
1)商户iOS APP,需要集成和配置招行提供的AP支付安全控件SDK包;
2)按照银联云闪付业务规范,实现银联规范标准要求的:Apple Pay支付按钮,类似如下:
3)调用:用户是否为苹果终端设备,且是否加载了ApplePay的判断接口。
A)如是,则商户支付页面显示Apple Pay支付按钮;
B)如否,则商户支付页面灰显或隐藏Apple Pay支付按钮。如果用户终端设备支持ApplePay加载,商户可以尝试引导用户去招行手机银行APP去ApplePay加载银行卡。
4)对接实现Apple Pay支付接口
调用招行支付安全控件SDK的AP支付接口,上送订单信息、商户MerchantID、收单商户号等,提交AP线上支付请求给到招行后台处理。
5)商户需开发实现“支付结果异步通知”接口,异步接收和解析处理支付结果;
6)商户收到支付结果后,按照规范实现和展示支付成功结果页面。
或者,类似银联建议的如下示例页面: