Ahmed ilyas
Ahmed ilyas

Reputation: 5832

PayPal Express checkout - does not seem to run successfully

So, I am trying to figure this out but cannot seem to get this right.

I am trying to integrate paypal express onto a website. I have the sandbox environment with the facilitator and buyer accounts.

I paste in the sample code and change the client values and transaction details etc... like so:

paypal.Button.render({

                        env: 'sandbox', // Optional: specify 'sandbox' environment

                        client: {
                            sandbox: 'My Client ID here'
                        },

                        payment: function () {

                            var env = this.props.env;
                            var client = this.props.client;

                            return paypal.rest.payment.create(env, client, {
                                intent: "sale",
                                payer: { payment_method: "paypal" },
                                transactions: [
                                    {
                                        amount: { total: '14.00', currency: 'GBP' },
                                        description: "This is a payment description"
                                    },
                                ],
                                redirect_urls: {
                                    return_url: "http://somesite.com/success",
                                    cancel_url: "http://somesite.com/cancel"
                                }
                            });
                        },

                        commit: true, // Optional: show a 'Pay Now' button in the checkout flow

                        onAuthorize: function (data, actions) {

                            // Optional: display a confirmation page here
                            alert('confirmation here');
                            return actions.payment.execute().then(function () {
                                // Show a success page to the buyer
                                alert('success here');
                            });
                        }
                    }, '#paypal-button');

The issue I am facing is that when you hit the paypal button - in the popup I do not see the amount.

Then when continuing, I get an error from javascript like so:

JavaScript runtime error: Error: Payment Api response error:



{

    "name": "INTERNAL_SERVICE_ERROR",

    "message": "An internal service error has occurred",

    "information_link": "https://developer.paypal.com/docs/api/#INTERNAL_SERVICE_ERROR",

    "debug_id": "a9ceebeb96bab"

}

Error: Payment Api response error:



{

    "name": "INTERNAL_SERVICE_ERROR",

    "message": "An internal service error has occurred",

    "information_link": "https://developer.paypal.com/docs/api/#INTERNAL_SERVICE_ERROR",

    "debug_id": "a9ceebeb96bab"

}

   at Anonymous function (https://www.paypalobjects.com/api/checkout.js:8325:17)

   at _loop2 (https://www.paypalobjects.com/api/checkout.js:1509:25)

   at SyncPromise.prototype.dispatch (https://www.paypalobjects.com/api/checkout.js:1542:17)

   at SyncPromise.prototype.resolve (https://www.paypalobjects.com/api/checkout.js:1480:13)

   at Anonymous function (https://www.paypalobjects.com/api/checkout.js:1533:25)

   at _loop2 (https://www.paypalobjects.com/api/checkout.js:1509:25)

   at SyncPromise.prototype.dispatch (https://www.paypalobjects.com/api/checkout.js:1542:17)

   at SyncPromise.prototype.resolve (https://www.paypalobjects.com/api/checkout.js:1480:13)

   at Anonymous function (https://www.paypalobjects.com/api/checkout.js:1533:25)

   at _loop2 (https://www.paypalobjects.com/api/checkout.js:1509:25)

So how the heck do I know what the error is?

Second question: Hopefully when this is all working with your help, how can I get back the response and determine if its a success or failure of payment along with detailed information to log it on my website and display to the user? What about custom variables like paymentID generated from my site? Can I get that information back?

Thank you

Upvotes: 1

Views: 1852

Answers (1)

AU101
AU101

Reputation: 21

You're missing some important information for the API. Things like AMOUNT{}, and others.

https://developer.paypal.com/docs/integration/direct/create-process-order/

I have a problem with this as well, I can get to the actions.payment.execute() and I get an error, _loop2 etc etc.

Upvotes: 1

Related Questions