I started from your payment provider template on Github and I've got to the stage of returning from the payment provider in order to verify and complete the transaction, but getting a 400 error. This is a synchronous post back to the site but the payment provider's ProcessCallback method is not being hit. In fact the provider's constructor isn't being called.
I suspect it's an issue in the Redirect url, but I can't for the life of me see what's wrong with it.
I've read through various posts here as well as looking through the docs and I'm sure I'm just missing something simple. BTW, I did see a post about creating an override for GetOrderReference but that made no difference.
I have my redirect Url as /umbraco/vendr/payment/callback/RmsHostedPaymentProvider/74884c47-4f35-41a5-b060-ba4990a6e6b9
and this matches the payment provider as shown:
Glad you were able to work this out. It sounds like you found all the right pieces.
People often confuse the callback URL with the continue URL so it's a common mistake. And yea, if you are using a solution that requires a globaly registered webhook, then you need to use the OrderReference and not ID like you say. This is an added measure to ensure the order is the one you think it is, ensuring that you have a matching order ID and order Number.
Custom Payment Provider Continue 400 error
Hi Matt,
I'm hoping you can help me with this basic payment provider issue.
I'm creating a new payment provider using a payment provider called Retail Merchant Services http://www.retailmerchantservices.co.uk/
I hadn't hear of them either.
I started from your payment provider template on Github and I've got to the stage of returning from the payment provider in order to verify and complete the transaction, but getting a 400 error. This is a synchronous post back to the site but the payment provider's ProcessCallback method is not being hit. In fact the provider's constructor isn't being called.
I suspect it's an issue in the Redirect url, but I can't for the life of me see what's wrong with it.
I've read through various posts here as well as looking through the docs and I'm sure I'm just missing something simple. BTW, I did see a post about creating an override for GetOrderReference but that made no difference.
I have my redirect Url as /umbraco/vendr/payment/callback/RmsHostedPaymentProvider/74884c47-4f35-41a5-b060-ba4990a6e6b9 and this matches the payment provider as shown:
I'm hoping you can point out my mistake,
many thanks
tom
I finally manged to figure this out, so leaving this in case this helps anyone else.
The callback address use the alias of the payment provider (I was using the name, doh!)
BUT, the other issue I had, unwittingly, I had confused the redirect Url and the callback Url. The callback Url is handled automatically by Vendr
HTH
t
Final point,
you need to use the order.GenerateOrderReference() method and not pass the order id for GetOrderReferecnce to work.
Hey Tom.
Glad you were able to work this out. It sounds like you found all the right pieces.
People often confuse the callback URL with the continue URL so it's a common mistake. And yea, if you are using a solution that requires a globaly registered webhook, then you need to use the OrderReference and not ID like you say. This is an added measure to ensure the order is the one you think it is, ensuring that you have a matching order ID and order Number.
Matt
is working on a reply...