我正在编写一个网络应用程序,人们可以在其中下载独有的PDF文件。
我想使用PayPal允许买家在不离开我的页面的情况下输入付款(尽可能全面),然后发送到我的PHP脚本,该脚本将接收ID变量以便提供他们独特的PDF。
为此,我试图弄清楚哪种PayPal技术是合适的。
我得到的印象(可能不正确)" PayPal Express Checkout"支持付款而无需离开我的页面,但我不知道允许通过此方式传递唯一ID变量的辅助技术,以重定向到PDF生成器脚本。我还在审核"直接付款"如果这是相关的。
我有一个PayPal商家帐户,并设置了沙箱帐户。
非常感谢任何一般指导原则。
答案 0 :(得分:1)
我现在的工作基本上完全相同。是的,快速结账是要走的路;使用快速结账有三种主要方式:https://developer.paypal.com/docs/integration/direct/express-checkout/integration-jsv4/set-up-a-payment/
您需要使用服务器端REST设置。在这里https://developer.paypal.com/demo/checkout/#/pattern/server
查看他们的演示页面简而言之,您要查看的流程是:
1。)用户登陆付款页面
2.)用户点击其中一个付款按钮
3。)#2触发你的php页面,CREATE_URL(参见演示)
4.。)您的CREATE_URL php需要使用paypal REST API来创建payment
。您可能希望意图为sale
,但有三种选择(销售,授权付款或订单)
5.。)创建付款后,会弹出一个框,允许用户进行付款
6。)如果用户付款(以paypal术语“授权”),则需要执行付款。您的EXECUTE_URL php页面已被触发
7.。)在您的EXECUTE_URL php页面上,您使用paypal的REST API再次执行付款。假设付款成功并且状态=已完成(意味着,资金实际上是从用户的账户转移到您的PayPal业务账户),那么您可以将唯一下载ID返回给客户的浏览器
一些重要的注意事项:
status
的{{1}}值以确定此这需要一段时间才能以稳固的方式完成。如果PayPal的文档更好,我会在一天前完成。祝你好运。
答案 1 :(得分:0)
如果您不熟悉php和js如何进行通信,您可以尝试一下(它比服务器端REST更容易设置),虽然我建议雇用一个熟悉Paypal API的开发人员
Paypal Express Checkout - 客户端REST https://developer.paypal.com/docs/integration/direct/express-checkout/integration-jsv4/client-side-REST-integration/
当用户完成付款时,代码的第47行将会运行(此演示的第47行:https://developer.paypal.com/demo/checkout/#/pattern/client)当发生这种情况时,您可以使用AJAX调用php脚本;那个php脚本应该返回唯一的id。然后,您可以使用javascript重定向用户。
重要提示 一个非常简单/基本的黑客可以在不付费的情况下访问您的pdf,因为客户端上的javascript中没有任何内容是安全的。