[TYPO3-commerce] Confirm order before payment
Bartbogdan
bdubelaar at sundayafternoon.nl
Mon Sep 13 10:08:55 CEST 2010
Hi Morten,
Thanks for your reply. I will have a look at paymentlib.
Best regards,
Bart
Op 2010-09-13 07:37:50 +0200, zei Morten Haggren <mo at idefa.dk>:
> Hi Bart,
>
> You may want to look into the way paymentlib handles this - atleast the
> danish provider Quickpay has the same approach that the payment gatway
> replies directly to the server ( so with no session ) before sending
> the user to the "success" page. The way it is handled is by having a
> seperate "payment Id" which while also unique doesn't have to be
> sequential.
>
> The reason it's a bad idea to save the order earlier in the checkout
> process is due to bookkeeping - if the user changes his mind during
> payments ( our tracking shows this happens quite a bit that people
> postpone the buy till later ) you will end up with an "aborted/null"
> order which means you can no longer use the build in commerce order
> generator but will have to register valid orders in a seperate system
> for book keeping.
>
>
> /Morten Haggren
>
> On 2010-09-09 14:59, Bartbogdan wrote:
>> We're having the same problem at this moment. The point is that the
>> iDeal service we are using does support push confirmation (or hidden
>> trigger), but then still the order should be saved earlier in the
>> process. After this the push confirmation should initiate the final
>> finishing. The problem we're having with this is that because the iDeal
>> server pushes the confirmation there is no user session and all commerce
>> routines are based on session data, for example sending of the
>> confirmation mail uses the e-mail address from the user session.
>> Has anyone been able to create a payment class that tackles these problems?
>>
>> Best regards,
>>
>> Bart
>>
>> Op 2009-10-12 12:12:45 +0200, zei Rik Willems <rik at actiview.nl>:
>>
>>> Hi Ralf,
>>>
>>> Yeah that is too bad. But that is why it is called 'Lite' I guess. You
>>> can also get a 'Professional' edition that offers more.
>>>
>>> I copied a small part of the finishing function that adds the order to
>>> db and sends the mails. This is now done before when a customers
>>> continues to payment, after the listing. It also has a small piece of
>>> code that disables the db write and mails in the finishing page. When
>>> a user chooses prepayment it all functions as normally.
>>>
>>> I hope that is clear. Let me know if it's not!
>>>
>>> Greets, Rik
>>>
>>> Ralf Merz schreef:
>>>> Hi Rik,
>>>>
>>>> you´re welcome. :)
>>>> Hmmm... it´s a pity that the payment provider is not flexible in this
>>>> ways. You will always have customers who do not go back to your page,
>>>> because they think the order is done.
>>>>
>>>> So, maybe you could explain what your hack does? Just for others to
>>>> find this solution easier, when they search in this list.
>>>>
>>>> Do you save the order before step finish now?
>>>>
>>>> Greets
>>>> Ralf
>>>>
>>>>
>>>> On 2009-10-12 11:00:54 +0200, Rik Willems <rik at actiview.nl> said:
>>>>
>>>>> Hi Ralf,
>>>>>
>>>>> Thank you for thinking along. I did a quick search but can not find
>>>>> anything about the hidden triggers. It is too bad, I can not change
>>>>> the iDEAL template either.
>>>>>
>>>>> Now I made a small extension that changes the behaviour of commerce,
>>>>> although it is a little bit of a hack. But it does work. In case
>>>>> anybody needs it they can contact me.
>>>>>
>>>>> Greets, Rik
>>>>>
>>>>> Ralf Merz schreef:
>>>>>> Hi Rik,
>>>>>>
>>>>>> does iDEAL offer something like a hiddentrigger? That means, if the
>>>>>> payment was successful on the payment page, the iDEAL Server calls
>>>>>> a URL, so called hiddentrigger-URL, in the backround, so you can
>>>>>> finish the order by your script. But have to be careful: If the
>>>>>> hiddentrigger finishes the order AND the customer clicks the button
>>>>>> to come back, you´ll have 2 orders.
>>>>>>
>>>>>> Another idea:
>>>>>> can you change the iDEAL templates? Then I would just put a
>>>>>> javascript there with a window.onload function which automatically
>>>>>> redirects to your finish step.
>>>>>>
>>>>>> Greets
>>>>>> Ralf
>>>>>>
>>>>>> On 2009-10-06 09:14:11 +0200, Rik Willems <rik at actiview.nl> said:
>>>>>>
>>>>>>> Hi Morten,
>>>>>>>
>>>>>>> Thank you for your answer. The reason I want this is because my
>>>>>>> clients uses an iDEAL version (called Lite) which isn't an
>>>>>>> integrated solution. This means to be sure you have to check the
>>>>>>> payment dashboard for the payment of an order.
>>>>>>>
>>>>>>> When a customer pays in the external environment at the last step
>>>>>>> the payment is confirmed, so the money is transfered. But than
>>>>>>> they have to press a button to go back to commerce. Only after
>>>>>>> this step the order is created. Now if they don't press that last
>>>>>>> button they have paid, but there is no order. For this reason I'd
>>>>>>> like to confirm before sending to the payment provider.
>>>>>>>
>>>>>>> I have managed to get it working. Although it is not a beautiful
>>>>>>> solution it is the best for this situation. And, I didn't touch
>>>>>>> the commerce code at all.
>>>>>>>
>>>>>>> Greets, Rik
>>>>>>>
>>>>>>>
>>>>>>> Morten Olesen schreef:
>>>>>>>> Hi Rik,
>>>>>>>>
>>>>>>>> Why would you confirm ( I assume you mean create here ) the order
>>>>>>>> before the customer pays? - I mean you cannto be sure that the
>>>>>>>> customer will go on to pay, wich is why commerce doesn't create
>>>>>>>> orders until payment is completed.
>>>>>>>>
>>>>>>>> Searching through TER I found this extension which migth be of
>>>>>>>> help to you
>>>>>>>> http://typo3.org/extensions/repository/?tx_terfe_pi1[view]=search&no_cache=1&tx_terfe_pi1[sword]=iDEAL
it's
fairly
old,
but
>>>>>>>>
>>>>>>>> as far as I know the payment system of commerce has remained
>>>>>>>> unchanged virtually since the first release.
>>>>>>>>
>>>>>>>> if it doesn't work you may want to gently prod them about making
>>>>>>>> a paymentlib provider for their payment service ;-)
>>>>>>>>
>>>>>>>> /Morten
>>>>>>>>
>>>>>>>> Rik Willems wrote:
>>>>>>>>> Hi list,
>>>>>>>>>
>>>>>>>>> I'm making use of an external Dutch payment system (iDEAL). This
>>>>>>>>> works rather smooth with the extension I created for it. But,
>>>>>>>>> since this is the simple implementation there is no direct link
>>>>>>>>> between the shop and the payment system.
>>>>>>>>>
>>>>>>>>> After completing the payment a customer HAS to click a link to
>>>>>>>>> back to the site in order to confirm the order. Otherwise the
>>>>>>>>> order is not registered in commerce. Than the payment is made
>>>>>>>>> but the order is not tracable.
>>>>>>>>>
>>>>>>>>> How can I confirm the order before going to the payment site? So
>>>>>>>>> after the listing page and click on the 'next' button the order
>>>>>>>>> is confirmed and than the payment page is opened.
>>>>>>>>>
>>>>>>>>> Greets, Rik
More information about the TYPO3-project-commerce
mailing list