Braintree 的沙盒 PayPal 集成(使用 JS 和 PHP)

Posted

技术标签:

【中文标题】Braintree 的沙盒 PayPal 集成(使用 JS 和 PHP)【英文标题】:Braintree's Sandbox PayPal Integration (using JS and PHP) 【发布时间】:2016-04-19 01:02:15 【问题描述】:

我目前致力于将 Braintree 集成到我公司的网站,但仅限于 PayPal 订单。我目前正在使用 Braintree 的沙箱。当我尝试设置 Braintree 时,我使用 shippingAddressOverride 设置测试送货地址。但是,我收到的默认送货地址已退回给我。

<?php
require_once '_environment.php';
$clientToken = Braintree_ClientToken::generate();
?>

<html>
<head>
</head>
<body>
    <div id="paypal-container"></div> 
    <!-- Scripts -->
    <script src="https://code.jquery.com/jquery-2.1.1.js"></script>
    <script src="https://js.braintreegateway.com/v2/braintree.js"></script>
    <script>
        braintree.setup("<?php print $clientToken; ?>", "custom", 
            paypal: 
                container: "paypal-container",
                singleUse: true, // Required
                amount: 10.00, // Required
                currency: 'USD', // Required
                locale: 'en_us',
                enableShippingAddress: 'true',
                shippingAddressOverride: 
                    recipientName: 'Scruff McGruff',
                    streetAddress: '1234 Main St.',
                    extendedAddress: 'Unit 1',
                    locality: 'Chicago',
                    countryCodeAlpha2: 'US',
                    postalCode: '60652',
                    region: 'IL',
                    phone: '123.456.7890',
                    editable: false
                
            ,
            onPaymentMethodReceived: function (obj) 
                //doSomethingWithTheNonce(obj.nonce);
                console.log(obj.details.shippingAddress);
            
        );
    </script>

</body>
</html> 

为什么我总是收到默认送货地址而不是设置的地址?

【问题讨论】:

【参考方案1】:

全面披露:我在 Braintree 工作。

这是一个已知问题,Braintree 开发人员正在对其进行调查。目前,如果您需要 shippingAddressOverride 功能,我建议您回滚到早期版本。您可以在GitHub issue that has been opened 关注解决此问题的进展。如果您还有任何问题,请联系Braintree support。

【讨论】:

【参考方案2】:

我遇到了同样的问题,我尝试使用较旧版本的 Braintree.js,但在 2.7.1 版本中它可以正常工作! 也许在 Braintree 的最新版本中出现了问题:(

【讨论】:

以上是关于Braintree 的沙盒 PayPal 集成(使用 JS 和 PHP)的主要内容,如果未能解决你的问题,请参考以下文章

在 Braintree 控制面板中输入 paypal 凭据

Braintree Paypal 在沙盒中工作,但不是生产

用braintree生产账户接受paypal

从 PayPal 的沙盒 IPN 获得无效响应

如何在 PayPal Developer 中取消链接以前链接的沙盒测试帐户

我在使用 paypal checkout-sdk 的沙盒中找不到交易历史记录