Magento:Paypal 将送货地址作为默认地址,而不是帐单地址

Posted

技术标签:

【中文标题】Magento:Paypal 将送货地址作为默认地址,而不是帐单地址【英文标题】:Magento: Paypal is taking shipping address as default instead of billing address 【发布时间】:2012-08-15 12:48:11 【问题描述】:

我在基于 magento 的电子商务网站中使用“PayPal 网站付款标准”。在结帐时,如果用户输入单独的帐单和送货地址并前往贝宝网站进行付款,那么贝宝会将送货地址与信用卡字段一起显示为默认值。我想在那里显示默认账单,而不是运费。

我已经从这个文件`/app/code/local/Mage/Paypal/Api/Standard.php 中删除了这个(行:238)$request['address_override'] = 1;

PayPal 始终默认发货,如果是,为什么?他们应该记帐,因为在贝宝页面上用户正在付款。

请告知,我如何才能通过默认结算而不是送货?

谢谢。

【问题讨论】:

【参考方案1】:
find app/code/core/Mage/Paypal/Model/Standard.php

change

$address = $isOrderVirtual ? $order->getBillingAddress() : $order->getShippingAddress();
if ($isOrderVirtual) 
$api->setNoShipping(true);
 elseif ($address->validate()) 
$api->setAddress($address);


to

$address =$order->getBillingAddress();
if ($address->validate())

$api->setAddress($address);


http://blog.muabana2z.com/?p=70

【讨论】:

非常感谢您的解决方案,这已解决,但为什么它通过送货地址,不明白?代码中的 isOrderVirtual 是什么?你能帮我理解一下吗? @Prashant: isOrderVirtual 是例如带有可下载产品的订单

以上是关于Magento:Paypal 将送货地址作为默认地址,而不是帐单地址的主要内容,如果未能解决你的问题,请参考以下文章

Magento - Paypal Express - 结帐发送不正确的邮政编码

Paypal 结帐提供的错误运输选项

什么可能导致 Magento 在 Paypal 重定向时将新地址更改回默认地址?

在结帐时编辑客户送货地址 - magento 2

Magento:通过 id 向特定用户添加送货地址

使用 react-paypal-js 禁用送货地址