Using CampTix Event Ticketing Plugin

CampTix is an easy-to-use, free and open source event ticketing plugin for WordPress.

This article includes info on payment gateways for different currencies, creating tickets, giving refunds, managing and displaying attendees, tracking attendance, failed purchase attempts, and other CampTix tools.

Tickets and Coupons Tickets and Coupons

Selecting a Payment Gateway Selecting a Payment Gateway

There are multiple payment gateways (e.g., PayPal, PagSeguro, etc) that CampTix can use to collect payment from attendees. The main differences between them are the currencies they accept, and their popularity in different regions of the world.

If you want to use PayPal, then your gateway is already setup, and you can start creating tickets whenever you’re ready.

If PayPal doesn’t support your currency, or attendees in your city prefer another gateway, then it’s very important that you select a gateway early on in the organizing process. We’ll need to coordinate the setup with you, and if we don’t already have a plugin to support that gateway, we’ll ask your community to create one.

That process might only take a few days, but if a new plugin needs to be created, then it could take a few weeks, or even a few months. If you don’t get started on that process early, then you might not be able to open ticket sales when you plan to. To get started, contact your mentor or a deputy.

The gateways/currencies we currently support are:

  • PayPal: AUD, CAD, EUR, GBP, JPY, USD, NZD, CHF, HKD, SGD, SEK, DKK, PLN, NOK, HUF, CZK, ILS, MXN, BRL, MYR, PHP, TWD, THB, TRY
  • MercadoPago: ARS, BRL, MXN, VEF, COP
  • KDCpay: INR
  • PayFast: ZAR
  • TrustPay / TrustCard – BGN, CZK, EUR, GBP, HRK, HUF, NOK, RON, TRY, USD
  • PagSeguro – BRL

Top ↑

Creating Tickets Creating Tickets

After your payment methods have been set up, browse to Tickets and create a new ticket, just like you would create a new post or page. Tickets have a few different options and fields, here’s a quick overview:

  • Ticket Title – as the name suggests, this is the ticket title which will be displayed on the ticketing page, an will appear in your PayPal reports and receipts
  • Ticket Excerpt – this is a description of what the ticket includes, like lunch, a T-shirt, parking and so on. The excerpt will appear below the ticket title on the ticketing page.
  • Price – the price of one ticket in the selected currency. You can change the currency Tickets > Setup
  • Quantity – the maximum number of tickets to sell. As soon as this amount of tickets is sold, the ticket is no longer visible on the ticketing page.
  • Availability – optional fields to restrict the availability of the ticket purchase to certain dates. You can use these fields to create early-bird tickets at a cheaper price. To avoid selling tickets during or after your event, it’s a good idea to set the tickets end date to the date of your event.
  • Questions – you can use this section to build the form users have to fill in, before they can purchase their tickets. Make sure you use the built-in question types when appropriate, to enable additional features. For example, the T-shirt Size question type will enable sponsors to view aggregate size counts, so they can send the right number of each size to your camp.

You can save your ticket at any time, and as soon as you’re comfortable with the ticket settings, hit Publish.

If you’d like to test ticket purchases while in sandbox mode, just sign up for a PayPal sandbox account, and then go through the normal checkout process. When you get to PayPal, use that username/password for the sandbox account instead of a real account, and PayPal will create a simulated transaction, rather than charging a real credit card.

Top ↑

Opening Registration Opening Registration

The first step to opening registration is to take CampTix out of sandbox mode. To do that you’ll need to visit the Tickets > Setup > Payment screen. If you’re using PayPal, then select WordPress Foundation from the Predefined Account list. If you’re using another payment gateway, then select No for the Sandbox Mode option.

The second step is to publish the TIckets page that was automatically created when your site was setup. It contains the [camptix] shortcode, which generates the registration form that attendees will fill out in order to purchase a ticket.

Make sure you only have one page with the [camptix] shortcode, and use that page for pretty much everything:

  • List tickets available for purchase
  • Show the attendee and checkout form
  • Show a receipt after returning from PayPal
  • Show an edit attendee information form

The text before and after the shortcode will be shown in all the above cases, so don’t write things like “use the form below…” since there might be no form at all, if there are no more tickets available for sale.

Please include a refund policy on your registration page, saying that refunds are only available within 60 days of any ticket purpose, or declaring that refunds will not be available if you decide not to give refunds.

Please also include a copy of your Recording Policy on the registration page. Here’s an example:

