Skip to content
This repository has been archived by the owner on Sep 29, 2023. It is now read-only.

Paypal Express Integration-Servicer Side #1343

Open
nityaLNU opened this issue Feb 25, 2020 · 0 comments
Open

Paypal Express Integration-Servicer Side #1343

nityaLNU opened this issue Feb 25, 2020 · 0 comments

Comments

@nityaLNU
Copy link

Hi Team,

I am trying to integrate paypal express with my server side application. I have included the javascript checkout.js and have modified the payment() method to call my server side mapping i.e. th ejava controller but wit does not work giving different exceptions as follows:

Approach 1:

Client side:

var url1 = "paypalexpress/starttransactiontest?productCode=123&qty=1&bundleNo=0&bundleTemplateId=null";

payment: function () {

var client = new XMLHttpRequest();
client.open("POST", url1, false);
console.log("URL is");
client.setRequestHeader("Content-Type", "application/json");
console.log(url1);
client.send(null);
if (client.status == 202) {
var params = client.responseText.split('&');
document.querySelector('#finalizeTransactionId').innerText = params[1];
return params[0];
}

return "error";
},

Backend:

@RequestMapping(value="/starttransactiontest", method = RequestMethod.POST)
@responsebody
public ResponseEntity initiatePaypalTransactionExpress(final HttpServletRequest request,
final String productCode,final long qty,final Integer bundleNo,final String bundleTemplateId,
final Model model) {

// perform logic 

final String response = String.format("%s&%d&%d&%d", paypalCheckoutData.getPaypalPaymentRef(), paypalCheckoutData.getFinalizeTransactionId());

return new ResponseEntity<>(response, HttpStatus.ACCEPTED);

}

On click of the paypal express button:

Error: INVALID_RESOURCE_ID↵ at https://www.payp…://www.paypalobjects.com/api/checkout.js:1825:14)", errtype: "[object Error]", timestamp: 1582662569198, windowID: "a24ecf7490", pageID: "cb8839f346", …}

Approach 2:

Js code:

payment: function() {
// 2. Make a request to your server
var CREATE_URL = 'paypalexpress/starttransaction?productCode=123&qty=1&bundleNo=0&bundleTemplateId=null';
return paypal.request.post(CREATE_URL)
.then(function(res) {
alert(res.paymentID);
// 3. Return res.id from the response
return res.paymentID;
});
},

Backend(server side):

@RequestMapping(value="/starttransaction", method = RequestMethod.POST)
@responsebody
public PaypalCheckoutData initiatePaypalTransaction(final HttpServletRequest request,
final String productCode,final long qty,final Integer bundleNo,final String bundleTemplateId,
final Model model) {

//logic which gets the paypal id as an attribute in paypalCheckoutData

return paypalCheckoutData;
}

Error: No value passed to payment↵ at https://w…s://www.paypalobjects.com/api/checkout.js:8156:3

In none of the cases I am getting the response and the paypal window doe snot open.Really appreciate your inputs here if something needs to be modified as do not get response form the paypal. I have been following this link for the server side integration : https://developer.paypal.com/docs/archive/checkout/how-to/server-integration/

Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.
Labels
None yet
Projects
None yet
Development

No branches or pull requests

1 participant