New WPRaffle 7.0 is here. Rebuilt for modern WordPress, with ten new tools. See what's new →

Documentation / Previous versions / Generating Tickets – how it works

Configuration Settings · Version 6 and earlier

Generating Tickets – how it works

Previous version

This guide is for WPRaffle version 6 and earlier. Using version 7? See How customers order.

Order Status

The Raffle Ticket Generator creates the raffle tickets when the order is paid. In WooCommerce, the order status tells us whether an order has been paid. WooCommerce “processing” status tells the plugin that it is time to generate a ticket. Pending or on-hold tells us that the order has not been paid for. This is important because most of the support issues we see are regarding these order status. When an order is placed and the status is properly set to a “paid” status, the tickets will show up in the order confirmation and the email confirmation.

A simply test to check if the payment gateway is an issue is to place the order “on-hold” and then update/save.  Then put the order to processing and update/save.  If tickets are then generated and appear in the order details screen, then the payment gateway is not sending the proper woocommere order processing hooks.

A Note About Payment Gateways:

Paytriot in the UK is one example – The Paytriot plugin for payment does not follow the WooCommerce standard of using hooks and filters to trigger an event. They only change the status in the db. Our plugin does not search the db for many reasons. The main one is we chose to follow the WooCommerce standards and minimize overhead. We also have many customers with tens of thousands or hundred of thousands of orders – by ignoring the hook and searching the db for new orders, it can create massive unnecessary server overhead. We have offered to try and help Paytriot fix their plugin, but we are in America and they will not work with an American company. As a result and because we have so many UK customers – we have written an add on plugin to search orders and issues the order hooks and triggers. https://online.wpraffle.com/product/raffle-ticket-generator-order-processing-cron/

There are some automatic order status management plugins that will change the order status in bulk. While a great idea in concept, all of them that we have tested simply are changing the order status in the database. They do not trigger the order status hook. Since we look for the WooCommerce order status as a trigger, if the bulk status manager never issue the trigger, the Raffle Ticket Generator plugin is never told that order is now paid.

A Note About Payment Options:

We get a lot of questions regarding payment processors. We like and recommend Square, and  Stripe. They all work perfectly and are easy to setup. As for the currency or do we work with this processor or that processor. Our plugin is simply an add-on to WooCommerce. We generate based on the WooCommerce order status. The Raffle Ticket Generator plugin does not care about pricing or payment other than we have to know the order is paid.

Using Batch Order Processing Plugins

A lot of customers are using batch order status plugins. So far we have yet to see one that works properly that uses the proper WooCommerce hooks. They all seem to change the order status in the database but do not actually change the order status via WooCommerce. We generate the tickets upon WooCommerce “telling” us that an order has been paid for. If you are using a batch order status plugin and the tickets are not generating, try to MANUALLY change the order status to “on-hold” and then save it. Then MANUALLY change it to “processing” and save it. If the tickets are generating, the plugin is functioning as it is supposed to and the problem is with your batch processor.

Ready to Run Your First Raffle?

Install WPRaffle on your own WordPress site and start selling numbered tickets today.