Support

Home Forums Event Espresso Premium Ticket status sold out but no tickets sold

Ticket status sold out but no tickets sold

Posted: February 27, 2017 at 1:49 pm

Viewing 36 reply threads


Michal

February 27, 2017 at 1:49 pm

We are testing EE4 and set up events with various ticket prices and were adding them to the cart without ever removing them and getting to the actual registration. The version tested is EE4.9.31.p. We have a limit of 14 tickets for the events with 3 different tickets but one of our tickets has a status of sold out even though there are no registrations/nothing sold per screen shot: http://prntscr.com/ee5b1q.
Any ideas? Thanks


Josh

  • Support Staff

February 27, 2017 at 2:16 pm

The system actually should close off sales based on ticket reservations, which are temporary (and set to a timer). How that works is when a transaction is in progress, their ticket selections will be reserved for a few hours. When the transaction gets finalized without paying (i.e. they use an invoice payment option or similar), the ticket reservations get removed and those tickets are released back to the inventory. If the transaction gets abandoned before paying or finalizing, the tickets will be released back to inventory when the timer count down reaches 0.
The above process prevents overselling. If you go to Event Espresso > Transactions then look at the Failed Transactions, are there Transactions in progress?


Michal

February 27, 2017 at 2:22 pm

Josh, thanks I checked the Failed Transactions and the transactions are there but they date back a few days and not a few hours so the tickets weren’t released. http://prntscr.com/ee5rar
Also is it possible to change the countdown timer value?


Josh

  • Support Staff

February 27, 2017 at 2:32 pm

Changing the countdown timer value is possible, but doing so will not help since the failed transactions are a few days old.

We can go in and look at the database and figure out which tickets have stuck reservations (and release them back to the inventory) if you can complete the secure form on this page:

https://eventespresso.com/send-login-details/


Josh

  • Support Staff

February 28, 2017 at 9:01 am

I’m looking at an event that has a limit of 12, with no registrations, and was switched to sold out. Do you know if the 12 registrations were trashed and deleted right away or did they get automatically deleted via the cron because the registration form didn’t get filled out?


Michal

February 28, 2017 at 9:53 am

Nothing was deleted – We just added to the cart and never filled out registration forms as we are testing. I set up the event “My New Event” yesterday with 4 spaces and then added them to my cart on two separate browsers- no registration although I may have looked at the registration page but never completed it.


Michal

February 28, 2017 at 10:09 am

Don’t know if this helps: we wanted to add Status to our registrations so used some EE functions to pull out the counts and that shows spaces open but the system (or whatever you use to report that the course is sold out) still believes the classes are sold out. See print screen http://prntscr.com/eei0kg


Josh

  • Support Staff

February 28, 2017 at 10:24 am

May I ask which EE functions you’re using there? The functions you’re using to display that information are likely not factoring in the TKT_Reserved values.

A little update on what I’ve found so far: I’ve set the registration session to expire in 8 minutes and ran the same test you did (where the registration form page gets loaded up but not submitted). From the tests I’ve done so far, the scheduled cron to remove the tickets from reservation counts is working. I’m still looking through things for clues, and have installed some debug bar plugins, a plugin that lists the scheduled crons, and a plugin for viewing the database.


Michal

February 28, 2017 at 10:40 am

We used 2 different ways to display the available spaces.

first code path used:
if ( $datetime instanceof EE_Datetime ) {
$limit = $datetime->get(‘DTT_reg_limit’);
$remain = $datetime->spaces_remaining( true );
if ( $datetime->sold_out() ) {
$remaintext = ‘Sold out‘;
}
if ( $limit == EE_INF ) {
$remaintext = ‘A lot available‘;
} else {
$remaintext = sprintf( _nx(
‘%1$sOne space available%3$s’,
‘%1$sThere are %2$s spaces available%3$s’,
$remain, ‘event ticket info’, ‘event_espresso’ ),
‘, $remain, ‘
);
}
echo $remaintext;
}else{
echo “==========”;
}

Second way:
$EventMainData = EEM_Datetime::instance()->get_most_important_datetime_for_event($post->ID);
$Reserved = $EventMainData->reserved();
$Limit = $EventMainData->reg_limit();


Michal

February 28, 2017 at 10:50 am

I noticed on the back end that the ticket is now cleared but the front-end still displays this as sold out


Josh

  • Support Staff

February 28, 2017 at 11:53 am

I went into the database and removed the ticket reservations. You can hit the Publish button to restore the sold out events.

