Estou tentando testar minha loja com o PayPal Sandbox . Eu recebo 2 erros diferentes em 2 situações diferentes.
1. Tudo funciona bem até a ordem de acabamento no PayPal. Então receba a mensagem:
Lamentamos, mas o PayPal não permite que residentes nos Estados Unidos enviem compras para (em qualquer lugar)
2. A segunda situação é quando altero o endereço de entrega do comprador para os EUA. Recebo o seguinte erro, na primeira página do paypal:
Não foi possível processar o pagamento. Entre em contato com o comerciante, pois o endereço de entrega fornecido é inválido e o comerciante solicitou que seu pedido fosse enviado para esse endereço.
Eu descobri aqui , que isso parece ser um problema para muitos. A partir daqui , descobri que há algo a ver com o método address_override e aqui é sugerido desativá-lo.
Existe uma maneira de desativá-lo no Magento? É seguro desligá-lo? Por que está lá em primeiro lugar? ou que outras soluções existem por aí? :
Encontrei o método address_override no magento em
\ app \ code \ core \ Mage \ Paypal \ Model \ Api \ Standard.php line: 238 $ request ['address_override'] = 1;
Alterou para '0' e agora o sandbox paypal funciona. Não há mais erros. Mas como posso fazer isso sem alterar os arquivos principais do magento? e é seguro?
fonte
Respostas:
Você pode fazer o seguinte se não quiser alterar os arquivos principais:
Mage/Paypal/Model/Api
em/app/code/local/
Standard.php
de/app/code/core/Mage/Paypal/Model/Api
Standard.php
em/app/code/local/Mage/Paypal/Model/Api
para
fonte
O
address_override
parâmetro está lá para definir o endereço de entrega que sua loja Magento está enviando para o Paypal como endereço de entrega, em vez do endereço de entrega do cliente salvo no lado do Paypal.Se
address_override
estiver definido como1
, como é o caso do Magento, o Paypal validará o endereço de entrega. Se o parâmetro estiver definido como0
, supostamente não. Portanto, verifique se você está enviando um endereço válido e bem formatado para o Paypal.Eu encontrei esse problema por causa de um valor "estado" ausente. O Paypal aceita apenas abreviações de estado como "CA" para "Califórnia". Para outros países, os estados podem não estar disponíveis na instalação do Magento por padrão, por exemplo, no México.
Você personalizou algum campo de endereço de entrega no checkout?
fonte
Verifique estas respostas do Stack Overflow:
/programming/5978153
/programming/11281543
Basicamente, uma maneira rápida e suja é copiar o arquivo inteiro para o seu
app/code/local/Mage
mundo, mas seria ainda melhor para atualizações se você pudesse sobrecarregar apenas a única função.Além disso, se ainda não estiver, use o Github para controle de versão. Ele me salvou mais de uma vez! Você pode rastrear todas as alterações facilmente, mesmo se estiver com problemas e editando arquivos principais.
fonte