I am struggling to get the paypal provider working.
We configured it in the back-end. It's selected in the checkout procedure.
can the provider help us figure what the Url is to redirect to?
does the provider handle callbacks from paypal? Or how will the provider help handle the success (or error) return redirect after the payment is done on the paypal website?
As I was also having the same issue.
It was because of address passed to paypal and the delivery address entered during PayPal payment process do not match.
so the following code do not work.
I have done following changes. And it worked for me.
In File : Merchello.Providers\Payment\PayPal\Services\PayPalExpressCheckoutService.cs
protected virtual PayPalExpressTransactionRecord SetExpressCheckout(IInvoice invoice, IPayment payment, string returnUrl, string cancelUrl)
{
....
...
var ecDetails = new SetExpressCheckoutRequestDetailsType()
{
ReturnURL = returnUrl,
CancelURL = cancelUrl,
PaymentDetails = paymentDetailsList,
AddressOverride = "0" ,
// Adde Following line of code
NoShipping="1"
// Not showing Address on Payment process.
};
Hmm - nothing changed in the PayPalProvider and it tests out here. Are you working in the same environment?
Only immediate thought is if you had the "Encrypt Provider Settings" checked and are loading it from a different location. Encrypt Provider Settings uses the machine key to encrypt the entire settings JSON. You should leave these as not encrypted until they are at your production point and then do that as a last step if deemed necessary.
sadly that hasn't done the trick. Also looked at the database and it seems that the data is stored unencrypted in there. The problem still occurs and I can't get PayPal working.
the ExtendedData for my latest try looks like this:
<extendedData><paypalexpresstransaction>{"Success":true,"Data":{"Token":null,"CurrencyCode":"EUR","PayerId":"","CheckoutPaymentTransactionId":null,"AuthorizationTransactionId":"","AuthorizedAmount":"","CaptureTransactionId":"","CurrencyId":"","Authorized":false},"SetExpressCheckout":{"Token":null,"Ack":1,"Version":"104.0","Build":"25037053","ErrorTypes":[{"ShortMessage":"Duplicate invoice","LongMessage":"Payment has already been made for this InvoiceID.","ErrorCode":"10412","SeverityCode":1,"ErrorParameters":[]}],"RedirectUrl":"https://www.sandbox.paypal.com/cgi-bin/webscr?cmd=_express-checkout&token="},"GetExpressCheckoutDetails":null,"DoExpressCheckoutPayment":null,"DoAuthorization":null,"DoCapture":null,"RefundTransactions":[]}</paypalexpresstransaction></extendedData>
There is an error message saying "Payment has already been made for this InvoiceID.". So it seems he doesn't create new invoices.
For this try my basket was empty. I added one product, entered billing adress and then clicked on the paypal express checkout button. Then the no token error occurs.
Any suggestions why he doesn't create a new invoice? Or how I can clear that out. Any cookie or something?
Thanks for your help so far.
Edit: also maybe interesting. When going back to my page from the paypal page the item is still in the basket but the billing address is cleared.
Are you recreating your database in dev - meaning so the invoice numbers get reset? You could try going to settings and changing the starting invoice number to 1000 or something and see if that gets it to kick.
Also, there is a setting on the payment provider that if the payment attempt fails to delete the invoice. That is there for the retries and probably should be defaulted to true with the way we have the starter kit setup, but it's not always what you want.
The basket will empty once the payment is successful ... Its done here:
How to get paypal provider working
Hi,
I am struggling to get the paypal provider working. We configured it in the back-end. It's selected in the checkout procedure.
Hope someone can help
Kind regards
Damiaan
Hi Damiaan,
Nik is working on revamping that one. Have not heard about the progress ... touch base with him? http://our.umbraco.org/projects/collaboration/merchello/merchello/57802-Installing-Payment-Provider-Plugins
Hi Damiaan,
Are you able to successfully configured Paypal provider. ? if so can you please guide me.
on how to configure
1) Redirect URL (Success)
2) Retry Url
3) Retry Method Endpoint
I am using Umbraco 7.5.2 ,
And only following two package Installed
1) Merchello 2.2.0
2) Merchello FastTrack 2.2.0
Thanks
BJ
Hi BJ
I wasn't. But I am pretty sure Rusty can help you out.
Good luck
Kind regards Damiaan
Thanks Damiaan,
Rusty Can you please , help me on the same ?
Regards.,
BJ
For the FastTrack starter these values would be:
Thanks Rusty,
For conforming the setting.
But with this setting it is redirecting public site user to /Checkout/ after Paypal payment ,
And I can also not find any entry under , Sales in back office
can you please guide me on the same.
Thanks BJ.
Hi Rusty,
I am facing same issue as well.I configured Bazaar and Bazaar works fine for me.Can you figure out the issue Please.
Thanks
Which errors Do you have? Paypal works good for me on 1.11.
Hi ,
From Paypal instead of receipt page it return me on checkout page and my basket item remain in basket.
I check Bazaar and it work fine.
Hi,
As I was also having the same issue. It was because of address passed to paypal and the delivery address entered during PayPal payment process do not match.
so the following code do not work.
I have done following changes. And it worked for me.
In File : Merchello.Providers\Payment\PayPal\Services\PayPalExpressCheckoutService.cs
Regards.,
BJ Patel
Hi BJ,
I did your mentioned change but still facing same issue.
Some how this line getting fail
var response =service.DoExpressCheckoutPayment(doExpressCheckoutPayment);
Thanks
Hi all,
I'm currently having the problem that my configured PayPal Express checkout always says "No token passed" on the paypal website.
I'm currently on Merchello 2.2.0 and FastTrack 2.2.0. With the 2.1.0 versions this has worked.
I'm not sure what happens here. Any tips?
Regards David
Hmm - nothing changed in the PayPalProvider and it tests out here. Are you working in the same environment?
Only immediate thought is if you had the "Encrypt Provider Settings" checked and are loading it from a different location. Encrypt Provider Settings uses the machine key to encrypt the entire settings JSON. You should leave these as not encrypted until they are at your production point and then do that as a last step if deemed necessary.
Hi Rusty,
that could be the case! Is there a way to revert that again when done? Just remove the checkmark and all good?
Will test it and see if it helps :)
Regards David
Yep - uncheck the checkbox and it will store the data without encrypting it. Then your safe to move it and check it again.
Hi Rusty,
sadly that hasn't done the trick. Also looked at the database and it seems that the data is stored unencrypted in there. The problem still occurs and I can't get PayPal working.
Regards David
I had a couple of issues come in related to PayPal which I have not had a chance to look at yet (but they make sense).
http://issues.merchello.com/youtrack/issue/M-1122
http://issues.merchello.com/youtrack/issue/M-1123
However, the token error would indicate that you are not hitting PayPal on the first attempt.
If you look in the merchPayment table, under ExtendedData are there any errors reported there (they would be in the extended data)
Hi Rusty,
the ExtendedData for my latest try looks like this:
There is an error message saying "Payment has already been made for this InvoiceID.". So it seems he doesn't create new invoices.
For this try my basket was empty. I added one product, entered billing adress and then clicked on the paypal express checkout button. Then the no token error occurs.
Any suggestions why he doesn't create a new invoice? Or how I can clear that out. Any cookie or something?
Thanks for your help so far.
Edit: also maybe interesting. When going back to my page from the paypal page the item is still in the basket but the billing address is cleared.
Regards David
Are you recreating your database in dev - meaning so the invoice numbers get reset? You could try going to settings and changing the starting invoice number to 1000 or something and see if that gets it to kick.
Also, there is a setting on the payment provider that if the payment attempt fails to delete the invoice. That is there for the retries and probably should be defaulted to true with the way we have the starter kit setup, but it's not always what you want.
The basket will empty once the payment is successful ... Its done here:
https://github.com/rustyswayne/Merchello/blob/merchello-dev/src/Merchello.Providers/Payment/PayPal/Controllers/PayPalExpressController.cs#L141
Hi Guys,
I am trying to set the url when user tries to cancel from paypal - "Cancel and return to ..."
When I click on the link: - umbraco/merchello/paypalexpress/success, I got an error.
How can I set to redirect just to any page, such as shop?
Kind Regards
Do you mean into Paypal or Merchello plugin?
Either one or the other.. because I want in user selects to cancel when redirected to paypal, user will be redirected back to any of one of my pages.
I am referering to the text underneath: "Cancel and return to... Website"
Thank you in advance
I do not have cancel Url.
I am using Merchello 2.2.1 where the paypal came installed with it.
is working on a reply...