I’m fairly certain that the stuck reservations are happening because the Multi Event Registration cart is getting tickets added to the cart after the session is expired. So while you’re testing/working on things, you can avoid the issue you’re seeing by visiting the /registration-cancelled/ page before and after you test the checkout process.


Josh

  • Support Staff

February 28, 2017 at 11:58 am

With regards to getting an accurate ticket available count:

Reserved tickets alone won’t give you the numbers you need to calculate how many tickets are available. You’ll also need the sold count and add the sold count to the reserved count to get the total number of tickets that aren’t available at the moment (the reserved count can fluctuate).


Michal

February 28, 2017 at 12:09 pm

How does my session expire before the items are going into the cart? I am trying to add tickets to the cart and then simply leave the process once items have been added. If my end-users go to the site and add items to their cart but never register isn’t that going to cause the same issue? Is there a way to clean this all up and force the release of the tickets.


Josh

  • Support Staff

February 28, 2017 at 12:25 pm

If you have a tab or browser window open from a previous registration session and it’s been over an hour since you first hit the registration form step, your session is expired.

Normally when your end-users go to the site and add items to their cart but never issue, there’s a cron scheduled to release the tickets back into the inventory.


Michal

February 28, 2017 at 12:36 pm

Ok thanks – I will check that because I added the items pretty much within a few minutes of each other on 2 separate browsers and then tried to add a class again and the tickets showed as sold out.


Michal

February 28, 2017 at 6:30 pm

The event that had the “Sold Out” ticket is no longer “Sold Out” but the quantity available is 0 and the dropdown does not allow one to select additional tickets. Am I missing something? Thank you


Josh

  • Support Staff

March 1, 2017 at 10:12 am

Yes, I forgot to mention this earlier. In the Advanced editor section of that first ticket, you’ve got the minimum quantity set to 10, and the maximum quantity set to 24. Since the math involved with those limits doesn’t work with the actual limits for the ticket and ticket per order, it’s showing a 0 there. You can remove those limits after clicking on the gear icon in that first ticket row.


Michal

March 1, 2017 at 11:13 am

OK that solved that problem – however we have since created additional events and not completing the registrations after adding them to the cart still generates the SOLD OUT message. The error is very reproducible. All you need to do is create an event, add tickets to your cart and never proceed to register. The tickets are not released and the system is confused. I saw other users had similar problems. What is the suggested fix for this as this is going to cause havoc in our ability to sell our classes.


Josh

  • Support Staff

March 1, 2017 at 11:51 am

I’ve got the same question and I’ve sent a note over to the developers. So to be clear if you add tickets to the cart, and proceed to registration but stop there, the ticket reservations get removed via a cron task. If you add tickets to the cart and don’t proceed to registration the cron task isn’t set. So one solution may be to set a cron when tickets get added to the cart, or another solution may be to not set reserved tickets right away and wait until they proceed to register.


Michal

March 1, 2017 at 1:57 pm

I think it didn’t matter whether we added to the cart and left it in the cart or proceeded to the registration screen and then abandoned it before doing anything (actually completing the registration). For the cron task, I thought your system has one that is set to remove the reservations – so how would this be different.
I also think that if you don’t reserve the tickets you could end up with race conditions if for some reason a lot of people grab tickets at the same time and can get the tickets and register at different times. Before the registration you would need to check if the user can actually register. Please let us know what your developers say because as is the system isn’t really usable.


Josh

  • Support Staff

March 1, 2017 at 4:49 pm

Hi Michal,

It actually does matter whether you proceed to registration vs. not proceed to registration. When you proceed to registration, the cron event to remove the reservation gets scheduled. You can see the cron get added when you proceed to registration if you install the wp-crontrol plugin.


Josh

  • Support Staff

March 1, 2017 at 5:36 pm

If you’re so inclined you can try out this branch:

https://github.com/eventespresso/event-espresso-core/tree/BUG-10537-cart-ticket-reservations

and verify whether it meets the usable criteria.


Michal

March 2, 2017 at 3:29 pm

We tried it but it does’t really work for us. It skips the cart screen and doesn’t let us add multiple events. Is that what it is supposed to do?


Josh

  • Support Staff

March 2, 2017 at 3:45 pm

No it should still let you add multiple events to the cart, as long as the Multi Event Registration add-on is activated. It sounds like you need to reactivate the Multi Event Registration plugin. (The Multi Event Registration add-on will self-deactivate when the Event Espresso core plugin is not activated).


Michal

