Supporting Elements
There are several custom fields to be created to enable the Out Bound integration with Expo Logic.
Field | Object | Type | Field Name | Help Text |
Badge Number | Event Badge | Formula (Text)
Formula = SUBSTITUTE(Name,'Event Badge ', '') | NU__EventBadge__c.BadgeNumber__c | The badge number, in text, derived from the badge's Name field. Used for ExpoLogic. |
Do Not Print | Product | Check Box | NU__Product__c.DoNotPrint__c | Indicates if the product should have physical tickets or slips printed via ExpoLogic. For example, a registration product that represents an event session may require the attendees to bring printed tickets for admission. |
EventKey | Event | Formula (Text)
Formula = CASESAFEID(Id) | NU__Event__c.EventKey__c | The 18-character (case-insensitive) record ID for this event. Since this field outputs a Text data type, it can be used in SOQL string filters that require filtering on the value of the event Id. Used by the Expo Logic integration. |
Is Session | Product | Check Box | NU__Product__c.IsSession__c | Passed to ExpoLogic for badge/ticket retrieval. |
Registration Key | Registration | Formula (Text)
Formula = CASESAFEID(Id) | NU__Registration2__c.RegistrationKey__c | The 18-character (case-insensitive) record ID. Since this field outputs a Text data type, it can be used in SOQL string filters that require filtering on the value of the Id. Used by the Expo Logic integration. |
Integration Settings
In the Nimble Integration Framework, the following Integration Settings need to be created.
Integration Setting "getEvents"
Name: getEvents
RecordTypeName: Outbound Data
Sharing Mode: Without Sharing
Authentication Key: Exp0L0g1c1234 (this is an example and will vary with your deployment)
Query
SELECT Id, EventKey__c, Name, NU__City__c, NU__Country__c, NU__StartDate__c, NU__EndDate__c FROM NU__Event__c WHERE (EventKey__c LIKE '<<event_key>>' OR Name LIKE '<<event_title>>') AND NU__EndDate__c >= <<event_end_datetime>> Order by NU__EndDate__c desc
Integration Setting "getBadgesAndTickets"
Name: getBadgesAndTickets
Description: In Nimble AMS, Event Badges (aka Badges) and Order Item Lines (aka Tickets) are both child objects of the Registration object. To collect all the required data, the SOQL will primarily select on Registration2__c while simultaneously performing two sub-selects, one on EventBadge__c and one on OrderItemLine__c.
RecordTypeName: Outbound Data
Sharing Mode: Without Sharing
Authentication Key: Exp0L0g1c1234 (this is an example and will vary with your deployment)
Query
SELECT
Id, NU__Event2__c, RegistrationKey__c, NU__RegistrantEmail__c, NU__Balance__c, NU__Account2__r.ShippingStreet, NU__Account2__r.ShippingCity, NU__Account2__r.ShippingState, NU__Account2__r.ShippingPostalCode, NU__Account2__r.ShippingCountry, NU__Account2__r.Phone, NU__Account2__r.Fax, NU__Account2__r.CLIENT_ID__c, NU__Account2__r.NU__MembershipType__c, NU__Account2__r.NU__FullName__c, NU__Account2__r.NU__PrimaryAffiliation__r.Name,
(SELECT
Id, BadgeNumber__c, NU__FirstName__c, NU__LastName__c, NU__Suffix__c, NU__BadgeClass__c, NU__CasualName__c, NU__Company__c, NU__ProfessionalTitle__c, NU__City__c, NU__State__c, NU__Country__c, NU__Designation__c
FROM NU__EventBadges__r ),
(SELECT
Id, NU__Registration2__c, NU__Quantity__c, NU__Product2__c, NU__Product2__r.Id, NU__Product2__r.Name, NU__Product2__r.NU__Event2__c, NU__Product2__r.NU__Description__c, NU__Product2__r.IsSession__c, NU__Product2__r.DoNotPrint__c, NU__Product2__r.NU__Event2__r.Id, NU__Product2__r.NU__EventSessionStartDate__c, NU__Product2__r.NU__Event2__r.NU__Country__c, NU__Product2__r.NU__Event2__r.NU__City__c
FROM NU__OrderItemLines__r)
FROM NU__Registration2__c
WHERE (NU__Event2__r.EventKey__c LIKE '<<event_key>>'
<<logical_operator>> RegistrationKey__c LIKE '<<reg_key>>')
AND Id IN (SELECT NU__Registration2__c FROM NU__EventBadge__c WHERE
(NU__BadgeClass__c LIKE '<<reg_type_code>>'
<<logical_operator>> NU__LastName__c LIKE '<<last_name>>'
<<logical_operator>> NU__FirstName__c LIKE '<<first_name>>'
<<logical_operator>> (NU__Company__c LIKE '<<company_name>>' OR NU__Company__c = '')) <<badge_logical_operator>> BadgeNumber__c LIKE '<<badge_number>>')
NOTE(s): Replace CLIENT_ID__c with any custom ID you may be using and wanting to send (Example: NU__Account2__r.ISEN_ID__c); You may wish to filter out and only include Registrations where the status is 'ACTIVE'
Verification
When these steps are complete, refer to the the sample REST queries for POST to verify the endpoint are correctly created and the data is correctly retrieved.
EX:
POST
{
"Request":{
"Name":"getEvents",
"AuthenticationKey":"Exp0L0g1c1234",
"Parameters":{
"event_key":"%",
"event_title":"%",
"event_end_datetime": "1970-01-01T00:00:00Z"
}
}
}
How to use the Expo Logic ExpressPass Check-in
The Expo Logic ExpressPass check-in service provides a QR code for event registrants. Scanning this code at the event check-in kiosk will prompt the system to print the specific event badge for the user and event.
Generating the ExpressPass Check-in QR Code
When configuring an event in Expo Logic you will be provided with an ID that the software will use for that event. This ID should be unique for each registrant.
Replace <<ID>> in this formula to generate the ExpressPass Check-in code
<img src=" https://www.expologic.com/barcodes/qr/100/<<ID>>.png"/>
Once you have configured the action to generate a QR code, this can be accessed via a Button in Staff View (See below), or emailed to Nimble AMS users using Nimble Create to build custom emails (See https://help.nimbleams.com/nimble-create-144802288.html)
Further Functionality - Add Express Check-in code to View Registration Community Hub card.
By adding a new custom card to the View Registration page in Community Hub, you can display the Express Check-in code for the current registration.
Admins can configure a button for staff labeled badge[on]demand
that is available when viewing a registration record in Nimble AMS Staff View. When a staff user clicks this button, it launches Expo Logic's badge[on]demand service, specifically for the registration they are currently viewing and will render the event badge for local printing.
For the Registration object, create a custom button with the following values.
Add the badge[on]demand button you just created to your Registration page layout(s).
We recommend testing to ensure the button appears and that the resultant URL is correct. If there are issues, review the URL and make sure the merge field parameters (reg_key
andevt_key
) were merged correctly, and also make sure {client_key}
and {clientCode}
are the correct values that Expo Logic is expecting.
Open a registration record.
Typically you would get to a registration record via the Registrations tab, or from a related list on a parent record, such as an event record or account record.
Click the badge[on]demand action on the record page.
If you don't see the action/button, ensure that it has been added to the page layout.