When a customer purchases a ticket, a WooCommerce order is generated. All information needed for the ticket is stored in a custom field that is associated with the order. The stored data is formatted as a JSON string. When the status of the order is changed to ‘Completed‘ using the JSON string, FooEvents will create an individual ticket for each attendee. Tickets can be viewed in your WordPress admin area by navigating to FooEvents > Tickets in the main menu.
Sending tickets automatically
By default, WooCommerce orders do not automatically complete when payment is received. In the case of physical products, the order would only be completed when delivery of the product is made. As tickets are digital products, the order status can be completed as soon as payment is received as no further action is required. To do so, set your product to “Virtual” and “Downloadable” in the Product Data settings when editing a product. Once this is done, as soon as the relevant payment gateway sends back confirmation to your site that the payment has been successful, the order will automatically be set to ‘Completed‘ and FooEvents will generate the tickets.
Sending tickets on different order statuses
By default, FooEvents will generate a ticket for each attendee when the order status in WooCommerce is changed to “Completed”. You may need tickets to be generated when the order status is changed to a different order status.
Please follow these steps to do so:
- Navigate to FooEvents > Settings in the left sidebar of your WordPress admin area
- Select the General tab and scroll down to the Send on order status option
- Select the relevant status/es using the multi-select box and click Save Changes
Tickets will not be generated unless the status of the order is set to the specified status/es.
Creating custom order statuses
There are a number of plugins and code snippets available that make it possible to register custom order statuses. Provided that they make use of the standard WooCommerce hooks, they should reflect in the Send on order status selection field and trigger ticket generation when selected.
Tickets not sending?
Since FooEvents emails event tickets from your web server, there are a number of possible reasons why people might not be receiving their tickets. Please go through the recommendations in the ‘Why are my tickets not being received?‘ FAQ to troubleshoot the issue.