March 3, 2017 at 3:04 pm

So we did quite a bit of testing and I think the issue has to do with the Multiple Event Registration Plugin. When the plugin is disabled and you add only 1 event at time to the cart (regardless of the number of tickets) the problem does not manifest itself. Tickets are released.
the minute the Multiple event registration plugin is activated we have an issue. If we proceed to the registration and then “cancel the registration” the tickets are released and previously booked tickets are released as well (so those that were added to the cart but left there without going to the registration). Basically, tickets are not released if you don’t proceed to registration.


Josh

  • Support Staff

March 3, 2017 at 3:34 pm

If we proceed to the registration and then “cancel the registration” the tickets are released and previously booked tickets are released as well (so those that were added to the cart but left there without going to the registration).

Were those previously booked tickets from another browser or within the same browser where those could have been added in a previous session.

Did the above happen with the branch I sent a link to activated or was the current release of Event Espresso core activated?


Michal

March 3, 2017 at 6:42 pm

Hi Josh
Here is the summary of the tests I ran:

Createe a new event with 10 tickets
Scenario #1.
Add 3 tickets to cart
Return to list
Add 7 tickets to cart -> Event sold out
Go to Cart –
Go to Registration
Cancel Registration – all 10 tickets returned

Scenario #2
Add 10 available tickets to cart
Go to classes cart
Switch to another page
Wait 10 minutes
Events are still in the cart.
Logged out of the system
After 1 hour logged in under different id – event is sold out – tickets have not been released.
1.5 hours later: Logged in as same user – events are not released.
2 hours later: Logged into a different computer/different ip address same user id – event is sold out.

This is reproducible and happens everytime.
We are using the following:
Wordpress 4.7.2
EE Version 4.9.31.p
MER Version 2.0.11.p
We are hosted by siteground.
Users have to be logged in in order to use the test system.


Josh

  • Support Staff

March 6, 2017 at 11:27 am

Did you try the above tests with the BUG-10537-cart-ticket-reservations branch?


Michal

March 6, 2017 at 11:59 am

Hi Josh,
Yes we are – here is what we have http://prnt.sc/egsp0x.


Josh

  • Support Staff

March 6, 2017 at 12:04 pm

When did you last pull the changes for that branch? Is it up to date?


Michal

March 6, 2017 at 12:09 pm

when you emailed us the information so on March 1st


Josh

  • Support Staff

March 6, 2017 at 1:07 pm

You’ll need to pull the latest changes from that branch, there’s been work done on it since then.


Michal

March 10, 2017 at 6:55 pm

We pulled the latest changes and that didn’t work. We then pulled 4.9.32.p and tested that version and the tickets are still not being released. We also can’t release anything with the new maintenance function. Any thoughts? The problem is really reproducible. Create event with multiple ticket types. Add event to cart (either all tickets at once or over several tries), goto cart but never proceed to registration and the event is never released and shows up as SOLD OUT and never releases.


Josh

  • Support Staff

March 13, 2017 at 11:41 am

The problem isn’t reproducible on our end with the BUG-10537-cart-ticket-reservations branch.

With regards to the Reset button not working for you, when you go to the maintenance page and hit the reset reservations button, do you have any open windows with a transaction in progress? The reset button will only release tickets where a transaction is not in progress.


Michal

March 13, 2017 at 11:52 am

I don’t know – we can reproduce this on our end with all the versions you have released including the last one. we are going to try and code our own mechanism to try and release tickets.

We haven’t modified anything when adding to the cart. The first few times we run after a clean install we don’t see the problem but we once it happens it happens repeatedly for subsequent events and makes the plugin unusable.
For our test system, we force a login. So, I logged out of the system and then tried to release tickets but couldn’t. We have no way to clean out the tickets that are in this state (on our staging).

If we want to try and implement a job to go through reserved tickets and see how long they have been reserved for is there a structure we should be looking at?


Josh

  • Support Staff

March 13, 2017 at 2:20 pm

You can open up an issue on our Github repository and one of the developers can follow up:

https://github.com/eventespresso/event-espresso-core/issues


Josh

  • Support Staff

March 30, 2017 at 1:36 pm

Update:
Event Espresso 4.9.35.p + an update to the Multi Event Registration add-on were released today and they include fixes for the issue reported here.

Viewing 36 reply threads

The support post ‘Ticket status sold out but no tickets sold’ is closed to new replies.

Have a question about this support post? Create a new support post in our support forums and include a link to this existing support post so we can help you.

Event Espresso