With this patch, you can be sure that the checkout create a transaction. Offline project (with internet access), can now user Merchant Query Interface to check the status of the transaction.
If the payment gateway don't send a success message, you can't go to the next order pane.

Please review.
(patch in next message)

Support from Acquia helps fund testing for Drupal Acquia logo

Comments

bennetteson’s picture

bennetteson’s picture

Second draft.
The query request don't return the failure raison.

JulienD’s picture

Title: Make sure the checkout create a transaction. » Create a transaction during the customer checkout process
FileSize
9.87 KB

Hi,

Currently, a transaction is only created during the reception of a payment notification from moneybookers. This patch add the possibility to create transaction after the customer succeeds the payment of his order.

I've tested Bennetteson's patch and it's working fine except the fact how a transaction is loaded from the database. Currently the first transaction of an order will always be loaded instead of the last one. I've rerolled the patch to correct this little stuff.

I've renamed the title for a better comprehension

jsacksick’s picture

Status: Needs review » Needs work
+++ b/commerce_moneybookers_quickcheckout/commerce_moneybookers_quickcheckout.module
@@ -169,45 +183,127 @@ function commerce_moneybookers_quickcheckout_settings_form($settings = NULL) {
+  if (arg(4) != $order->data['payment_redirect_key']) {

Are you really sure we need that ?

jsacksick’s picture

This patch is not correct, because the EFQ checks if there's at least one transaction and take the last one, but what if all of them have failed ? Then it won't enter the mqi and we're not going to create the transaction. This has to be fixed.

bennetteson’s picture

Assigned: bennetteson » Unassigned
bennetteson’s picture

Issue summary: View changes

Updated issue summary.