{"id":21,"date":"2026-09-29T12:50:30","date_gmt":"2026-09-29T17:50:30","guid":{"rendered":"https:\/\/beacon-events.duckdns.org\/demo\/pro-guide\/"},"modified":"2026-09-29T12:50:30","modified_gmt":"2026-09-29T17:50:30","slug":"pro-guide","status":"publish","type":"page","link":"https:\/\/beacon-events.duckdns.org\/demo\/pro-guide\/","title":{"rendered":"Beacon Events Pro: setup guide"},"content":{"rendered":"\n<p class=\"wp-block-paragraph\">Everything you need to get Beacon Events Pro selling tickets, in the order you&#8217;ll do it. It takes about ten minutes. Stuck anywhere? Email <a href=\"mailto:jeff.helpsupport@gmail.com\">jeff.helpsupport@gmail.com<\/a> and you&#8217;ll get an answer from the person who built it.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">1. Install both plugins<\/h2>\n\n\n\n<ol class=\"wp-block-list\"><li>Install the free <a href=\"https:\/\/wordpress.org\/plugins\/beacon-events\/\">Beacon Events<\/a> plugin: Plugins \u2192 Add New, search &#8220;Beacon Events&#8221;, Install, Activate.<\/li><li>Upload Beacon Events Pro: Plugins \u2192 Add New \u2192 Upload Plugin, choose the <code>beacon-events-pro.zip<\/code> you downloaded, Install, Activate.<\/li><li>When Pro asks for your licence key, paste it in. (AppSumo buyers: it&#8217;s on the page where you redeemed your code.)<\/li><\/ol>\n\n\n\n<p class=\"wp-block-paragraph\">No events yet? Go to <strong>Events<\/strong>: the getting-started box can add five sample events and make a Calendar page for you. Coming from another calendar plugin? Use <strong>Events \u2192 Import \/ Export<\/strong> (see step 6).<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">2. Choose how you get paid<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">Go to <strong>Events \u2192 Tickets<\/strong>. Under &#8220;Paid tickets go through&#8221;, pick one:<\/p>\n\n\n\n<ul class=\"wp-block-list\"><li><strong>Stripe Checkout.<\/strong> Paste your Stripe secret key (Stripe Dashboard \u2192 Developers \u2192 API keys \u2192 Secret key, it starts with <code>sk_live_<\/code>, or <code>sk_test_<\/code> while you try it out). Money goes straight to your own Stripe account. We never take a cut.<\/li><li><strong>WooCommerce checkout.<\/strong> Shown when WooCommerce is active. Beacon creates one hidden ticket product per event, and orders appear under WooCommerce \u2192 Orders, using whatever payment methods your shop already has.<\/li><\/ul>\n\n\n\n<p class=\"wp-block-paragraph\">Set your <strong>Currency<\/strong> (three-letter code: USD, EUR, GBP, CAD\u2026). Free RSVPs work without either.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">3. Turn on tickets for an event<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">Open the event. In the editor sidebar, open <strong>Tickets \/ RSVP<\/strong> and switch on <strong>Take RSVPs \/ sell tickets<\/strong>. Then:<\/p>\n\n\n\n<ul class=\"wp-block-list\"><li><strong>Capacity per date<\/strong>: seats for each date of the event (0 = unlimited). A weekly class gets this many seats every week.<\/li><li><strong>Price per ticket<\/strong>: 0 for a free RSVP.<\/li><li><strong>Max per reservation<\/strong>: how many tickets one person can take at once.<\/li><li><strong>Ticket types<\/strong> (optional): early bird, member, VIP\u2026 each with its own price and capacity. With types, the single price is not used; the capacity per date still caps the total.<\/li><\/ul>\n\n\n\n<p class=\"wp-block-paragraph\">Publish, and the booking form appears on the event page with a date picker for repeating events.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">4. Waitlist and reminders<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">Both live under <strong>Events \u2192 Tickets<\/strong>. With the <strong>waitlist<\/strong> on, a full date offers &#8220;join the waitlist&#8221;. When someone cancels, the first person waiting gets the spot (free events) or an email that a spot opened up (paid events). <strong>Reminders<\/strong> email everyone confirmed a set number of hours before the event. Pick 2, 6, 24, 48 or 72 hours.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">5. Check people in at the door<\/h2>\n\n\n\n<ul class=\"wp-block-list\"><li>Every confirmation email has a ticket link with a QR code. Scan it with your phone&#8217;s camera while logged in to WordPress as an editor or admin: green means checked in, amber means already checked in (with the time), red means cancelled, unpaid or not valid.<\/li><li>No phones? <strong>Events \u2192 Attendees<\/strong> has a Check in link on each row and a <strong>Print door list<\/strong> button, grouped by date.<\/li><li><strong>Export CSV<\/strong> gives you the full list for anything else.<\/li><\/ul>\n\n\n\n<h2 class=\"wp-block-heading\">6. Bring your old events, tickets and attendees across<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\"><strong>Events \u2192 Import \/ Export<\/strong> finds what your old plugin left in the database, even if it&#8217;s already deactivated, and copies it without changing anything there. With Pro active it also brings ticket prices, capacity and attendees from The Events Calendar (RSVPs, Tickets Commerce and Event Tickets Plus orders) and bookings from WP Events Manager by ThimPress. Run it again any time: it updates rather than duplicating. Moving several sites? <code>wp beacon import tec<\/code> does the same from WP-CLI.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">7. Let visitors submit events<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">Put the shortcode <code><div class=\"beacon-submit\"><form method=\"post\" action=\"https:\/\/beacon-events.duckdns.org\/demo\/wp-admin\/admin-post.php\" class=\"beacon-submit-form\"><input type=\"hidden\" id=\"_wpnonce\" name=\"_wpnonce\" value=\"e7f4c6faea\" \/><input type=\"hidden\" name=\"_wp_http_referer\" value=\"\/demo\/wp-json\/wp\/v2\/pages\/21\" \/><input type=\"hidden\" name=\"action\" value=\"beacon_submit_event\"><input type=\"hidden\" name=\"back\" value=\"https:\/\/beacon-events.duckdns.org\/demo\/pro-guide\/\"><p class=\"beacon-hp\" aria-hidden=\"true\"><label>Leave this field empty <input type=\"text\" name=\"website\" tabindex=\"-1\" autocomplete=\"off\"><\/label><\/p><p><label>Event title<br><input type=\"text\" name=\"title\" required maxlength=\"200\"><\/label><\/p><p><label>Starts<br><input type=\"datetime-local\" name=\"start\" required><\/label><\/p><p><label>Ends<br><input type=\"datetime-local\" name=\"end\"><\/label><\/p><p><label>Where<br><input type=\"text\" name=\"venue\" maxlength=\"190\" placeholder=\"Venue name, address\"><\/label><\/p><p><label>Category<br><select name=\"category\"><option value=\"\">\u2014<\/option><option value=\"4\">Community<\/option><option value=\"7\">Kids<\/option><option value=\"8\">Meetings<\/option><option value=\"15\">Music<\/option><option value=\"12\">Sports<\/option><option value=\"13\">Workshops<\/option><\/select><\/label><\/p><p><label>Details<br><textarea name=\"description\" rows=\"5\" maxlength=\"5000\"><\/textarea><\/label><\/p><p><label>Your name<br><input type=\"text\" name=\"name\" required maxlength=\"190\"><\/label><\/p><p><label>Your email<br><input type=\"email\" name=\"email\" required maxlength=\"190\"><\/label><\/p><p><button type=\"submit\" class=\"wp-element-button\">Submit event<\/button><\/p><\/form><\/div><\/code> on any page. Submissions arrive as pending events for you to approve, and you get an email for each one.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">Questions<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">Email <a href=\"mailto:jeff.helpsupport@gmail.com\">jeff.helpsupport@gmail.com<\/a>. You can also see all of this working on the <a href=\"https:\/\/beacon-events.duckdns.org\/demo\/event\/pottery-for-beginners\/\">demo site<\/a>, where the booking form is live (bookings there are wiped every night).<\/p>\n\n","protected":false},"excerpt":{"rendered":"<p>Everything you need to get Beacon Events Pro selling tickets, in the order you&#8217;ll do it. It takes about ten minutes. Stuck anywhere? Email jeff.helpsupport@gmail.com and you&#8217;ll get an answer from the person who built it. 1. Install both plugins Install the free Beacon Events plugin: Plugins \u2192 Add New, search &#8220;Beacon Events&#8221;, Install, Activate. [&hellip;]<\/p>\n","protected":false},"author":0,"featured_media":0,"parent":0,"menu_order":0,"comment_status":"closed","ping_status":"closed","template":"","meta":{"footnotes":""},"class_list":["post-21","page","type-page","status-publish","hentry"],"_links":{"self":[{"href":"https:\/\/beacon-events.duckdns.org\/demo\/wp-json\/wp\/v2\/pages\/21","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/beacon-events.duckdns.org\/demo\/wp-json\/wp\/v2\/pages"}],"about":[{"href":"https:\/\/beacon-events.duckdns.org\/demo\/wp-json\/wp\/v2\/types\/page"}],"replies":[{"embeddable":true,"href":"https:\/\/beacon-events.duckdns.org\/demo\/wp-json\/wp\/v2\/comments?post=21"}],"version-history":[{"count":0,"href":"https:\/\/beacon-events.duckdns.org\/demo\/wp-json\/wp\/v2\/pages\/21\/revisions"}],"wp:attachment":[{"href":"https:\/\/beacon-events.duckdns.org\/demo\/wp-json\/wp\/v2\/media?parent=21"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}