快出海  > iPayLinks  >  iOS信用卡支付接入iPayLinks及开发注意点

iOS信用卡支付接入iPayLinks及开发注意点

来源:简书
作者:2狗子你变了
时间:2020-12-03
iPayLinks信用卡,它没有提供主要的SDK来调用,唯一的一个ios app 设备指纹获取示例.zip是用来生成一个必填的参数,具体可以查看《iPayLinks商户API收单接口规范v1.1虚拟商品》.pdf文档中的API下单接口的提交参数说明。

这几天在做新版本需求,因为项目是面向国际市场的,隐藏涉及到的支付问题,产品除了国内周知的支付宝、微信、银联、apple pay这几个主要支付手段之后,为了国外用户方便,新需求接入了信用卡支付。关于信用卡支付的方式,我们产品对接iPayLinks,具体你可以去搜索,官网查看。

关于iPayLinks的申请过程,不在技术讨论范围,这让你们公司产品去处理,我们只要知道申请的结果,比如开发文档,实例demo等。

我从产品那里获取到的有下面开发文件:

ia_100000612.png

这里有需要iOS客户端开发用到的就

《iPayLinks商户API收单接口规范v1.1虚拟商品》.pdf

ios app设备指纹获取示例.zip

iPayLinks联调环境测试卡.txt

iPayLinks信用卡,它没有提供主要的SDK来调用,唯一的一个ios app设备指纹获取示例.zip是用来生成一个必填的参数,具体可以查看《iPayLinks商户API收单接口规范v1.1虚拟商品》.pdf文档中的API下单接口的提交参数说明。

这里因为涉及到资金方面的安全问题,提交参数里面涉及到API key之列的需要主要参数都放在后端,客户端这里只是生产一些商品订单相关的参数,提交给后端,后端统一去调用支付接口,在返回支付信息回调给客户端。

总的来说真个支付流程没有什么太大的难道,跟着流程来就行。但是我在获取需要提交的参数时候,碰到一个坑,问题就出在设备指纹ID这个参数的获取上,让我坑了一回儿。

ia_100000613.png

这个参数需要把订单号通过它提供的ios app设备指纹获取示例.zip的Demo里面的SDK去处理请求生成。

主要的请求生成代码如下:

ia_100000614.png

THMTrustDefender是一个单例,通过configure方法来进行初始化的配置。这里的NSDictionary内容跟着demo来就行。

/*!
* Configure the shared instance of TrustDefenderMobile object with the supplied configuration dictionary.
* @code
* [THM configure:@{ THMOrgID: @"my orgid" }];
* @endcode
*
* @return The result of the configuration call.
*
* @remark This method only run once and any following calls to it has no effect.
*/-(BOOL) configure:(NSDictionary *)config;

这里的profileComplete是它的生成指纹识别id的代理回调方法。

/*!
*    Once profiling is complete, this method is called.
*
*    @param profileResults describes the profiling status
*/-(void) profileComplete: (NSDictionary *) profileResults;

到这里的话,跟着demo来就能生成需要的参数了(补充,这里还有个坑爹的地方,文档没有说清楚,这里需要的设备指纹id其实是要跟订单id一样的,所有这里返回的profileResults里面的那个session_id并不是设备指纹id,而且这个请求生成过程只是一个验证过程,只要能成功就行,回调的信息并不是需要的参数),但是问题就坑在这里的THMDelegate。因为THMTrustDefender是一个单例,然后代理又是当前的页面控制器对象。这就出现一个问题,当我支付结束退出这个界面,然后再继续生成新的一个订单,又会来这个支付选择界面,然后在生成设备指纹id的时候,回调一直没有进入,问题就是因为THMTrustDefender是一个单例,可能之前的第一次持有了这个界面控制器,导致回调不会对新进入的界面控制器有反应。

然后我想了一下,看了下THMTrustDefender,还好它有一个block回调,不用THMDelegate采用block的话,就不受单例问题影响了。

然后还有一个解决办法,只要这指定THMDelegate不是当前的界面控制器就行,你可以生产一个单例类单独处理设备指纹识别,在回调给当前界面就行。

立即登录,阅读全文
版权说明

本文内容来自于简书,本站不拥有所有权,不承担相关法律责任。文章内容系作者个人观点,不代表快出海对观点赞同或支持。如有侵权,请联系管理员(hj@kchuhai.com)删除!