For community-building and promotional purposes, there will be volunteer and/or professional photographers and videographers at the WordCamp event. By attending the event, you consent to your image being used in resulting photos or videos that may show your participation in the WordCamp.

Top ↑

Creating and Using Coupons Creating and Using Coupons

Coupons are discount codes you can give to your attendees. To create a new coupon code, browse to Tickets > Coupons and create a New Coupon. The fields are quite self-explanatory:

  • Title – the coupon code. This is the code people will type in to get their discount. It’s not case sensitive, so Coupon will work the same as COUPON or cOuPOn.
  • Discount – can either be a fixed amount or a percentage, which will be deducted from the ticket price. If a ticket price is $10 and the discount is set to $3 or 30%, people will be able to purchase the ticket for $7.
  • Quantity – the maximum number of times this coupon can be used. Note, that if the coupon quantity is more than one, an event attendee can purchase as much tickets as the coupon quantity will allow them to. This means they are not restricted to a single coupon usage per purchaser. If you’d like a coupon to be used only once, create a coupon and set the quantity to one.
  • Applies to – check the tickets that should be discounted when this coupon code is used. Note that when you create a new ticket, it will not automatically be discounted by the saved coupons. You will have to add them explicitly.
  • Availability – similar to tickets availability, defines the date period when the coupon can be used.

You can save the coupon as a draft at any point, but it has to be Published in order to work.

Also, if no coupons are available (because they’re not published, the quantity is 0, or the availability date has passed) then the field that attendees use to enter a coupon code on the registration form will not be shown.

Top ↑

Refunds Refunds

The Refunds feature allows an attendee to cancel the ticket they purchased and get a full refund. Once a ticket is refunded, it goes back into the pool of available tickets for someone else to buy.

They can access the refund form by clicking on the link in the confirmation e-mail they were sent when they purchased the ticket. If you need to send them the link manually, or want to submit the refund form on their behalf, you can edit their Attendee record and then look for the “Access token” link inside the Attendee Information metabox. Opening that link will take you to the page where you can access the refund form.

If refunds are turned on, but you don’t see the link to the refund form, it may be because the user purchased their ticket with a 100% coupon code, in which case there’s nothing to refund. If you’d like to return their ticket to the pool of available tickets, you can delete their Attendee post.

Refunds are turned off by default, but you can enable them by going to the Setup > General screen. If you’d like, you can choose a cut-off date, after which refunds will no longer be available. That can be useful if you want to have a final head-count a few days before the event starts, or avoid fluctuations in the budget close to the event.

On average, we’ve noticed that about 1-2% of tickets will be refunded, but your mileage may vary.

Top ↑

Attendees Attendees

Under Tickets > Attendees you will find a list of people who have signed up (or who have tried to sign up) for your event. You can use the search box to find attendees by name, e-mail, transaction ID, etc. Attendees can have several different statuses:

  • Published – the form was filled out and payment was completed successfully.
  • Draft – an attendee has filled the purchase form and sent to a payment gateway, but has not completed the payment yet. Draft attendees will be set to Timeout if they never return from the chosen payment gateway, or Published if they complete the process.
  • Pending – the payment was made, but was not completed yet, usually caused by echeck payments, or other payments that need to be reviewed. Pending payments will be processed as soon as their status is changed at the payment gateway if IPN is configured. Pending payments count towards the ticket totals, and are exported together with Published payments. If IPN has not been set up, you will have to process pending payments manually.
  • Cancelled – used when the buyer cancels their payment at the payment gateway.
  • Timeout – when a purchase has been initiated but never completed, a Draft ticket will turn into this state.
  • Failed – used when the payment gateway fails to collect payment, usually because the credit card was declined due to the wrong name/address being entered, insufficient funds, etc. See Failed Purchase Attempts for more details.
  • Refunded – when a ticket is refunded, initiated by the buyer or the seller. You’ll need a properly configured IPN to make this work.

You can further click on any of the attendees is the list to learn more about them. Note that changing statuses, creating or deleting attendees manually, may cause errors in your Revenue reports, so try to avoid that as much as possible.

If you want to track attendance, you can check the ‘Attended the event’ checkbox on each Attendee post, then use the Summarize and Export tools to see how many people attended, or get a list of everyone who attended.

Top ↑

Failed Ticket Purchases Failed Ticket Purchases

It’s normal to see a small percentage of attendees listed as Failed in CamptTix. This happens when the payment gateway rejects their payment method (e.g., PayPal rejected their credit card). That usually happens because the attendee entered their payment details incorrectly, or because the credit card has reached it’s limit. It’s also possible that their bank has detected suspicious activity on the card, and temporarily frozen it.

