美文网首页IOSiOS Developer
iOS BrainTree Pay相关

iOS BrainTree Pay相关

作者: 进击的秃瓢 | 来源:发表于2016-11-30 13:58 被阅读1006次

       BrainTree就不多做介绍,直接主题

    前提 

    从自己服务器获取 token , 获取后转化为BTAPIClient类型的key 后进行相关操作

    1.ApplePay

         1,先按照正常的ApplePay来获取相关的东西 直至- (void)paymentAuthorizationViewController:(PKPaymentAuthorizationViewController *)controller

    didAuthorizePayment:(PKPayment *)payment

    completion:(void (^)(PKPaymentAuthorizationStatus status))completion;方法后

          2这里需要将payment发送到BrainTree的服务器获取nonce来进行扣款相关操作 发送到 BrainTree 的相关方法为:- (void)tokenizeApplePayPayment:(PKPayment *)payment completion:(void (^)(BTApplePayCardNonce *, NSError *))completionBlock;

          3.然后将BrainTree的服务器获取的nonce,以及amount 等相关数据发送至己方服务器进行扣款, 这里需要与服务器方协商好参数以及返回类型.

          4.证书相关操作: 需要在 braintree 下载加密文件,关联自己的 ApplePay 证书(ApplePay 证书的创建以及关联自行百度)下载位置如下图:

    如此配置就可以说是成功了,(图三中"苹果商户证书"处 有多个的时候我暂时还不是很清楚他的选择方式,因为暂时我只用到了一个,有知道的朋友可以告知一下)             

    ApplePay 到这里可以说是已经配置完成,接下来需要注意的坑是支持地区以及银行卡种类的问题,以及支付金额   有问题的可以私信或者留言

    2.信用卡付款

             这里我直接用的Drop-in UI (将里面的 paypalSDK 删了 就只剩信用卡支付选项了 TUT)

             1.UI 以及调起方法如下图

     共四个位置可以自己传值,如图所示, 

        2.BTDropInViewController的 delegate 方法- (void)dropInViewController:(BTDropInViewController *)viewController didSucceedWithTokenization:(BTPaymentMethodNonce *)paymentMethodNonce;  

        3.将上个 delegate 方法返回的paymentMethodNonce.nonce   执行同 ApplePay 中第三部操作.

    总结

    (BrainTree 付款的主要思想为: 1.从服务器获取token, 所有相关操作都会根据从服务器获取的token来执行.    2.所有的支付总的来说都是需要你获取到payment_method_nonce才能进行扣款. 3.获取到payment_method_nonce后发送给服务器就好了 )

    需要注意的币种,地区,交易金额可能会导致生产情况下交易失败

    相关文章

      网友评论

        本文标题:iOS BrainTree Pay相关

        本文链接:https://www.haomeiwen.com/subject/uzttmttx.html