"Things don't appear to be working at the moment." for PayPal Express Checkout
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
Hello, I wonder if anyone can shed some light on this:
1. I am implementing PayPal Express Checkout on our site
2. I have the credentials and I've implemented the button that brings up the PayPal payment pop-up on our site.
3. I am using the 'Server-Side REST' example
4. I'm able to call a script on my server which uses the PayPal SDK to create a payment and the paymentID gets returned correctly to the 'button' script.
5. But after the button opens the pop-up, all I receive is '"Things don't appear to be working at the moment."'. No error message, nothing.
This is the part of the code that obtains the paymentID from my server:
// Show the buyer a 'Pay Now' button in the checkout flow commit: true, // payment() is called when the button is clicked payment: function() { var data = { "orderId": <%= CurrentOrder.O_Id %> } // Set up a url on your server to create the payment var CREATE_URL = '/ShopCart/ShopCart.aspx/PayPalExpressCheckoutPaymentCreate'; // Make a call to your server to set up the payment return paypal.request({ method: 'post', url: CREATE_URL, json: { "orderId" : <%= CurrentOrder.O_Id %> } }).then(function (res) { console.log(res.d); return res.d; }); },
This WORKS CORRECTLY, the paymentID is returned correctly.
However, this next bit of code never gets accessed (it includes another URL to a script that records the payment successfully on my server):
// onAuthorize() is called when the buyer approves the payment onAuthorize: function(data, actions) { // Set up a url on your server to execute the payment var EXECUTE_URL = '/ShopCart/ShopCart.aspx/PayPalExpressCheckoutPaymentExecute'; console.log(EXECUTE_URL); console.log('paymentID: ' + data.paymentID); console.log('payerID: ' + data.payerID); // Set up the data you need to pass to your server var data = { paymentID: data.paymentID, payerID: data.payerID }; // Make a call to your server to execute the payment return paypal.request.post(EXECUTE_URL, data) .then(function (res) { console.log(res); window.alert('Payment Complete!'); }); }
This doesn't work and the pop-up remains open with the error message that things aren't working at the moment.
Anyone have any clue?
Since the JavaScript opens and is able to call the first script, I don't think this should be a problem of my 'url' being on localhost and the PayPal servers not being able to call it, right?
Haven't Found your Answer?
It happens. Hit the "Login to Ask the community" button to create a question for the PayPal community.
- Using Paypal Smart Buttons for checkout sometimes fails with Debit/ Credit Cards Form in Braintree Client-side Integration (JS, iOS, Android SDKs)
- Express Checkout with Bigcommerce in PayPal Payments Standard
- Customising Paypal Checkout Button in PayPal Payments Standard
- SetExpressCheckout 10003 error with ITEMCATEGORY=Digital in NVP/SOAP APIs
- How do I update shipping in the popup when using onShippingAddressChange() in REST APIs