Error: Property Order->Conversion_Rate Is Empty in Paypal

PayPal is a truly global payments platform that is available to people in 203 markets, allowing customers to get paid in more than 100 currencies, withdraw funds to their bank accounts in 57 currencies and hold balances in their PayPal accounts in 26 currencies. Founded in 1998, PayPal continue to be at the forefront of the digital payments revolution, last year PayPal processed 4 billion payments, of which 1 billion were made on mobile devices.


PayPal gives people better ways to connect to their money and to each other, helping them safely access and move their money and offering a choice of how they would like to pay or be paid. PayPal 173 million active customer accounts, PayPal created an open and secure payments ecosystem that people and businesses choose to securely transact with each other online, in stores and on mobile devices.

The following problem: Money transferred to PayPal but no order created in the backoffice and blank page.

 Prestashop configuration:
  1. multistore feature enabled
  2. foreign currency on additional store (GBP instead of EUR)
  3. problem only occurs on the additional store, paypal module works fine on main store
  4. Prestashop 1.6.0.9 and module version 3.10.2

Error message:

Fatal error: Uncaught exception 'PrestaShopException' with message 'Property Order->conversion_rate is empty' in .../public_html/classes/ObjectModel.php:846 Stack trace: #0 .../public_html/classes/ObjectModel.php(260): ObjectModelCore->validateFields() #1 .../public_html/classes/order/Order.php(284): ObjectModelCore->getFields() #2 .../public_html/classes/ObjectModel.php(464): OrderCore->getFields() #3 .../public_html/classes/order/Order.php(289): ObjectModelCore->add(true, true) #4 .../public_html/classes/PaymentModule.php(330): OrderCore->add() #5 .../public_html/modules/paypal/paypal.php(1510): PaymentModuleCore->validateOrder(466, 2, 0.8, 'PayPal', 'Payment accepte...', Array, 1, false, '12938f8c16aac4f...', Object(Shop)) #6 .../public_html/modules/paypal/express_checkout/payment.php(295): PayPal->validateOrder(466, 2, 0.8, 'PayPal', 'Payment accepte...', Array, 1, false, '12938f8c16aac4f...', Object(Shop)) #7 .../public in .../public_html/classes/ObjectModel.php on line 846
The problem is different as it refers to currency/conversion rates. The module works perfectly on the main store, only additional stores cause the problem above.

The solution for paypal problem in prestashop is :

Go to backoffice > modules > payment - currency restrictions. Choose a certain shop, e.g. Shop1 from the drop down menu and tick under the PayPal module section the same currency as the Shop1 currency (as set under Localization > Currencies.

 It is important that the currency for a certain shop under modules > payment - currency restrictions > (Shop1 / PayPal module) corresponds with the currency set under Localization > Currencies (Shop1). If currency in combination with certain shop does not correspond, the error occurs in combination with the PayPal module.

Summary:
Currency restriction - Shop1 is chosen - PayPal module - currency x has to be chosen from the radio button options. Localization / Currency - Shop 1 is chosen - currency x has to be chosen.