# September 2026 - Version 5.61
September 2026 - Version 5.61
(Release Date: September 1st)
Table of Contents
- At a glance
- Possible breaking changes
- Action required
- What's new
- What's fixed
- Technical reference
- How to upgrade
📋 At a glance
This month is about precision: conditional registration questions can now combine conditions with AND, OR, or your own expression instead of firing on any single match; you control the order sessions appear in your agenda and at checkout; and you can set a background color on one event without touching the rest. Public event pages also went through an accessibility remediation pass and moved onto a newer framework version, so this is a good month to walk one event end to end after you upgrade.
| Update | What it does | For whom | Setup |
|---|---|---|---|
| 🧩 AND / OR / Custom condition logic | Combine conditions on a registration question so it appears only when all are met, or on your own expression like 1 AND (2 OR 3) | Organizers | 📦 Events 5.61 |
| 🎟️ Session sort order | The Sort Order field on Session now drives session order in the agenda and at checkout, with a per-ticket override | Organizers | Mixed (package + webapp) |
| ♿ Accessibility remediation | Public event pages remediated against WCAG 2.1 AA: heading structure, list markup, ARIA labeling | Everyone | Automatic |
| 🎨 Event-level background color | Set a background color on a single event that overrides Event Group and Event Settings | Organizers | 📦 Events 5.61 |
| 📝 Post-Registration Forms get their own title | Forms no longer inherit the post-event survey wording, so registrants stop seeing "thank you for attending" before the event | Everyone | Automatic |
| 🔄 Registration processing reliability | The every-minute registration job no longer stops silently, and the batch job survives an upgrade from before 5.54 | Organizers | 📦 Events 5.61 |
Some changes ship in the Events 5.61 Salesforce package and need to be installed by an admin; others ship automatically in our September webapp release and are live for everyone as soon as it goes out. Each item below is tagged so you can tell which is which.
⚠️ Possible breaking changes
Three changes in this release can alter something you have already set up, without anyone editing it and without an error message. None of them affect every customer. Each one below opens with the question that tells you whether it is you. Expand it for the detail and the query that answers it.
Do you have numbers in the Session Sort Order field? Your session order will change.
Sort Order has existed on Sessions for a while but nothing read it, so typing a number in did nothing. This release makes it real: it now controls the order sessions appear in your agenda and at checkout. Any values already sitting in the field, whether set deliberately, loaded by an import, or left over from testing, take effect the moment you have both the package and the webapp release, with nobody having edited the event.
Two reassurances. Days never move: reordering happens only within a single day, so a multi-day event keeps Day 1 before Day 2. And if no session has a Sort Order value, nothing changes at all, because sessions without a value keep sorting by start time and name. One trap: 0 counts as a value, not as empty, so to restore the previous order the field has to be blank rather than zero.
To find out whether you are affected, any non-zero result means at least one event will reorder:
SELECT COUNT(Id) FROM conference360__Session__c
WHERE conference360__Sort_Order__c != null
Did you reword or translate the form and survey title yourself? Re-apply it to forms.
Post-Registration Forms and Post-Event Surveys used to share a single title, which meant survey wording ("Thank you for attending this event...") appeared on forms registrants see immediately after checkout. They are now separate, and Post-Registration Forms read a new label of their own.
If you never changed that wording you need to do nothing, including if you rely on our translations: the new label ships translated in all 37 supported languages. If you did write your own version, it stays on your surveys but no longer applies to your Post-Registration Forms, which will show our new default, "Please take a few moments to complete this form." To get your wording back, add an entry for the new MSG_POST_REG_FORM_TITLE key. Any result here means you have an override that will stop applying to forms:
SELECT Id, bt_stripe__Data_Dictionary_Group__c, bt_stripe__Locale__c
FROM bt_stripe__Data_Dictionary_Entry__c
WHERE bt_stripe__Data_Dictionary_Values__c LIKE '%MSG_SURVEY_TITLE%'
Using your own CSS on event pages, or embedding an event in your own site? Walk one event after you upgrade.
Two changes move the underlying structure of public event pages this month: the accessibility work re-leveled headings and marked lists up properly, and the pages moved onto a newer version of the framework they are built on. How you configure an event does not change, and we updated our own styling to match. But a styling rule of yours that targets a heading which changed level will quietly stop applying, so your branding partially reverts with no error to tell you.
Walk one event end to end after the release at both desktop and phone widths, and do the same for any event you embed in your own site. Custom_CSS_Url__c exists on Event, Event Settings, and Event Group, so check all three:
SELECT Id, Name FROM conference360__Event__c WHERE conference360__Custom_CSS_Url__c != null
One deliberate change worth knowing about: warning messages at checkout no longer fade away on their own. They stay until dismissed, so anyone reading slowly or using a screen reader does not miss them.
🔧 Action required
Installing packages manually? Check your Payments version first. Events 5.61 requires Blackthorn Payments 6.59 or later and Blackthorn Base 1.66 to be in place before Events installs. Those minimums did not change this release, so if you are current on August you already meet them. Blackthorn Payments did release this month as 6.69; see the Payments release notes for what is in it. If you upgrade through the Candy Shop, install order is handled for you automatically.
Page Designer beta participants: an administrator has to click Update Picklists, once. If your org installed the Events package before May 2026, the Page Designer option may be missing from an event's UI Experience field, because a rename in May left upgrading orgs holding the old Flex value. Upgrading to 5.61 does not fix this on its own.
There is a second, quieter effect: any event set to Page Designer before May has been rendering the standard Tabbed layout instead of your design, with no error shown. An administrator needs to click Update Picklists once on the Blackthorn Events admin page, then re-select Page Designer on each affected event. To find them:
SELECT Id, Name FROM conference360__Event__c WHERE conference360__UI_Experience__c = 'Flex'
Full detail is in the Page Designer beta release notes.
✨ What's new
Items tagged Salesforce upgrade required are part of the Events 5.61 package and need to be installed by an admin. Items without a tag are already live for everyone, because they shipped automatically in our September webapp release.
🛒 Registration & checkout
Combine conditions with AND, OR, or your own expression (Salesforce upgrade required)
Conditional registration questions previously appeared as soon as any one of their conditions was met. You can now choose how conditions combine: OR for any condition, AND for all of them, or Custom to write your own expression referencing condition numbers, for example 1 AND (2 OR 3). Existing questions keep behaving exactly as before, because OR is the existing behavior.
Post-Registration Forms have their own title
Post-Registration Forms and Post-Event Surveys no longer share one title. Forms now default to "Please take a few moments to complete this form.", and each can be worded and translated separately, so registrants stop reading a thank-you-for-attending message before the event has happened. See Possible breaking changes if you customized the shared title.
🎟️ Sessions & agenda
Control the order sessions appear (Salesforce upgrade required, plus the webapp release)
The Sort Order field on Session now drives the order sessions appear in your agenda and at checkout, and a new per-ticket Sort Order on Event Item Session lets one ticket present its sessions in a different order from another. Reordering happens within a day, so multi-day events keep their days in sequence. If you already have values in Sort Order, read Possible breaking changes before you upgrade.
🌐 Event pages & branding
Set a background color on a single event (Salesforce upgrade required)
Background color could previously only be set at the Event Settings or Event Group level, so a single event that needed to look different meant changing settings shared with other events. You can now set Background Color (#) directly on an Event, as a 6-character hex value, and it overrides both.
Accessibility remediation on public event pages
Public event pages have been through an accessibility remediation pass covering heading hierarchy, list markup, and ARIA labeling, informed in part by an external accessibility review of our public event pages. Checkout warning messages now also stay on screen until dismissed rather than fading out on a timer.
Embed content with raw HTML iframes (enabled per org by Blackthorn)
Custom content now accepts raw HTML <iframe> embeds alongside the existing [embed] bbcode, so you can paste an embed snippet straight from the source without translating it first.
This sits behind the same per-org switch as the existing iframe embeds, so it is not on by default. If iframe embedding is not enabled for your org, an embed renders as plain text rather than as a player. Contact Blackthorn Support to have it enabled. See Advanced Embedding.
Platform update: newer framework version
The event webapp moved from Angular 16 to Angular 18. There is nothing to configure and no change to how you set up an event, but because it moves page structure it is the reason for the CSS check in Possible breaking changes.
✅ Check-in
Control who sees full check-in error detail (Salesforce upgrade required)
Mobile Check-In records failed Salesforce sync operations in a per-event Error Logs screen. Anyone can open the list and read a plain-language description of what went wrong; full technical detail is now limited to admins and to users you grant a new custom permission. The Error Logs screen itself is covered in the Mobile Check-in app release notes.
🐛 What's fixed
Items tagged Salesforce upgrade required are part of the Events 5.61 package and need to be installed by an admin. Items without a tag are already live for everyone, because they shipped automatically in our September webapp release.
🛒 Registration & checkout
- Registration failing with "Duplicate ID in list" (Salesforce upgrade required): Previously, an attendee who had already been added to an event through campaign sync could fail with a "Duplicate ID in list" error when they subsequently registered themselves on the public event page. Now the self-registration completes.
- State/Province not offered as a picklist outside four countries: Previously, the State/Province field rendered as a picklist only for the US, Canada, Australia, and New Zealand, and as free text everywhere else, so registrants in other countries typed values that did not match Salesforce State and Country picklists. Now the picklist renders for those countries too.
- Waitlist registrations losing attendee detail: Previously, joining a waitlist did not persist Salutation, Title, Company, Address, or Dietary Restrictions onto the Attendee record, so information the registrant had entered was missing once they were promoted. Now those values are saved on the waitlist path.
- Missing required session showing a generic error: Previously, when a required session had not been chosen at checkout, the message did not say who it applied to. Now it names the attendee who still needs to choose, so the person registering knows exactly what to fix.
- Stripe Checkout iframe rendering very small on mobile: Previously, on Dynamic UI events the Stripe Checkout iframe could render at a fraction of its needed size on mobile. Now it sizes correctly.
- Validation warning that would not clear: Previously, the "Please correct all the invalid fields" warning could stay on screen after the fields had been corrected and registration succeeded. Now it clears.
- Conditional questions rendering in an inconsistent order: Previously, questions inside a conditional group could appear in a different order depending on the logic mode, and checkbox questions nested in a conditional group ignored the sort order set in Form Builder. Now order is consistent across AND, OR, and Custom modes, and nested checkbox questions honor Form Builder order.
- Picklist options longer than 255 characters failing silently after submission (Salesforce upgrade required): Previously, a picklist form option longer than the field could store was accepted at build time and failed later, after a registrant had submitted. Now it is rejected while you are building the form.
- Post-event surveys force-expired after 30 days: Previously, post-event surveys were being expired 30 days after the event, cutting off responses. Surveys that had started expiring are reachable again. (Released off-cycle in August ahead of this version; already live.)
🌐 Event pages & UI
- Selected buttons rendering white instead of your brand color: Previously, selected-state buttons including donation presets, Edit, and Apply could render white on white rather than picking up your brand color. Now they use your color.
- Vimeo videos showing a black screen: Previously, a Vimeo video in the Join Video Stream popup could show a black screen instead of playing. Now it plays.
- Event Group listing keeping the previous event's translations: Previously, navigating back from an event to an Event Group listing could leave the previous event's translations in place. Now the listing shows its own.
- Framework migration regressions: A set of visual and interaction regressions introduced by the Angular 18 and Material Design Components migration have been corrected across the event pages.
🗺️ Venue maps
- Pin losing all but one session (Salesforce upgrade required): Previously, assigning multiple sessions to a single pin in Venue Map Manager kept only one of them. Now all assigned sessions are kept.
- Pins that could not be reordered (Salesforce upgrade required): Previously, there was no way to change pin order once pins were placed. Now pins can be reordered by dragging.
- Copy Venue Maps copying from two events (Salesforce upgrade required): Previously, changing the source event in "Copy Venue Maps" copied maps from both the original and the newly chosen event. Now only the chosen event's maps are copied.
🔄 Salesforce & admin
- Registration processing stopping silently (Salesforce upgrade required): Previously, the scheduled job that processes event registrations every minute could stop rescheduling itself and stay stopped, with nothing surfaced to an admin, leaving registrations to be picked up only by the hourly fallback. Now the job keeps rescheduling itself.
- Registration batch job failing after an upgrade (Salesforce upgrade required): Previously, orgs upgrading from a package version earlier than 5.54 could see the Event Registration batch job fail. Now it completes after the upgrade.
- Campaign member creation failing on large events (Salesforce upgrade required): Previously, creating campaign members for a large event could fail with "Too many query rows" and interrupt other work running in the org at the same time. Now it completes without affecting unrelated jobs.
- Organizers unable to search events in the Attendee Registration Component (Salesforce upgrade required): Previously, on a freshly installed org, users with the Blackthorn Events (Organizer) permission set could not search for events in the Attendee Registration Component. Now the search works, because the permission set grants the field access it needs.
- Blank keyword created from the Event Builder dropdown (Salesforce upgrade required): Previously, clicking the icon area of the keyword dropdown in Event Builder created a blank, unsaved keyword. Now it does not.
- Webex webinar creation rejected by password policy (Salesforce upgrade required): Previously, creating a Webex webinar could fail when the generated password did not satisfy the tenant's special-character policy. Now the generated password satisfies it.
- Page Designer missing from the UI Experience field (Salesforce upgrade required): Previously, orgs that installed the Events package before May 2026 kept the old Flex value after a rename and never received the Page Designer value. The value is restored in this package, but restoring it is not automatic. Page Designer beta participants only; see Action required above.
Known Issue reference numbers for this release are being finalized with Support and will be added on publish.
🛠️ Technical reference
This section is intended for Salesforce admins. Field API names, permission set details, and configuration notes are grouped by the feature they relate to.
Conditional logic: AND / OR / Custom (3 fields)
- Form Element · Condition Logic Type (
Condition_Logic_Type__c), Picklist. Values OR (Any) (default), AND (All), Custom Logic. Determines how multiple conditions are combined to show or hide this question. OR shows the question if any condition is met; AND shows it only when all are met; Custom uses the expression below. Because OR is the default and matches the previous behavior, existing questions are unaffected. - Form Element · Condition Logic Expression (
Condition_Logic_Expression__c), Text (255), no default. Boolean expression used when Condition Logic Type is Custom. References condition numbers with AND, OR, and parentheses, for example1 AND (2 OR 3 OR 4). Ignored unless the type is Custom. - Form Element Condition · Condition Number (
Condition_Number__c), Number (18,0), no default. Stable integer reference for this condition, used to reference it from a Custom logic expression.
Session sort order (1 field)
- Event Item Session · Sort Order (
Sort_Order__c), Number (3,0), no default. The order this session should be placed in for this ticket. Overrides the Session-level Sort Order.
The Session-level field it overrides, conference360__Session__c.conference360__Sort_Order__c, already existed. What changed is that it is now read. See Possible breaking changes.
Event-level background color (1 field)
- Event · Background Color (#) (
Background_Color__c), Text, no default. Event-level background color override, as a 6-character hex value with no pound symbol. If set, overrides the Background Color on Event Settings and on Event Group.
Waitlist spot-offer email templates (7 fields, Next-Gen Capacity only)
These fields ship in package 5.61, but the behavior behind them only runs when Next-Gen Capacity is enabled for your org, which is off by default. You will see the fields on your page layouts; you will not see the emails unless the feature is turned on.
- Event · Spot Offer (Paid) Email (
Spot_Offer_Paid_Email__c), Lookup. Template auto-sent when a waitlisted attendee holding a paid ticket is offered a spot. - Event · Spot Offer (Urgent) Email (
Spot_Offer_Urgent_Email__c), Lookup. Template auto-sent when a waitlisted attendee is offered a spot and the event starts within the urgent threshold. - Event · Spot Offer Expired Email (
Spot_Offer_Expired_Email__c), Lookup. Template auto-sent when an attendee's spot offer expires. - Session · Spot Offer (Free) Email (
Spot_Offer_Free_Email__c), Lookup. Session-level equivalent for a free session. Falls back to the Event's template when blank. - Session · Spot Offer (Paid) Email (
Spot_Offer_Paid_Email__c), Lookup. Session-level equivalent for a stamped session price. Falls back to the Event's template when blank. - Session · Spot Offer Expired Email (
Spot_Offer_Expired_Email__c), Lookup. Session-level expiry template. Falls back to the Event's template when blank. - Event Settings · Spot Offer Urgent Threshold (Hours) (
Spot_Offer_Urgent_Threshold_Hours__c), Number, default 24. Number of hours before an event starts within which a waitlist spot offer is treated as urgent.
Kiosk Mode post check-in message (2 fields, groundwork only)
These two fields, and the new Kiosk tab on the Event Settings record page that holds the first one, ship in 5.61 as groundwork for Kiosk Mode. Kiosk Mode is not released yet; general availability is currently planned for October. Until Blackthorn enables it for your org the tab and the message are inert: you can author a message, but no attendee will see it. Nothing else in your org changes and there is nothing you need to do with these fields now.
- Event Settings · Kiosk Mode Post Check-In Message (
Kiosk_Mode_Post_Check_In_Message__c), Html, no default. Message displayed after the attendee checks in on the Mobile App Kiosk Mode. Media (images, videos, or URLs) are not supported. - Seat · Session Name (
Session_Name__c), Text, no default. Supports merge fields in the post check-in message. No description or help text is defined on the field.
Data Dictionary keys (1 new key)
| Key | Status | Controls | Default |
|---|---|---|---|
MSG_POST_REG_FORM_TITLE | New | Post-Registration Form title, shown in AttendeeLink after checkout | "Please take a few moments to complete this form." |
MSG_SURVEY_TITLE | Unchanged | Post-Event Survey title only, where it previously drove both surfaces | "Thank you for attending this event. Please take a few moments to answer our survey." |
The new key ships with translations in all 37 supported languages, so an org relying on Blackthorn's shipped translations needs no action. Only an org with its own override or translation of MSG_SURVEY_TITLE needs to add an entry for the new key. Overrides are stored on bt_stripe__Data_Dictionary_Entry__c, with key/value pairs in bt_stripe__Data_Dictionary_Values__c, one record per bt_stripe__Locale__c, linked to events through Event_Settings__c.Data_Dictionary_Group__c or Event_Group__c.Data_Dictionary_Group__c.
Custom permission (1 new)
- Mobile Check-In error detail: a new custom permission controls who can see full technical error detail in the Mobile Check-In Error Logs screen. Granted on
Blackthorn_Events_Adminin this release; assign it to other users deliberately.
Permission sets
Field-level security for the new fields above was added across the Blackthorn Events permission sets in the same release: Blackthorn_Events_Admin, Blackthorn_Event_Organizer, Blackthorn_Events_Community_Platform_User, Blackthorn_Events_Limited_Access, Blackthorn_Events_Lite_User, and Blackthorn_Events_ReadOnly. No permission-set grant was removed or narrowed this release.
⬆️ How to upgrade
Go to the Blackthorn Candy Shop to upgrade Events to 5.61. Events 5.61 requires Blackthorn Payments 6.59 or later and Blackthorn Base 1.66 already in place; if you are current on August you already meet both. See Action required above.
For step-by-step instructions, click here.
Webapp changes arrive with the September webapp release and need nothing from you to install. Navigator and Mobile Check-in updates arrive through the App Store and Google Play, and are covered in their own release notes.