Processing Payments
处理支付包括这几步:
- 1.发送支付信息给服务器,与需要的其它信息一起处理订单
- 2.验证支付数据的哈希表和签名
- 3.解密加密的支付数据
- 4.提交支付数据给支付处理网络
- 5.提交订单给订单追踪系统
两种选择处理支付:有一个支付平台的优势去处理支付,或者自己实施支付进程。一个支付处理平台一般处理大部分如上步骤。
读取、验证和处理支付信息需要对密码学的几种领域有所理解,例如,计算一个SHA-1 哈希,读取和验证一个PKCS #7类型的签名,和执行elliptic curve Diffie-Hellman key椭圆曲线密钥交换。如果没有密码学的背景,考虑使用一个支付平台来处理这些操作。更多支持Apple Pay的支付平台的信息,可查看developer.apple.com/apple-pay/。
用来处理支付的信息有一个嵌套的数据组织,正如展示在Figure 5-1中支付密钥是PKPaymentToken
类的实例。它的paymentData
属性的值是一个JSON字典,它有 个头部header包含用于确认和加密支付数据的信息。加密数据包含像数量、持卡人姓名和其它用于特定的支付处理协议的的信息。
Figure 5-1Payment data structure
关于支付数据结构格式的详情,可查看Payment Token Format Reference。