cancel
Showing results for 
Search instead for 
Did you mean: 

Javascript SDK currency code error

Options
stathis_kan
Contributor
Posted on

I try to pass to my create order request a EUR currency code and I get this Javascript error:

Expected USD got EUR.Please make sure you are passing EUR to the SDK. Could anyone help me with this issue?

Thank you.

6 REPLIES 6

Javascript SDK currency code error

Options
tejasm1
Contributor

Try passing currency in your script tag like this
Might be it will help

<script src="https://paypal.com/sdk/js?client-id=YOUR_CLIENT_ID&currency=EUR"></script>

and make sure you pass currency_code whenever you use amount object

Javascript SDK currency code error

Options
stathis_kan
Contributor

Works great!

Thank you very much  tejasm1!

Javascript SDK currency code error

Options
Lovekesh
Contributor

m facing the same issue.

But i want a dynamic currency to be accepted here.

As m accepting payments in multiple currencies

Javascript SDK currency code error

Options
Hisaeri
Contributor

Then you can load dynamically the paypal script depending on the currency needed, and inject it on your page. Example :

 

 var url = paypal_url + currency;
 var paypal_script = document.createElement("script"),
        head = document.head || document.getElementsByTagName("head")[0];
    paypal_script.onload = function () {
        // do whatever you want after it has been loaded
        // createPaypalButton() -- example here created the paypal button
    };
    paypal_script.src = url;
    paypal_script.async = true;
    head.insertBefore(paypal_scripthead.firstChild);

Javascript SDK currency code error

Options
Lovekesh
Contributor

Thank you for your answer.

But M accepting amount and currency from a form.

So how can I call SDK dynamically based on the user selects the currency 

Javascript SDK currency code error

Options
AlecSherman
Contributor

It took me forever to find this solution so I thought I should share it with you.  Pass the currency in the same place in your JavaScript code that you put your client-id.  This is my code which works for dynamically passing currency code.

 

 

function wtkPayPal(fncPayPalItem, fncAmt, fncPage, fncCurCode='USD') {
    window.paypalLoadScript({
         "client-id": 'your-client-id-here',
         "currency": fncCurCode
        }).then((paypal) => {
            paypal.Buttons({
                createOrder: function(data, actions) {
                  wtkDebugLog('wtkPayPal createOrder');
                  wtkDebugLog(fncPayPalItem);
                  return actions.order.create(fncPayPalItem);
                },
            onError: function (err) {
                wtkDebugLog('Error during purchase:');
                wtkDebugLog(err);
                M.toast({html: 'Error during purchase - please contact tech support', classes: 'rounded red'});
            },
            onCancel: function (data) {
                // Show a cancel page, or return to cart
                wtkDebugLog('Canceled order!');
                M.toast({html: 'Your order has been canceled', classes: 'rounded orange'});
            },
            onApprove: function(data, actions) {
                return actions.order.capture().then(function(details) {
                // your custom code here for handling success
            }
        }).render('#paypal-buttons');
    });
} // wtkPayPal

 

Haven't Found your Answer?

It happens. Hit the "Login to Ask the community" button to create a question for the PayPal community.