范文健康探索娱乐情感热点
投稿投诉
热点动态
科技财经
情感日志
励志美文
娱乐时尚
游戏搞笑
探索旅游
历史星座
健康养生
美丽育儿
范文作文
教案论文
国学影视

Python3Django2集成PayPal跨境支付接口以及订单查询和退款业务

  如果您所在的公司涉及外贸或者跨境支付业务,那一定听说过大名鼎鼎的PayPal,总的来说,PayPal在跨国贸易里的优势还是比较大的,作为一种外贸支付方式,目前在国际贸易支付服务中倍受亿万用户追捧,是全球商户和消费者最受欢迎的电子支付方式之一,在跨境交易中有着超过90%的卖家和超过85%的买家认可并正在使用PayPal电子支付业务。当然,PayPal国际业务体量如此惊人,肯定不是毫无原因的。
  PayPal支付的优势就是其业务网络遍布全球。目前PayPal的庞大网络覆盖了全球200多个国家,可提供20多种语言服务,并接受100多种货币付款和56种货币提现。同时,还允许在账户中持有25种货币余额。换句话说,只要付款人拥有一个PayPal账户,他就拥有了在200多个国家进行电子支付购物,并在需要服务的时候享受到母语支持的各种便捷服务。
  之前的几篇文章分别介绍了国内的支付宝支付:Python3.7.2+Django2.0.4 美多商城集成最新版支付宝支付接口(2019.04)和微信支付:mpvue1.0+python3.7+Django2.0.4实现微信小程序的支付功能
  本次我们首次尝试用Django2来集成跨境三方支付接口PayPal
  首先注册官网 https://www.paypal.com 以及开发者平台:https://developer.paypal.com/developer/accounts/
  注册成功后,在沙盒的账号控制页面:https://developer.paypal.com/developer/accounts/
  会默认创建两个账号,一个是商户的,另外一个是个人的
  我们演示的流程就是以个人账号登录三方网站对商户账号进行支付业务,当然了,如果你不想使用默认账号,也可以点击右边的Create account的蓝色按钮单独创建。
  随后进入应用管理页面:https://developer.paypal.com/developer/applications/
  这里已经默认创建好了一个支付应用,记录下它的client_id和client_secret,一会要用到
  随后,我们可以回到账号管理页面修改一下个人账号的支付余额
  额度设置最高
  如果愿意,也可以修改一下登录密码,因为一会我们会用这个账号进行登录操作,注意这些登录和支付操作全都会在沙盒环境中完成,完全不会影响生产环境的使用
  ok,做完了这些,前置任务就搞定了,现在运行命令安装paypal在python端的sdk pip3 install paypalrestsdk
  现在可以在django中新建一个支付视图views.py import paypalrestsdk    def payment(request):      paypalrestsdk.configure({   "mode": "sandbox", # sandbox代表沙盒   "client_id": "你的client_id,   "client_secret": "你的client_secret" })      payment = paypalrestsdk.Payment({         "intent": "sale",         "payer": {             "payment_method": "paypal"},         "redirect_urls": {             "return_url": "http://localhost:8000/palpay/pay/",#支付成功跳转页面             "cancel_url": "http://localhost:3000/paypal/cancel/"},#取消支付页面         "transactions": [{             "amount": {                 "total": "5.00",                 "currency": "USD"},             "description": "这是一个订单测试"}]})      if payment.create():         print("Payment created successfully")         for link in payment.links:             if link.rel == "approval_url":                 approval_url = str(link.href)                 print("Redirect for approval: %s" % (approval_url))                 return redirect(approval_url)     else:         print(payment.error)         return HttpResponse("支付失败")
  这里解释一下重点参数,return_url是支付成功后回调的页面,paypal会将一个支付者id回传,然后服务端需要验证支付才能真的完成支付,total是付款金额,精确到分,currency是币种,支持多钟类型的货币。
  当Django的服务端创建好支付订单后,重定向到paypal的沙盒环境,这时候一定要使用沙盒的个人账号进行登录和支付。
  支付完成后,会跳回刚刚传过去的回调页面:http://localhost:8000/palpay/pay/?paymentId=PAYID-L3SYORA3C031930S1733650J&token=EC-9TG269735K620131N&PayerID=ETYYRCDN8C3XJ
  这里paypal会传过来三个参数,支付id,token和支付者id
  此时,在回调方法里,我们需要通过支付者id进行确认验证支付 def payment_execute(request):      paymentid = request.Get.get("paymentId") #订单id     payerid = request.Get.get("PayerID")  #支付者id      payment = paypalrestsdk.Payment.find(paymentid)       if payment.execute({"payer_id": payerid}):         print("Payment execute successfully")         return HttpResponse("支付成功")     else:         print(payment.error) # Error Hash         return HttpResponse("支付失败")
  最后,回到管理页面,发现已经少了5美元,说明支付流程已经走完。
  这次交易就愉快的结束了,当然了,某些时候我们需要对交易流水进行一些核对,也可以通过接口查看交易明细 #明细  payment = paypalrestsdk.Payment.find("订单号") print(payment)
  可以看到,通过传入订单id,我们该笔交易的状态,流水id,以及创建日期。
  如果用户想要退款的话,可以利用交易明细中的流水号进行退款业务。 #退款 from paypalrestsdk import Sale  sale = Sale.find("流水号")  # Make Refund API call # Set amount only if the refund is partial refund = sale.refund({     "amount": {         "total": "5.00",         "currency": "USD"}})  # Check refund status if refund.success():     print("Refund[%s] Success" % (refund.id)) else:     print("Unable to Refund")     print(refund.error)
  结语:
  总体而言,没有什么特别的难度,整个支付流程相对支付宝来说,更加的紧凑,但是做支付安全是第一要务,就个人体验(仅是个人体验)层面来说,支付宝在安全方面做的还是要比Paypal略强一些,起码在信用卡欺诈和盗刷方面风控做的更好,在风险保障和赔付方面都有提供保险,当然由于金融环境的差异较大,并不是说Paypal的风控做的不好,只是机制不同,在国外,如果持卡人的信用卡被盗刷,一般发卡组织会让商家去承担责任,而国内只能在交易环节设置更多的验证,本质上说是要持卡人承担责任。这也是为什么支付宝的风控看起来更好的原因。
  最后就是关于费率问题,Paypal官方给出的费率是每笔交易收取3.9%+$0.3(根据你的交易流水,比例可以优惠,具体下限看接入者的月营业额度),不过这可是美刀,不得不说这个费率是相当的高,但是国内做境外支付的电商,一般还是要接入Paypal作为支付方式。支付宝的费率基本上在1.2%左右,具体的费率也看交易流水,有实力的下限可以做到基本没有,单纯的看费率似乎支付宝更有优势,但是别忘记了,这样对比是不科学的,因为凡是接入Paypal的都是看中覆盖外币业务的地区,费率则是投资人该考虑的问题了。

推荐一款好用的数据一致性校验工具一为什么需要做数据一致性校验在数据的服务生命周期过程中,经常会因为数据迁移主从复制数据集成等原因产生数据流动及复制。在数据复制过程中,由于人为误操作软件bug或硬件故障等原因,无法京东百亿补贴商品现已上架IT之家3月1日消息,据网友反馈,京东部分商品现已有百亿补贴的标签,但京东App内暂未出现百亿补贴的入口。如上图所示,戴尔G15游戏本现已成为百亿补贴商品,12代i7RTX3060今年中国女足像当年男足一样,进一球都难吗?世界杯对手全部出炉今年对于中国女足姑娘来说任务很重,她们有三大任务,如七月有世界杯要踢,还有亚运会,更有奥运会预选赛要踢,任何一种比赛都不能掉链子,她们肯定最注重世界杯,不管是男足,还是女足,世界杯回应本泽马?梅西晒出世界杯夺冠照,大罗称没有人比梅西更配得奖北京时间3月1日晚,梅西突然在社交网站个人账号上晒出了一张举起2022年世界杯奖杯的照片。很多球迷认为这是阿根廷巨星对本泽马的回应。赢得世界杯决定了一切,一位球迷评论道。还有一位球利拉德谈一人一城威少四年四队还得打替补外面的世界没那么好直播吧3月1日讯利拉德近日接受ESPN记者BaxterHolmes采访时,谈到了最近几年的球星换队风潮。你看看威斯布鲁克,他离开了雷霆来到火箭。然后哈登也离开,然后威少被交易至奇才弗里克3月的比赛将征召新人世界杯出局因对手效率高于平均水准直播吧2月28日讯在周二于科隆参加2024年欧洲杯筹办的相关活动时,德国队主帅弗里克透露他准备在下月的国家队比赛时征召新人,而球队现阶段的工作重点是防守。弗里克表示我在和教练团队交开拔!2023世界第1次载人发射!美俄航天员同乘龙飞船共赴空间站北京时间2023年3月2日1334(美东时间3月2日0034),搭载Crew6龙载人飞船的猎鹰九号V1。2Block5运载火箭,从佛罗里达州肯尼迪航天中心(KSC)LC39A工位发基于幻塔手游,完美世界游戏发布移动光线追踪技术IT之家3月2日消息,MWC2023于2月27日至3月2日在西班牙巴塞罗那举行。在MWC2023的一加展区,完美世界游戏与一加正式发布了基于幻塔手游的移动光线追踪技术,并展示了幻塔为啥晚上睡觉时总是口干口苦?并非缺水那么简单,或是这6种病夜晚睡觉过程中,人们没有吃东西,也没有补充水分,所以在早上刚刚起床的时候,很多人都会出现口干口苦情况。每天早上起床之后,都会出现这种情况,是不是身体出现了问题呢?当然还可能就是因为89岁院士,研究肝病50年,建议6种食物升转氨酶太快,尽量别吃俗话说百病先治肝,肝脏是人体最大的解毒器官,我们吃进去的食物有很大一部分,都需经过肝脏代谢,肝脏犹如一个化工厂,掌握着人体内大部分新陈代谢物质转化,如果肝脏不正常,就会影响身体其他张文宏预判第二波感染高峰时间确定,2种高蛋白食物要多吃随着第一波疫情感染高峰的过去,大多数的人开始放松警惕,开始吃喝聚集,XBB1。5毒株的出现再次让人们开始紧张。毕竟当前疫情还在全球流行,并未结束,并且已经变异最近网上一直在热议二次
狂轰622223!太阳三叉戟予取予求,保罗安心养伤,老詹看清现实北京时间3月14日,NBA常规赛继续进行,菲尼克斯太阳队在主场迎战洛杉矶湖人队。太阳队是联盟霸主,即便保罗伤停,布克佩恩艾顿等人也撑住了,他们早早拿到了季后赛门票湖人队正处于强弩之本赛季上天入地的六大球星,恩比德为所欲为,莫兰特大杀四方NBA作为顶级篮球殿堂,从来不缺少传奇。在小球盛行的时代,超级球星更是比比皆是,但,在漫长的系列赛之中,大多数球星都只是昙花一现,无法延续巅峰期的状态,能够稳扎稳打,持续炸裂表现的王宝强新片八角笼中开机!5年后再当导演,能否雪耻上部3。7分头号电影院懂小姐(topcinema原创,严禁转载)好久不见的王宝强,终于拍新片了。这次,他不仅是男主角,还又当起了导演。由王宝强执导主演的电影八角笼中在成都举行了开机仪式,影片取三部剧同天定档,迪丽热巴杨紫狭路相逢,这部有可能是黑马吗?3月14日周一白色情人节,三部剧作同时官宣定档。杨紫肖战主演的余生,请多指教,重新定档3月15日。迪丽热巴任嘉伦主演的仙侠古偶与君初相识,官宣定档3月17日。此外,徐正溪周洁琼主演英超2双杀热刺重回前四北京时间3月13日凌晨1点30分,202122赛季英超联赛第29轮上演一场争四关键战,曼联坐镇主场对阵热刺。比赛中,曼联巨星C罗上演帽子戏法,加冕足球历史第一射手。特莱斯送点由凯恩阿里巴巴回到原点3月11日美股收盘,阿里巴巴股价停留在了86。71美元,下跌6。68。遥想七年前纽交所的一片橙色,张开双臂迎接马云与阿里巴巴,股民热情飞扬,开盘询价时长破了纽交所十年的交易记录,首爱奇艺为什么走到了今天?图片来源视觉中国文市界,作者华宇齐敏倩,编辑刘肖迎网传几个业务骨干离职的消息,再次将爱奇艺推上了风口浪尖。自去年开始,爱奇艺就已经因裁员消息,多次登上热搜。这背后,一切都有迹可循。翁美玲26岁为爱殉情,法医曝光死亡细节,汤镇业真的无辜吗?说起翁美玲,你可能不知道他是谁,但是看过她的照片,你就会觉得很熟悉。没错,她就是83港版射雕英雄传中黄蓉的饰演者,在这部剧中,他将黄蓉的娇俏可人,古灵精怪演绎得淋漓尽致,同时翁美玲2022即将上映电视剧,前三名都几百万人预约了,你最期待哪一部?这些都是2022即将播出的电视剧,图片是在优酷,腾讯,爱奇艺,三个影视剧软件上的截图!下面按预约看剧的人数来看看,大家最期待的电视剧有哪些!我们正年轻预约人数108万蓝焰突击预约人华为的内卷?600km续航3秒破百,阿维塔11申报图曝光在去年5月,长安汽车成立了旗下控股子公司阿维塔科技有限公司,并在11月发布了旗下汽车品牌阿维塔,同时对首款车型阿维塔11进行首发,这是一家由长安汽车华为宁德时代蔚来等多家公司共同持比亚迪海豹实车正式露面,续航达700km将于4月上市,或2228万起在近日3月14日,谍照图在网络上传播已久的比亚迪海豹实车终于在工信部申报目录正式露面。根据比亚迪申报的信息来看,新车是比亚迪海洋网海洋系列的全新纯电动轿跑车型。此前,比亚迪官方透露