18910140161

如何快速对接Stripe国际支付系统

顺晟科技

2021-06-16 10:31:36

339

条纹国际支付简介

Stripe由20多岁的帕特里克科利森和约翰科利森兄弟创建,为公司提供在线支付解决方案。Stripe向服务公司收取每笔交易2.9%加30美分的费用。

很多中国卖家想通过建网站借条纹来收钱。Stripe现在被称为“移动时代的贝宝”。目前,我们为知名公司提供服务,如facebook、Twitter、Shopify、Kickstarter、Target、Wish、Digitalocean、Pinterest、Docker和Sap。此外,Stripe还拥有大量的个人中小客户和商户。全球超过10万家企业正在使用Stripe的服务,该平台完成的年交易量已超过10亿美元。条纹近年来发展迅速,在国外市场的份额相当高。Stripe提供了一个简单的收费方式一目了然,设计简单,操作方便,可以站内支付的支付方式,具备了打造快速有效的移动商务体验所需的一切。

条纹游戏攻略

Stripe专注于解决网上商户支付问题。Stripe的产品涵盖了网上商户支付的方方面面。目前分为三大产品(支付、订阅、连接)和三个小产品(Sigma、Atlas、Radar)

支付

支付是Stripe最重要的基础产品。支付提供API和工具包,让开发者可以开发自己的支付流程。支付接受信用卡和常见的网上支付方式(ACH借记、比特币、支付宝、微信支付)。通过向客户端提供符合PCI-DSS规范的令牌,敏感信息将不会通过客户端的服务器(免除责任)。Stripe致力于简化开发者的后顾之忧,集成Payments最早只需要一行javascript代码(包括UI)。

签署

订阅解决的问题是如何有效地处理重复计费。Stripe在定期账单处理中发现了许多痛点,并给出了一个集成的解决方案。订阅可以在周期内自动计算取消后的退款金额,支持试用期和使用计划。对于企业用户,可以支持按座定价方案(基本价用户费*用户量)。定期支付的另一个痛点是信用卡到期。通过与信用卡网络合作,Subscription可以在旧卡到期后自动更新新卡信息,从而避免因信用卡到期而导致的支付失败。

连接

Connect服务的目标群体是市场或平台(类似于淘宝、ebay、event部落)。这类平台的支付要求是链接买卖双方,包括一对一(如优步)、一对多(如淘宝上不同商家的一个订单)、多对多(如Google Play向所有用户提供的HBO、ShowTime等附加服务)、资金暂存(如演唱会后支付,类似支付宝)。在美国,平台支付会涉及税法。当部分用户的收款金额超过一定阈值时,Connect会通知平台进行相应的法律程序。

希腊字母表中第十八个字母

西格玛是一种基于用户在Stripe上的所有现有数据的数据分析产品。通过Sigma的用户(企业)不需要构建复杂的管道来分析自己的支付数据,而是通过Stripe自带的web UI和SQL语句直接进行复杂的数据分析,快速准确地做出业务决策。

阿特拉斯

为了帮助更多人快速成立公司,Atlas一次性负责成立公司的所有步骤。注册阿特拉斯并提交一次性费用后,Stripe将在一周内为您在特拉华州注册成立公司,在硅谷银行开立商业银行账户,并提供免费法律服务和额外的法律和税务服务。通过之前收购的独立黑客,阿特拉斯还提供了一个创业社区,帮助初创企业用户快速入门

雷达

自主开发的风控发动机系统帮助企业规避风险。

综合条纹支付

在整合Stripe的支付之前,我们需要了解一下Stripe的管理平台。

注册管理平台,测试环境注册地址

成功后,将在管理平台上为我们生成一个密钥

申请的时候带上这个密匙,钱会转到你注册的管理平台账户

通过在管理平台上绑定卡片,可以进行提现等操作

注册成功后,可以看到如下所示的管理页面,可以看到我们的密匙,资金的流转等等。

我们选择了最简单的集成方式,就是集成Stripe的Chekcout页面,只需要几行代码就可以集成Stripe的支付能力。我使用时序图来显示大致的流程,如下所示:

结帐页面是Stripe提供的页面,所以我们不需要更改它。页面如下所示。

不用说,直接进入代码,我使用Java进行集成,生成Session的代码如下

1 @ GetMapping('/pay ')2 @ response body 3 public MapString,String pay(HttpServletrequest Httprequest,HttpServletresponse Httpreresponse){ 4 MapString,String result map=new HashMap();5尝试{ 6 Stripe.apiKey=privateKey7 MapString,Object params=new HashMapString,Object();8 ArrayList string paymentMethodTypes=new ArrayList();9 paymentmethodtypes . add(' card ');10 params . put(' payment _ method _ types ',paymentmethod types);11 ArrayListHashMapString,Object lineItems=new ArrayList();12 HashMapString,Object line item=new hashmap string,Object();13 lineItem.put('name ','胡鹏飞试验品');14 lineItem.put('description ','这是一个测试单描述');15 lineItem.put('amount ',500);//付款金额为16 lineItem.put('币种','美元');//支付货币17 lineItem.put('quantity ',1);18 line items . add(line item);19 params.put('line_items ',line items);20 //TODO必须使用https:21 string uuid=uuid . randomuuid()返回的回调地址。tostring();22 params . put(' client _ reference _ id ',uuid);//业务系统标识为订单号23 log.info('uuid:{} ',uuid);24 params.put('success_url ',urlutils . GetBaseURL(Httprequest)'/paySuccess ');//支付成功跳转页面25params.put ('cancel _ URL ',URL utils . getbase URL(http request)'/payerror ');//支付失败跳转页面26 session session=session . create(params);27 String session id=session . Getid();28 log.info('sessionId :{} ',session . GetiD());29 resultMap.put('sessionId ',session id);30 } catch(Stripeexception e){ 31 e . printstacktrace();32 }33返回结果图;34}复制代码

其中我没有让前端传输商家信息,而是在后台死写,只是为了方便调用。可以看到生成的sessionId被传输到前端,然后前端进行如下调用。您可以直接跳转到CheCk页面进行支付。

1 strip . redirecttocheckout({ 2 session id : data . session id 3 })。然后(function(result){ 4 console . log(result);5});复制代码

到目前为止,我们已经将Stripe的支付功能与这几行代码集成在一起了。其实Stripe支持很多功能,就像我们上面说的,它也支持订阅支付。当然我们可以不用它的结账页面,但是我们的定制页面,但是有点麻烦,这里就不介绍了。如果有具体需求,可以查看其文档了解详情。相关文件如下。

github代码中也有退款、回拨等相关接口信息,这里就不一一介绍了。可以在GitHub上拉下代码来看看。

相关文章
我们已经准备好了,你呢?
2024我们与您携手共赢,为您的企业形象保驾护航