相关文章
亚马逊云科技发布中国业务战略!iPayLinks成为中国企业出海的首选“技术桥梁”
亚马逊云科技发布中国业务战略!iPayLinks成为中国企业出海的首选“技术桥梁”
大量研发资源的投入与全球金融网络布局,使得iPayLinks始终在高速发展的全球电商服务领域保持前列,连续3年实现2-3倍的营收增长。
iPayLinks
2021-03-27
iPayLinks跨视界|六部委有“大动作”,给跨境人释放出哪些信号?
iPayLinks跨视界|六部委有“大动作”,给跨境人释放出哪些信号?
据商务部网站3月22日消息,经国务院批准,2021年3月18日,商务部、发展改革委、财政部、海关总署、税务总局、市场监管总局等六部门联合印发《关于扩大跨境电商零售进口试点、严格落实监管要求的通知》(商财发〔2021〕39号,以下简称《通知》)。
iPayLinks跨境支付
2021-03-26
iPayLinks跨视界|央行定调虚拟货币洗钱;2021年亚马逊日本站、美国站FBA费用和销售佣金变更
iPayLinks跨视界|央行定调虚拟货币洗钱;2021年亚马逊日本站、美国站FBA费用和销售佣金变更
据路透社报道,美国支付平台PayPal在3月10日表示,该公司将于今年6月在澳大利亚推出分期购物(BNPL)服务,进一步抢占Afterpay等公司在该领域的市场份额。到目前为止,PayPal公司的BNPL服务已经在美国和英国市场上线。PayPal表示,截至2020年第四季度末,公司在美国和英国的平台交易总额已超过7.5亿美元。
iPayLinks跨境支付
2021-03-22
iPayLinks加入亚马逊“支付服务商计划”
iPayLinks加入亚马逊“支付服务商计划”
iPayLinks已参与亚马逊支付服务商计划,并将于近期完成正式上线。使用iPayLinks进行亚马逊收款的用户将不会受到任何影响与限制。
iPayLinks
2021-02-04
iPayLinks春节假期业务安排
iPayLinks春节假期业务安排
iPayLinks发布春节假期业务安排公告。
iPayLinks
2021-02-02
扫描关注获取更多 iPayLinks 的相关信息
服务商推荐 更多 >
北京蓝色光标数字传媒科技有限公司
蓝瀚互动
专注于为出海企业提供全套价值链服务,包括海外市场洞察、品牌营销策略、创意设计、广告优化、 账户管理、全球KOL营销、粉丝页运营等一站式整合营销服务,满足出海广告主的多元化需求。
推广
百度国际MediaGo
百度国际MediaGo
百度国际是百度极具战略意义的海外业务发展部门,拥有超过10年的出海经验。旗下出海营销平台MediaGo旨在为全球广告主提供营销整合方案。成立以来,MediaGo不断进化,在磨炼一站式海外营销服务能力的同时,连接Snapchat、Pinterest、Reddit等优质海外平台,成为连接广告主与价值洼地的桥梁。
本地化变现推广
北京易掌云峰科技有限公司
环信即时通讯云
环信,国内领先的即时通讯、在线客服、智能客服机器人提供商。
云服务
iGlobe Advisory Inc.
爱个萝卜本地化 iGlobe
爱个萝卜总部位于加拿大温哥华,为游戏出海提供所有主要语言的母语级本地化翻译,并由专业项目经理为您保驾护航。并可向全球游戏伙伴提供全方位服务,包括目标市场开拓策略,以及各国本地化运营项目监督。
本地化
厦门比朋科技股份有限公司
比朋科技股份
云服务,软件服务,定制开发
云服务外包源码
福建博士通信息有限责任公司
博士通云通讯
福建博士通信息有限责任公司专注于融合短彩信运营、互联网精准投放、语音服务、流量营销、物联网卡等多种专业的通讯能力,为金融、互联网、汽车、物流、教育、游戏、公共服务等多个领域机构提供专业的融合通讯服务和系统平台定制化开发。公司成立于1999年,总部坐落于福州,在北京、上海、深圳、成都、山东等地建立了分公司和办事处。
云服务
扫码登录
打开扫一扫, 关注公众号后即可登录/注册
加载中
二维码已失效 请重试
刷新
账号登录/注册
小程序
公众号
商务合作
投稿采访
出海管家