V2中没有papypal按钮的情况下如何添加paypal支付

问题描述 投票:0回答:2

我有以下情况:我的页面上有不同的付款选项。首先你选择一种方法,点击贝宝按钮后什么也不会发生。只有当您单击“订购和支付”按钮时,它才会运行“贝宝”按钮的行为,并打开“贝宝”对话框。

我的第一个想法是使用标准的贝宝按钮并将其存储在隐藏字段中。 通过单击 my-paypal-按钮,我加载 paypal-脚本,如下所示:

    var wasLoaded = false;
 function loadScript() {
    if(wasLoaded) return;
    wasLoaded = true;
    var script = document.createElement('script');
    script.type = 'text/javascript';
    document.body.appendChild(script);
    script.onload = function() {

        paypal.Buttons({

                    // Set up the transaction
                    createOrder: function(data, actions) {
                        return actions.order.create({
                            purchase_units: [{
                                amount: {
                                    value: '88.44'
                                }
                            }]
                        });
                    }, ...
                    load it to a hidden div.

    }

    script.src = 'https://www.paypal.com/sdk/js?client-id=SD&intent=capture&vault=false&commit=true';

  }

将其加载到隐藏的 div 中。 通过单击“订单和付款”,我可以使用“button.click()”来执行“paypal-stuff”。 但不幸的是,papypal 的东西在 iframe 中,所以我无权访问它。

我在贝宝规范中找不到任何提示。他们不会总是使用那里的按钮。 我怎样才能实现这种方法?

php paypal paypal-sandbox paypal-rest-sdk
2个回答
0
投票

如果您已经创建了一个按钮,我只需使用 PHP 生成的链接:

如果用户点击它,该用户将被重定向到 PayPal 页面 -> 在 paypal 上购买 -> 重定向到您的页面。

为此目的,我推荐 PayPal PHP Api:PayPal PHP Api

第 1 步: 要使您的库正常工作,请下载并安装 Paypal Api 并从该代码开始:

<?php
// 1. Autoload the SDK Package. This will include all the files and classes to your autoloader
// Used for composer based installation
require __DIR__  . '/vendor/autoload.php';
// Use below for direct download installation
require __DIR__  . '/PayPal-PHP-SDK/autoload.php';

第 2 步: 您需要设置 PayPay ClientID 和 Secret:

// After Step 1
$apiContext = new \PayPal\Rest\ApiContext(
    new \PayPal\Auth\OAuthTokenCredential(
        'AYSq3RDGsmBLJE-otTkBtM-jBRd1TCQwFf9RGfwddNXWz0uFU9ztymylOhRS',     // ClientID
        'EGnHDxD_qRPdaLdZz8iCr8N7_MzF-YHPTkjs6NKYQvQSBngp4PTTVWkPZRbL'      // ClientSecret
    )
);

第 3 步: 使用代码为您的按钮生成链接。您可以使用 Paypal Api 示例页面中的代码示例此处

我会向您推荐代码示例:“PayPal Payments - 类似于经典 API 中的 Express Checkout”

我知道也许有更好的方法在网页上实现贝宝按钮,但这对我来说效果最好。


-1
投票

请参考下面的服务器端API链接,它将帮助您实现服务器端支付集成,而无需PayPal客户端侧按钮。

https://developer.paypal.com/docs/business/checkout/server-side-api-calls/

如果您有任何疑问,请随时告诉我,我也很乐意分享邮递员集合来使用 API。

© www.soinside.com 2019 - 2024. All rights reserved.