paypal - 页面保护

标签 paypal protection payment-processing

我在使用 PayPal 快速结账时遇到了困难……基本上我希望保护 PAGE,而不是下载或任何东西。用户付费,他们可以访问该页面一次。并且每次他们想要访问该页面时都必须付费。

有没有人有一个简单的 PHP 解决方案来保护我的页面,直到该人通过 PayPal 付款?或者甚至是用于快速结账的数字商品的 PayPal 代码的预先编写的示例?

提前致谢。

最佳答案

PayPal 与此没有太大关系——这完全取决于您放置在“退货页面”(买家完成付款后返回的页面)上的逻辑。

对于简单的 Express Checkout 集成,您将:
1.调用SetExpressCheckout API
2. 提供 AMT、RETURNURL 和 CANCELURL
3. 检索在 SetExpressCheckout 响应中返回的 token 。
4.将买家重定向到https://www.paypal.com/cgi-bin/webscr?cmd=_express-checkout&token=EC-xxxtoken-herexxx&useraction=commit
5. 当买家同意付款并返回到您的 RETURNURL 时,调用 GetExpressCheckoutDetails API 并提供 token 以检索 PayerID(或者; token 也附加到您的 RETURNURL 的 GET 数组中)
6. 调用 DoExpressCheckoutPayment 完成付款。
7. 现在付款已完成,请执行您必须执行的任何逻辑以确保交易完成并为买家提供您希望他/她看到的内容的访问权限(可以是 RETURNURL 页面本身,也可以是完全不同的页面) .

示例 (NVP) API 调用类似于以下内容:

  • SetExpressCheckout 请求
    METHOD=SetExpressCheckout&USER=yourAPIuser&PWD=yourAPIpwd&SIGNATURE=yourAPIsig&VERSION=78.0&AMT=0.01&RETURNURL=http://www.your-return-url.com/&CANCELURL=http://www.cancelurl.com/
  • SetExpressCheckout 响应
    ……
    确认=成功
    代币=EC-12345678
    .......
  • GetExpressCheckoutDetails 请求
    METHOD=SetExpressCheckout&USER=yourAPIuser&PWD=yourAPIpwd&SIGNATURE=yourAPIsig&VERSION=78.0&TOKEN=EC-12345678
  • GetExpressCheckoutDetails 响应
    ......
    确认=成功
    PAYERID=ABCDEFGH
    ......
  • DoExpressCheckoutPayment 请求
    METHOD=SetExpressCheckout&USER=yourAPIuser&PWD=yourAPIpwd&SIGNATURE=yourAPIsig&VERSION=78.0&AMT=0.01&PAYERID=ABCEDFGH&TOKEN=EC-12345678
  • DoExpressCheckoutPayment 响应
    ……
    确认=成功
    PAYMENTSTATUS=已完成
    ....

  • 也可以看看
    SetExpressCheckout:https://cms.paypal.com/us/cgi-bin/?cmd=_render-content&content_ID=developer/e_howto_api_nvp_r_SetExpressCheckout
    GetExpressCheckoutDetails: https://cms.paypal.com/us/cgi-bin/?cmd=_render-content&content_ID=developer/e_howto_api_nvp_r_GetExpressCheckoutDetails
    DoExpressCheckoutPayment:https://cms.paypal.com/us/cgi-bin/?cmd=_render-content&content_ID=developer/e_howto_api_nvp_r_DoExpressCheckoutPayment

    以及 https://www.x.com/ > API 引用。

    注意:我在指向 PayPal 的重定向 URL 中使用了“useraction=commit”,因为这会将 PayPal 的“查看您的付款”上的“继续”按钮更改为“立即付款”按钮。因此,这意味着买家一旦点击该按钮就会立即被收取费用。这很方便。

    关于paypal - 页面保护,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7327817/

    相关文章:

    c# - PayPal 快速结帐在 MVC .net 中以 html 形式返回响应

    c# - 我们目前无法使用您的 PayPal 帐户处理您的付款

    paypal - 如今在线支付网关如何运作?

    c# - 如何使 WCF session 更安全?

    c - 字符串比预期的要长,并被视为多个输入

    php - Paypal 返回 true 或 false

    paypal - 根据帐号/排序代码发送和接收资金

    forms - 自动点击/提交 Paypal 按钮?

    c# - 出于软件保护目的,将保护试用信息存储在何处

    paypal - 是否可以通过其他人的网关自动付款?