We have a strange situation on our hand with an order that is missing in Vendr.
If we look in the payment portal (Mollie) for this order we can see two entries.
One has the status payed and the other is expired.
They both have an order number and they both have a transaction id.
In the database we only see the expired order with the transaction id set to NULL. We can't find the payed order in the database.
A possible explanation of this issue could be a double-click on the checkout button but that doesn't explain why the payed order isn't visible in Vendr.
What version of the Payment Provider are you using?
I think you could maybe be affected by this issue https://github.com/vendrhub/vendr-payment-provider-mollie/issues/6 which is that Mollie triggers the webhook for non completed orders (which no other gateway does) and so it was reverting the order into another state.
Upgrading should ensure that the order can only become canceled if it was previously in the Authorized state.
Are they the same order though? My thought was, the order was finalized, but then Mollie notified you of the expired one and that has reset the paid one, but I could be reading your original post wrong.
The orders were from the same person with the same product at the same time.
The expired order in mollie is not visible in Vendr but we can find it in the database.
The one that is approved in mollie is completely missing in Vendr, even in the database.
I don't know the exact timestamp since mollie doesn't register miliseconds AFAIK but it seems the completed one was the first to be handled by molly if I go by the sortorder:
The ordernumbers and payment Id's for both orders are generated by Vendr but the completed ordernumber and payment id are completely missing from the system.
I was thinking about a doubleclick on the checkout button but even then I should have 2 orders in Vendr right? Since the ordernumber is there?
Do you happen to have this Mollie provider hooked up to another environment by accident? Maybe this order was placed on a dev / test environment that was mistakenly configured with the live settings?
Does that completed order id / number exist in any other environment? It would be very strange for it to be just entirely gone (unless the expired one overwrote it some how)
We're actually having a very similar issue, but are using Stripe as a payment processor.
In Stripe, for the customer we can see 2 (or more) payment intents, each with a different order number. All but one of them have timed out, with the one succeeding. However the successful one does not have a corresponding order id in Vendr so the call back fails and the order doesn't get updated.
We do see the basket/order in the vendrOrder (looking up via email). We've seen this issue on two orders, once it had no order number, and once it had an order number of one of the failed transactions. Either way the order is not finalized so it's not in the order dashboard.
Does this sound like the same issue you were having? Did you ever figure anything out?
You'd be better off raising this as a question of it's own. I'd aso do a search of the forum as there are a few posts of a similar situation.
Ultimately your issue is likely to boil down to your orders are some how being edited after the customer has been sent to the payment gateway, be that some code running in an event handler, or your customers navigating back to the site once the payment portal has been launched. Either way, changes to an order after you have gone to the payment gateway will result in the orders order number being reset and thus you'll see the issue you are seeing.
You'll need to review your site to see if you have any code modifying the order after this point, or figure out if your customers are doing something iregular and opening the order in multiple browser tabs etc and making changes after the orders has already been sent to Stripe.
Missing order in Vendr
Hi Vendr team,
We have a strange situation on our hand with an order that is missing in Vendr.
If we look in the payment portal (Mollie) for this order we can see two entries. One has the status payed and the other is expired. They both have an order number and they both have a transaction id.
In the database we only see the expired order with the transaction id set to NULL. We can't find the payed order in the database.
A possible explanation of this issue could be a double-click on the checkout button but that doesn't explain why the payed order isn't visible in Vendr.
Is there any way to find out what happened here?
Kind regards,
Frans
Hi Frans,
What version of the Payment Provider are you using?
I think you could maybe be affected by this issue https://github.com/vendrhub/vendr-payment-provider-mollie/issues/6 which is that Mollie triggers the webhook for non completed orders (which no other gateway does) and so it was reverting the order into another state.
Upgrading should ensure that the order can only become canceled if it was previously in the
Authorized
state.Hi Matt,
We are running version 2.0.0 . Is that the affected version?
Frans
Reading through the github issue I'm wondering if this is the same issue. The payed order is completely missing from vender.
The expired order is present in the database and in mollie. So that seems to be like it should work. Expired in both places.
Are they the same order though? My thought was, the order was finalized, but then Mollie notified you of the expired one and that has reset the paid one, but I could be reading your original post wrong.
Were the orders the same one?
The orders were from the same person with the same product at the same time.
The expired order in mollie is not visible in Vendr but we can find it in the database. The one that is approved in mollie is completely missing in Vendr, even in the database.
I don't know the exact timestamp since mollie doesn't register miliseconds AFAIK but it seems the completed one was the first to be handled by molly if I go by the sortorder:
The ordernumbers and payment Id's for both orders are generated by Vendr but the completed ordernumber and payment id are completely missing from the system.
I was thinking about a doubleclick on the checkout button but even then I should have 2 orders in Vendr right? Since the ordernumber is there?
verlopen == expired
Very weird,
Do you happen to have this Mollie provider hooked up to another environment by accident? Maybe this order was placed on a dev / test environment that was mistakenly configured with the live settings?
That's exactly the first thing I checked. It is hooked up to all environments but local and dev are in testmode.
The other thing that doesn't add up is that both orders in Mollie have exactly the same data, so the client name and everything is exactly the same.
Does that completed order id / number exist in any other environment? It would be very strange for it to be just entirely gone (unless the expired one overwrote it some how)
Did this ever get figured out?
We're actually having a very similar issue, but are using Stripe as a payment processor.
In Stripe, for the customer we can see 2 (or more) payment intents, each with a different order number. All but one of them have timed out, with the one succeeding. However the successful one does not have a corresponding order id in Vendr so the call back fails and the order doesn't get updated.
We do see the basket/order in the vendrOrder (looking up via email). We've seen this issue on two orders, once it had no order number, and once it had an order number of one of the failed transactions. Either way the order is not finalized so it's not in the order dashboard.
Does this sound like the same issue you were having? Did you ever figure anything out?
Hi Kevin,
You'd be better off raising this as a question of it's own. I'd aso do a search of the forum as there are a few posts of a similar situation.
Ultimately your issue is likely to boil down to your orders are some how being edited after the customer has been sent to the payment gateway, be that some code running in an event handler, or your customers navigating back to the site once the payment portal has been launched. Either way, changes to an order after you have gone to the payment gateway will result in the orders order number being reset and thus you'll see the issue you are seeing.
You'll need to review your site to see if you have any code modifying the order after this point, or figure out if your customers are doing something iregular and opening the order in multiple browser tabs etc and making changes after the orders has already been sent to Stripe.
is working on a reply...