Does you provider inherit from APaymentProvider? When you have overridden the AllowsCallbackWithoutOrderId you also need to implement the GetCartNumber method. This is the method that gives the cart number of the order, now that the payment provider doesnt know about the order id.
I've implemented the GetCartNumber method, but none of my added logging appears in my UmbracoTraceLog nor in my Log. Should I enable some restExtension config? Or is there any other way to enable tracing/logging in these methods?
We've inherited from the APaymentProvider as provided by the documentation. Basically everything works, except the callback.
DocData payments has been implemented, but I have a problem; The DocData service calls the 'ProcessCallback' several times. The problem is that TeaCommerce only updates on the very first callback. Is there a solution to this? For creditcard payments it is often necessary to facilitate several callbacks.
Why does DocData call the callback url several times?
It is correct can Tea Commerce only use the callback ones because that is the way its designed - because all payment providers I have worked with only did one callback :)
The reason is that for creditcard payments, sometimes the capture of payments is done at a later moment. DocData calls the callback on each and every update of the status.
For example, Booking.com: If you book a holiday, the status is 'Authorized'. Not until one day prior to arrival, the callback will actually 'Capture' this payment. There are more providers who do it like this, e.g. recurring payments (like some yearly subscription).
Do you have a workaround? Or should I build my own callback service for these payment?
FYI: DocData was formerly known as TripleDeal, and this multi-callback principle was always in their system. I don't think they will change this for us...
For those of you forced to work with DocData, my fork contains the complete code and BaseRestExtensions to facilitate the multi-callback authorizations:
Cool Peter! I will look at the fork and see it can be integrated into Tea Commerce. One thing that hits me is that you implemented your own REST part that takes the callback. This will need to be build into Tea Commerce if its fits - so I will have a look at what to do with gateways that does multiple callbacks.
Cannot get PaymentCallbackWithoutOrderId to work propery
Hi guys,
I'm trying to implement a custom payment provider, using the following installation:
Umbraco v6.0.5
TeaCommerce 2.1.1 with StarterKit
The problem is that I need to enable 'PaymentCallbackWithoutOrderId'.
I've added the override in my payment provider class:
I've found the next snippet, but as 'Base' is nowhere to be found, I cannot get it to work:
How can I override the methods, or how should it be implemented?
I've found several articles, but it seems to differ per version.
Thanks in advance,
Peter
Hi Peter
Does you provider inherit from APaymentProvider? When you have overridden the AllowsCallbackWithoutOrderId you also need to implement the GetCartNumber method. This is the method that gives the cart number of the order, now that the payment provider doesnt know about the order id.
Kind regards
Anders
Hi Anders,
I've implemented the GetCartNumber method, but none of my added logging appears in my UmbracoTraceLog nor in my Log.
Should I enable some restExtension config? Or is there any other way to enable tracing/logging in these methods?
We've inherited from the APaymentProvider as provided by the documentation.
Basically everything works, except the callback.
Kind regards,
Peter Rombouts
(edit. inherited obviously, not overriden)
Update
Hi Anders,
I think I found the problems in logging; and have some more info available.
I forked the code and will post here when I've resolved all issues.
Kind regards,
Peter Rombouts
Sounds great. The API works for some of the other providers that we have made - so it should work :)
Keep us posted.
Hi Anders,
Added pullrequest:
https://bitbucket.org/teasolutions/tea-commerce-tea-commerce-payment-providers/pull-request/2/added-payment-provider-mollie/diff
I've started on the next 'DocData' payments provider, so please contact me if there are any issues with my code.
Regards,
Peter Rombouts
Just added some comments - but really glad that you have added the provider - the Umbraco community is so amazing!
Hi Anders,
DocData payments has been implemented, but I have a problem; The DocData service calls the 'ProcessCallback' several times.
The problem is that TeaCommerce only updates on the very first callback.
Is there a solution to this? For creditcard payments it is often necessary to facilitate several callbacks.
Thanks in advance for your reply,
Kind regards,
Peter Rombouts
Please see my pull for details: https://bitbucket.org/prombouts/tea-commerce-tea-commerce-payment-providers
Hi Peter
Why does DocData call the callback url several times?
It is correct can Tea Commerce only use the callback ones because that is the way its designed - because all payment providers I have worked with only did one callback :)
Kind regards
Anders
Hi Anders,
The reason is that for creditcard payments, sometimes the capture of payments is done at a later moment.
DocData calls the callback on each and every update of the status.
For example, Booking.com: If you book a holiday, the status is 'Authorized'.
Not until one day prior to arrival, the callback will actually 'Capture' this payment.
There are more providers who do it like this, e.g. recurring payments (like some yearly subscription).
Do you have a workaround? Or should I build my own callback service for these payment?
FYI: DocData was formerly known as TripleDeal, and this multi-callback principle was always in their system.
I don't think they will change this for us...
Kind regards,
Peter Rombouts
For those of you forced to work with DocData, my fork contains the complete code and BaseRestExtensions to facilitate the multi-callback authorizations:
https://bitbucket.org/prombouts/tea-commerce-tea-commerce-payment-providers
Cool Peter! I will look at the fork and see it can be integrated into Tea Commerce. One thing that hits me is that you implemented your own REST part that takes the callback. This will need to be build into Tea Commerce if its fits - so I will have a look at what to do with gateways that does multiple callbacks.
Kind regards
Anders
Hi Anders,
Some kind of construction with an override like
Would be great; If you can explicitly set that multi-callbacks are possible, you can write your ProcessCallback in the same way as any other.
If I can be of any assistance, please let me know:
Kind regards,
Peter Rombouts
skype:prombouts
As I wrote on BitBucket - Tea Commerce 2 supports multiple callbacks - but only one of the calls can finalize the order.
Kind regards
Anders
is working on a reply...