TIXnGO is the leading secure mobile wallet solution provided by the SecuTix company.
Please refer to this page for the functionalities of the product.
To set up product that can use this interface, please refer this page
The document describes the features and the setup steps of the interface between SecuTix 360 and TIXnGO
Data streams
Ticket Injection: External printing. When executing this function, the ticket will pass to "printed" status on Secutix, and it will be injected on TIXnGO
Cancelled ticket: Push that has been cancelled in Secutix into TIXnGO. So the new status of the processed ticket will be cancelled on TIXnGO
Controlled ticket:
Global setup of the interface
As for SecuTix 360, the TixNGo system is perceived as an external printing system. Tickets injected into TIXnGO are considered as printed.
To set it up:
1.) In Organization/Tools/Interfaces create a new External Printing Interface of type "TIXnGO" or "TixnGO with ticket template" (If you want to use the Ticket Template Editor to custom the data send to TIXNGO /wiki/spaces/CF/pages/40576543)
2.) Fill in the API URL provided by TIXnGO in the URL field. It must end by organizer/tickets
3.) Fill in the username provided by TIXnGO (I guess the value does not matter)
4.) In the password field, fill in the API key provided by TIXnGO
5.) Inject some test tickets.
The field "Email notification...." allows you to receive emails when one of the asynchronous processes described below is failing.
Should we set up different interfaces for given organization to speed the things up?
No. Else the push cancelled tickets and push will not work.
Don't.
Ticket injection / Tickets external printing (both names designates the same thing)
The ticket injection process pushes the designated tickets to the TIXnGO system, and then to the wallets of the final users.
To activate it, create a schedule to choose which tickets to process.
Recommended frequency
Every 5 minutes.
Batch size
Recommended value: 1000
Multilingual Feature
Add the custom parameter sendMultilingualAsJsonObject=true in the General tab when you configure an External printing interface.
Set up multilingual event fields in the ticket template
Prepare your ticket template and use this template when scheduling a Tickets external printing function
Example: event.name = ${Performance_hostTeam} - ${Performance_opposingTeam}
Other available multilingual fields:
TIXNGO name | S-360 Ticket template config name | S-360 usually uses variables | Translated values come from |
---|---|---|---|
Event group name | event.group.name | ${Product_externalName} | Organisation > Catalogue > Ordinary admissions > Competition |
Event group image | event.group.image | Static URL | Multilingual value has not been supported in S-360 yet but can update this value in TIXNGO |
Event name | event.name | ${Performance_hostTeam} - ${Performance_opposingTeam} | Organisation > Initialisation > Organisation parameters > Teams |
Event website | event.website | Static URL | Multilingual value has not been supported in S-360 yet but can update this value in TIXNGO |
Event address site | event.address.site | ${Space_externalName} | Institution > Venue > Venue parameters > Space |
Event address city | event.address.city | ${Site_externalName} | Institution > Venue > Venue parameters > Sites (General) |
Event address line1 | event.address.line1 | ${Site_street1} | Institution > Venue > Venue parameters > Sites (Address) Multilingual value has not been supported in S-360 yet but can update this value in TIXNGO |
Event address line2 | event.address.line2 | ${Site_street2} | |
Event address line3 | event.address.line3 | ${Site_street3} |
Set up multilingual ticket detail values in the ticket template
TIXNGO name | S-360 Ticket template config name | S-360 usually uses variables | Translated values come from |
---|---|---|---|
Ticket details main | ticketDetails.main.<sequence>.key | Static values | Multilingual value has not been supported in S-360 yet but can update this value in TIXNGO |
ticketDetails.main.<sequence>.value | ${Hospitality_seatRoomName}, ${External_Entrance_externalName}, ${Entrance_externalName}, ${Seat_block}, ${Seat_row}, ${Seat_nb},... | ||
Ticket details extra | ticketDetails.extra.<sequence>.key | Static values | Multilingual value has not been supported in S-360 yet but can update this value in TIXNGO |
ticketDetails.extra.<sequence>.value | ${LogicalSeatCategory_externalName}, ${Operation_field}, ${Ticket_taxnumber}, ${Amount_currency} ${Amount_baseUnitAmount}, ${Contingent_externalName} | ||
Ticket details hidden | ticketDetails.hidden.<sequence>.key | Static values | Multilingual value has not been supported in S-360 and TIXNGO yet |
ticketDetails.hidden.<sequence>.value | Any values |
*sequence: the order of information will be displayed on TIXNGO, the sequence is started from 0 and is independent in each section.
Initialize an S360 event and ticket detail label in TIXNGO Back Office
Prepare sample ticket per each kind of ticket for each event, and inject those tickets to TIXNGO system
All available labels will be displayed in the Edit event screen on TIXNGO Back Office
Can choose a language on the top right of the Edit event screen to view and edit the event fields and ticket labels in multilingual.
Non-dated ticket injection
This new feature has been built in order to be able to inject other products such as Services in TIXnGO.
For non-dated ticket injection, please set custom variables in the chosen product following the format on the following table. Then try to inject tickets, as usual, filtering by the product instead of an activity.
Comfort variables affecting TIXnGO data.
Comfort variable code | Format | Example | Injected field inside TIXnGO | Notes |
---|---|---|---|---|
TIXAct | start_of_season | start_of_season end_of_season 2w 22/10/23 21:15 | activationParameters.time | |
TIXStart | start_of_season | start_of_season | event.startTime | |
TIXExp | start_of_season | start_of_season | event.expirationDate |
Further information and more detail:
Point of sales configuration
As this schedule must mark some tickets as printed, as if it had been done by a point of sales, you must set up (once) the sales channel and point of sales codes that will be used for that task.
Filtering
Many filtering options exist by-product(s), by performance(s), by tariff or category code... They are all cumulative (AND logical relation)
Barcode format
Allows adding a prefix/post-fix to the barcode
File number filtering
This one is exclusive to all the other ones. If a file number (file id) is provided, it will exclude all the other fields.
Mandatory ticket holder fields
Please enter here one or many of the following values, separated by commas
FIRSTNAME,LASTNAME,BIRTHDATE,ID_NUMBER,COUNTRY_CODE,BIRTH_REGION,BIRTH_PLACE
Only the tickets having those beneficiary values filled will be sent to TIXnGO.
Main Applicant
Will send the main applicant flag to true to TIXnGO only when the beneficiary's first name, last name and email (and NOT the cultural contact's) are matching those of the buyer.
Simulation mode
If this box is checked, the tickets won't be sent to TIXnGO.
File and contact filter
If file or contact filter are selected, only the tickets associated to the file (resp. tickets associated to the contact) are exported.
Customization of data sent to TIXnGO using the template editor
If you use the ticket template editor to inject tickets, you must configure the following on the Technical tab.
Check the custom ticket details and put {"":""} in the fields.
/wiki/spaces/CF/pages/40576543 TIXnGO.
To which contacts are the tickets assigned?
- The tickets are assigned to the person defined in the spectatorDetails data pushed to TIXnGO, identified through its email.
- By default, the tickets are assigned to the cultural contact, with fallback to the purchaser contact..
- But, IF the tickets has been reprinted, it will be assigned to its last known holder, as retrieved from TIXnGO.
In which orders are the ticket pushed?
The tickets are pushed ordered by ticket id. This likely means that ticket from a same order will come together.
Push cancelled and invalidated tickets
This batch pushes the cancelled and invalidated tickets to TIXnGO.
The tickets pushed are all the ones that:
- Have been injected
- Have been cancelled/invalidated
- Comply with the filter (shipment mode)
- Have not been already pushed by that function for that given interface
Recommended frequency
Every 5 minutes.
Date from
Can be used to force the sending of all cancelled tickets as if the last successful execution of the function was at the given date..
Do not use it if you don't understand clearly the usage, it may trigger thousands of unwanted notifications on remote cell phones.
Batch size
Recommended value: 1000
Ticket visibility rule
S-360 is pushing cancelled and invalidated tickets using an TIXnGI Api parameter called showDeletedTicket which defines its visibility.
The visibility for deleted tickets is following the rules:
- if the cancellation cause is in the list of overrideVisibilityFlagForInvalidationReasons (default value: empty), the the visibility is true. (showDeletedTicket =true)
- Else, if the checkbox "Notify spectator" is checked, the the visibility is set to true. (showDeletedTicket =true)
- Else default visbility is used. Default: false (showDeletedTicket =false), Can be altered using custom parameter: visibilityFlagDefaultValue.
Multilingual Feature
s
Push controlled tickets
This batch pushes the controlled status of the tickets to TIXnGO
The tickets pushed are all the ones that:
- Have been injected
- Have been controlled
- Comply with the filter (shipment mode)
- Have not been already pushed by that function for that given interface
Recommended frequency
Every 5 minutes. Can run every minute during event.
Date from
Can be used to force the sending of all controlled tickets as if the last successful execution of the function was at the given date..
Do not use it if you don't understand clearly the usage.
Batch size
Recommended value: 1000
Retrieve ticket status from TIXnGO
This function retrieves information from TIXnGO about the ticket holder and stores it inside SecuTix.
Only the batch size not already handled tickets are retrieved from TIXnGO.
Only one function "retrieve ticket status from TIXnGO" must run for a given organizer, regardless if tickets are injected from multiple organizations.
Recommended frequency
Every 5 minutes.
Pagination key
Do not touch this value if you do not know what you are doing.
Skip ticket
A non-mandatory parameter in which you can add all the ticket IDs that you want to skip.
Batch size
Recommended value: 1000
Custom parameters
Custom parameters | Purpose |
---|---|
ticketIterationSize | This custom parameter is used for the Tickets external printing/ Push cancelled and validate tickets/ Push controlled tickets. To support larger batch sizes, split them into smaller calls to blockchain to send smaller batches, one after the other inside the same execution. The default split size is 50 Note: The TIXnGO side supported only 50 tickets/times, so that should be kept as default. |
batchSplitSize | This custom parameter is used for the Retrieve tickets status from TIXnGO batch. To support larger batch sizes, split them into smaller calls to blockchain to retrieve smaller batches, one after the other inside the same execution. The default split size is 1000 Example: Batch size in the Retrieve tickets status from TIXnGO = 5000, batchSplitSize = 1000. It will split 5000 to 5 calls in the same execution with 1000 per call |
resetInjectionInvalidationReasons | This custom parameter is used for the Tickets external printing to allow injecting mobile tickets to the latest ticket holder contact or cultural contact based on the invalidation reason, i.e., reseating Example: After injecting ticket into TnG for contact A (cultural contact) then contact A open mobile app and transfer the ticket to contact B (latest mobile owner). On the STX side, the operator reprinted that ticket with invalidation reason THEFT and reinject it into TnG, this ticket will reinject back to contact A. If there is no invalidation reason here, the new ticket will be reinjected back to contact B Note: All the cancellation reasons are those which appear on the list of values in the BO [Institution > Initialisation > List of values > Ticket (Cancellation cause)]. With validation reason Theft , rESEATING will work too because the invalidation causes will be modified in order to remove the spaces and to be all set in upper cases |
excludeTicketResale overrideVisibilityFlagForInvalidationReasons | Both custom parameters are used for putting blockchain tickets into the resale platform and specified for Push cancelled and validate ticket batch. The purpose of those parameters is to update the invalidation reason to TnG after putting the ticket on the resale platform or tickets is resold. Example: excludeTicketResale=true, overrideVisibilityFlagForInvalidationReason=RESALE_PENDING, RESOLD After putting the ticket on the resale platform, the old ticket is invalidated and the validation reason will be updated into TnG side by the Push cancelled and validate ticket with invalidation set at overrideVisibilityFlagForInvalidationReason For more information, please refer to the US STX-110559 |
dumpTnPRvariables=true | To generate tnPRVariables file ticket detail after injecting ticket into TnG. To check the variable and its value as well |
enforceMandatoryParameters | The interface fails with a proper error message before calling TixNGo if the mandatory parameters of the tickets to inject are not present. Default value : true. Do not change if you don't know what you are doing. |
dumpDataModifiedByTemplate | Default value: false. Set it to true to log the values modified by the template associated to the export. |
overlaySpectatirDetailsWithLastOwner | Default value: true. Set it to false to skip the rule: But, IF the tickets has been reprinted, it will be assigned to its last known holder, as retrieved from TIXnGO. |
TIXNGO_LIFECYCLE_MODE | Only possible value lifecycle. When enabled, activates ticket status feature related to
-
STX-122715Getting issue details...
STATUS
|
sendmultilingualjsonobject=true | |
usePushCancelledTicketsV1 | Default value: false. Set it to true to use the deprecated query to get the list of cancelled/invalidated tickets. |
doPatchWhenPushingControlledTickets | By default is set to use PATCH in the API call. If set to false (doPatchWhenPushingControlledTickets=false), the method POST will be used. |