I have a react app and i integrated @paypal/react-paypal-js npm package for paypal in react. I have a Sandbox business account having Euro as default currency and configured to convert payments in the store default currency. If I make a transaction frm personal account in PLN(polish (zloty), I would expect at least the exchange rate and the converted amount in the API capture response, but they are missing.
But in Docs it says you get exchange rate in response Doc link - https://developer.paypal.com/docs/api/payments/v2/#captures_get
My response on hitting above api using my transactin capture_id
{
"id": "647103088U343880B",
"amount": {
"currency_code": "USD",
"value": "25.00"
},
"final_capture": true,
"seller_protection": {
"status": "ELIGIBLE",
"dispute_categories": [
"ITEM_NOT_RECEIVED",
"UNAUTHORIZED_TRANSACTION"
]
},
"seller_receivable_breakdown": {
"gross_amount": {
"currency_code": "USD",
"value": "25.00"
},
"paypal_fee": {
"currency_code": "USD",
"value": "1.74"
},
"net_amount": {
"currency_code": "USD",
"value": "23.26"
}
},
"status": "COMPLETED",
"supplementary_data": {
"related_ids": {
"order_id": "37B87843KP680035N"
}
},
"create_time": "2023-05-31T08:00:22Z",
"update_time": "2023-05-31T08:00:22Z",
"links": [
{
"href": "https://api.sandbox.paypal.com/v2/payments/captures/647103088U343880B",
"rel": "self",
"method": "GET"
},
{
"href": "https://api.sandbox.paypal.com/v2/payments/captures/647103088U343880B/refund",
"rel": "refund",
"method": "POST"
},
{
"href": "https://api.sandbox.paypal.com/v2/checkout/orders/37B87843KP680035N",
"rel": "up",
"method": "GET"
}
]
}
And in paypal npm packge config i set the default sending currency to EUR(euro). What is it that i am doing wrong?
I Tried hitting payment detail pai from postman. But didn't get exchange rate. Expecting exchange rate from paypal API
In the receiving account, there was no currency conversion. The currency specified for the transaction was USD, and you received a USD amount.
If you want to receive EUR, you should either
Any currency conversion that occurs at the payer's funding source level (PLN in this case) is not relevant and will never be visible to the receiver account nor any API response. Such information is private to the payer by design.