If an attendee contacts you because they’re having trouble registering, the first step is to ask them to double-check that they are entering everything correctly. It’s important to check more than just the card number, because sometimes banks will reject transactions if the address, phone number, etc don’t match their records exactly. If they have changed their address or phone number, but haven’t updated their bank, that could be the problem.

If that doesn’t work, then the next step is to try using a different payment method, like a debit card, a PayPal account balance, etc.

If that still doesn’t work, then the best thing to do is ask the attendee to contact their bank to find out exactly why the transaction was declined. To protect their privacy, the bank doesn’t provide us the exact reason why they rejected the payment, so the bank is the only entity that can help them.

If you run into any problems, you can also ask a developer for help in the #meta-wordcamp channel on Slack.

Top ↑

Attendees List Attendees List

You can create a list of attendees on any page by using the [camptix_attendees] shortcode. This will create a list of avatars, names, URLs and Twitter handles if provided by the attendees. You can style the list with CSS, each item is fairly easy to target with selectors. You can change the number of columns using CSS, or with the columns attribute, like this:

[camptix_attendees columns="2"]

As of version 1.2, the default number of columns is three.

You can pass a comma-separated list of ticket IDs to the tickets parameter if you want to restrict the list to only attendees who’ve purchased certain tickets.

[camptix_attendees tickets="53,85"]

You can pass a pipe-separated list of Question titles to the questions parameter if you want to show attendees’ answers to custom questions asked on the registration form. Before publicly showing a question, make sure that it isn’t something attendees would consider private.

[camptix_attendees questions="What's your interest in WordPress?|Are you coming in from out of town?"]

Top ↑

Tracking Attendance Tracking Attendance

You can also use CampTix at the registration table during the event, to check-in attendees in real-time. There is a special page on the site that registration volunteers can access with a mobile device or laptop, and check each person in as they show up.

To enable the special page, visit Tickets > Setup > Attendance UI, then click Yes to enable the UI, and Generate a new secret link, then Save Changes. 

Then, copy/paste the secret link into an e-mail to your registration volunteers, and ask them to visit it and test it out, so that they understand how it works. They’ll need to keep the e-mail handy so they can pull up the page during registration.

It’s a good idea to remind them to bring a laptop or mobile device on the day of the event, along with a charger. You’ll need to provide electricity and power strips at the registration table.

For convenience, the page does not require volunteers to log in to the website, only that they have the secret link, so to avoid any malicious changes by random Internet trolls, you should wait until a day or two before the event to enable the page, and then disable it when registration closes.

Top ↑

Summaries, Revenue, and more Summaries, Revenue, and more

If you browse to Tickets > Tools you’ll see a bunch of cool stuff that will help you with your ticketing workflow. Here’s a brief description of each section:

  • Summarize – allows you to create a quick summary of all purchased tickets by their various fields, including ticket type, purchase date, coupon code, and all the various questions you have added to your tickets. This section will help you determine what T-shirt sizes to order, or the number of attendees who require a parking space. You can also export the chosen summary to CSV.
  • Revenue – will give you a quick snapshot of the financials and the total number of tickets sold and remaining. You can compare this data with your PayPal reports to make sure everything is going smooth.
  • Export – allows you to export all your attendee data in various formats. This is useful when you need to work with a badge-printing company (you can just send them the CSV), or print a registration list, or just backup your CampTix data.
  • Notify – allows you to send e-mails to attendees, including the ability to target messages to only certain subsets of attendees. It’s useful to send out reminders, or offers, before or after your event. You can even use shortcodes in your messages to make them more personalized. Hit the Preview button to see what a message will look like. At the bottom of the page you’ll also find a History of sent messages.
  • Reservations — allows you to create a block of reserved tickets that will not appear on the public registration page, but can be accessed through a secret URL. Go to Tickets > Setup > Beta (tab) and Enable Reservations. Once reservations are enabled, you can create reserved ticket blocks at the very bottom of the Ticket Edit screen. The name of the reserved block of tickets will appear in the secret ticket URL, and reserved tickets are not automatically free — so if you want to provide free, reserved tickets for sponsors or speakers, you’ll need to share the secret reserved ticket URL as well as a coupon code with those folks. If you click Release next to a reserved ticket block in the Ticket Edit screen, those released tickets will return to the public pool of tickets.

Tip: Here is a quiz on this article. Read quizzes page if you have any questions about quizzes and how to navigate them.