Closed valerioacerbis closed 7 years ago
Hi, @valerioacerbis, seems you have not defined the Base currency
for each website. Magento sends to Braintree PayPal the amount in a base currency and the base currency (according to your configuration it always will be GBP
). In your case, each website should have own base currency configuration.
If you open Stores
-> Configuration
-> General
-> Currency Setup
-> Base Currency
, you will see the next tip:
Base currency is used for all online payment transactions. The base currency scope is defined by the catalog price scope ("Catalog" > "Price" > "Catalog Price Scope").
By default the Catalog Price Scope
is Global
and the one base currency will be used for all websites, you need to change this option to Website
and define the base currency for each website.
So described behavior is not an issue but misconfiguration for multiple websites.
Many Thanks @joni-jones.
Preconditions
Magento2.1.4 Magento2.1.7
I have 4 websites in a single installation magento2: (# 1) EU Website: EUR (# 2) UK Website: GBP (# 3) USA Website: USD (# 4) WORLD Website: USD
The default currency is GBP.
Steps to reproduce
If I make an order by selecting as a "paypal through braintree" payment gateway from the website (# 2), the order is processed correctly.
However, if you place a paypal through braintree order on other websites (# 1, # 3, # 4), the transaction is declined.
Expected result
Paypal transaction completed correctly in all currencies and across all websites.
Actual result
If you place a paypal through braintree order on other websites (# 1, # 3, # 4), the transaction is declined.
Support Braintree & Paypal Response
I contacted the supposrt of Braintree and this is her answer:
Paypal's support also advised me to write directly to Magento's Github repo.
This is instead the answer of Paypal support: