Zucchetti Guardian-W-Web Services Specification
Zucchetti Guardian-W-Web Services Specification
GUARDIAN-W
WEB SERVICE SPECIFICATIONS 17 maggio 2023 REV.: 1
GENERAL DESCRIPTION
Zucchetti’s Stadium Access Control System is a hardware and software solution entirely
developed and implemented by Zucchetti S.p.A.
The system is based on a LAN/WLAN architecture and an on-site centralized SW that manages
in real-time the various fully integrated control devices.
Ethernet / WiFi
LAN / WLAN
GUARDIAN-W
WEB SERVICE SPECIFICATIONS 17 maggio 2023 REV.: 1
Application Server
Ticketing System
GuardianW
Web Services
Internet
Access Control DB
DB Server
LAN / WLAN
The Guardian-W is a software module belonging to the suite of Zucchetti SW 'Guardian' that
provides the Web Services needed to feed and to get data from the Access Control DB.
In older configurations, the Ticketing Systems provide the data by an own client that read and
write into the interface DB of the access control. Therefore they must have on the LAN of the
access control a suitable own HW/SW to do the job.
With the Guardian-W module, the Ticketing System has a simple and effective way to exchanging
data with the Access Control System regardless the localization of the box offices and the venue.
Each venue has its own Access Control SW installation that runs the devices of access control
and the local DB of the allowed tickets.
The Guardian-W supplies Services to insert data into the Access Control DB like:
GUARDIAN-W
WEB SERVICE SPECIFICATIONS 17 maggio 2023 REV.: 1
Each Service has a ‘get’ method to get back the information about the previously recorded data.
Note that, even though it is recommended to have separated servers for the different functions,
for most common situations where there are a modest number of control points and attendees,
the Application Server, the DB Server and the Web Server could be the same machine.
To exchange data via Web Services with the Guardian-W, the box-office SW must be provided
of a valid account.
Each account on the Guardian-W module has the following attributes that must be used within
the Web Services:
- user name
- password
- one o more Ticketing System Codes
All these data will be send through the Web Services that will verify the compliance with the
stored setting for the account. Each account, identified by its user-id/password, is allowed to
send and get data just for its own Ticketing System Codes. This lets to handle more Ticketing
Systems to feeding data on the same venue if needed.
There are some dedicated Services with administrator rights to create and handle accounts, but
there is a more user friendly way, by using the integrated features of the Guardian-S module:
the user accounts and other configuration stuff of the Guardian-W unit can be defined and
configured via a web based interface of the Guardian-S, the main user interface module of the
Guardian SW suite.
The Guardian-S module provides also a set of web-based features to examine via browser a set
of reports about the expected attendees and the number of attendances, some of these suitable
for mobile devices.
Another features inside the Guardian-S module is the ability to using the Web Services of the
Guardian-W simply by uploading files in .CSV format via browser. This facility is useful for that
Ticketing Systems that occasionally have to send its issued tickets to the access control system
(e.g. for guests supporters), and they have not implemented the required web services calls.
GUARDIAN-W
WEB SERVICE SPECIFICATIONS 17 maggio 2023 REV.: 1
The Guardian-W Services implement an exchanging data-format compliant with the public
security rules of the Italian Ministry of Internal (Home Office) and in compliance with the
regulations of the Revenue Agency / SIAE of Italy.
These rules expect special data to be provided. The most relevant data are the Unique
Identification Codes of the tickets provided by the ad hoc SmarCard issued by the Italian SIAE.
On other countries or for performance no subject to these regulations the data and its coherency
rules are just a sub-set of the Italian version.
Customarily to signal a ‘no Italian SIAE compliant’ behaviour and switch the web services to
handle less restrictive rules, the web service methods must be called without the fields related
to the Smart Card (‘SmartCardCode’ and ‘SmartCardProg’) or with these fields set to blank.
In this case, the code printed on the ticket, and read by the control devices, will be used as the
unique identifier of the ticket itself for the allowed performances.
In following definitions we have been pointed out the differences in handling SIAE-compliant and
no-SIAE-compliant data.
Many of SIAE-compliant fields have no meaning for no-SIAE-compliant systems that can not
worry about these fields leaving them blanks.
The web services will provide default values for some omitted data that cannot be empty, so
must not be source of confusing to get valid values for fields sent as empty.
SERVICE PROTOCOLS
The URLs of the pages of Guardian-W web services are in the following format
http://<host>[:<port>]/GuardianW/<service>
where
1 WSDL
http://<host>[:<port>]/GuardianW/wsb?wsdl
GUARDIAN-W
WEB SERVICE SPECIFICATIONS 17 maggio 2023 REV.: 1
2 SOAP
Endpoint /GuardianW/wsb/soap/
SOAPAction http://www.zucchetti.it/GuardianW/wsb/<service_name>
Accept-Encoding: gzip,deflate
Content-Type: text/xml;charset=UTF-8
SOAPAction: "http://www.zucchetti.it/GuardianW/wsb/GetPerformances"
Content-Length: 1077
Host: localhost:8001
Connection: Keep-Alive
User-Agent: Apache-HttpClient/4.1.1 (java 1.5)
<soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/"
xmlns:guar="http://www.zucchetti.it/GuardianW/"
xmlns:zuc="http://schemas.datacontract.org/2004/07/Zucchetti.Guardian.WebServices.Data">
<soapenv:Header/>
<soapenv:Body>
<guar:GetPerformances>
<guar:auth>
<zuc:UserName>user</zuc:UserName>
<zuc:Password>password</zuc:Password>
</guar:auth>
<guar:TicketingCode></guar:TicketingCode>
<guar:VenueCode></guar:VenueCode>
<guar:PerformanceDate></guar:PerformanceDate>
<guar:PerformanceTime></guar:PerformanceTime>
<guar:OrganizerCode></guar:OrganizerCode>
<guar:PerformanceStartDate></guar:PerformanceStartDate>
<guar:PerformanceStartTime></guar:PerformanceStartTime>
</guar:GetPerformances>
</soapenv:Body>
</soapenv:Envelope>
GUARDIAN-W
WEB SERVICE SPECIFICATIONS 17 maggio 2023 REV.: 1
3 SOAP 1.2
Endpoint /GuardianW/wsb/soap12/
GUARDIAN-W
WEB SERVICE SPECIFICATIONS 17 maggio 2023 REV.: 1
<soap:Envelope xmlns:soap="http://www.w3.org/2003/05/soap-envelope"
xmlns:guar="http://www.zucchetti.it/GuardianW/"
xmlns:zuc="http://schemas.datacontract.org/2004/07/Zucchetti.Guardian.WebServices.Data">
<soap:Header/>
<soap:Body>
<guar:SetTickets>
<guar:auth>
<zuc:UserName>user</zuc:UserName>
<zuc:Password>password</zuc:Password>
</guar:auth>
<guar:tickets>
<zuc:Ticket>
<zuc:VenueCode>0061540214108</zuc:VenueCode>
<zuc:PerformanceDate>20140708</zuc:PerformanceDate>
<zuc:PerformanceTime>1500</zuc:PerformanceTime>
<zuc:TicketCode>19269503-1</zuc:TicketCode>
<zuc:TicketingCode>00000487</zuc:TicketingCode>
<zuc:TotalPrice>3510</zuc:TotalPrice>
<zuc:TicketStatus>VT</zuc:TicketStatus>
</zuc:Ticket>
</guar:tickets>
</guar:SetTickets>
</soap:Body>
</soap:Envelope>
4 SERVICES
Available services:
• SetPerformances
• GetPerformances
GUARDIAN-W
WEB SERVICE SPECIFICATIONS 17 maggio 2023 REV.: 1
• DelPerformance
• SetSections
• GetSections
• DelSections
• SetTickets
• GetTickets
4.1 SetPerformances
Adds or modifies one or more performances for the specified Ticketing System Code.
Each Performance is uniquely identified by the so-called ‘performance-id’, made up by the code
of the venue and the date/time of the performance.
For the same performance there can be more of one ticketing system for issuing tickets, in this
case the first three fields of performance-id will be the same and each ticketing system will refer
to their data identified by the TicketingCode field. Then the performance-id becomes:
Note that each ticket is joined to a performance, then they must be sent after the creation of
their performance.
The fields PerformanceDate and PerformanceTime stand for the original date and time of the
performance and must never be changed, unless in case of error, because they are part of the
performance key. There are other fields (PerformanceStartDate and PerformanceStartTime) to
change in case of postponements or advances that define the real day of the performance.
Required
Occ. Type Note &Format
SIAE STD
Auth Y Y 1 A Auth Class Tag
Auth.UserName Y Y 1 s(80) Service Account
Service Account
Auth.Password Y Y 1 s(80)
Password
GUARDIAN-W
WEB SERVICE SPECIFICATIONS 17 maggio 2023 REV.: 1
Required
Occ. Type Note &Format
SIAE STD
Insert-Only/Update
Overwrite N N 1 b
flag
Performance Y Y 1:n P Performance Class Tag
Performance.VenueCode Y Y 1 s(13) key field
GUARDIAN-W
WEB SERVICE SPECIFICATIONS 17 maggio 2023 REV.: 1
4.1.2.1 Auth.UserName
the user name released by the web services administrator
4.1.2.2 Auth.Password
the account password released by the web services administrator
4.1.2.3 Overwrite
if FALSE, only insertions of new performances are allowed.
Set this flag to TRUE to update existing performances and insert new ones
4.1.2.4 Performance.VenueCode
key field - the agreed code of the Venue as a string of max 13 alphanumeric chars
4.1.2.5 Performance.PerformanceDate
key field - the original Performance date as a string of 8 char in the format ‘yyyyMMdd’
4.1.2.6 Performance.PerformanceTime
key field - the original Performance time as a string of 4 char in the format ‘HHmm’
4.1.2.7 Performance.TicketingCode
key field – the agreed code of the Ticketing System as a string of 8 alphanumeric chars
4.1.2.8 Performance.OrganizerCode
SIAE compliant field
TAX/VAT code of the performance organizer as a string of 16 alphanumeric chars
the default value for no-SIAE-compliant data is all zeroes
GUARDIAN-W
WEB SERVICE SPECIFICATIONS 17 maggio 2023 REV.: 1
4.1.2.9 Performance.OrganizerDescr
SIAE compliant field
name / company of performance organizer as a string of max. 40 chars.
the default value for no-SIAE-compliant data is ‘Organizer’
4.1.2.10 Performance.OrganizerType
SIAE compliant field
Type of performance organizer as string of one char
the default value for no-SIAE-compliant data is blank
4.1.2.11 Performance.TicketingVatNumber
SIAE compliant field
TAX/VAT code of the Ticketing system as an alphanumeric string of 16 chars.
the default value for no-SIAE-compliant data is all zeroes
4.1.2.12 Performance.PerformanceIntr
SIAE compliant field string of one char
performance type: [S]pettacolo / [I]ntrattenimento / s[P]ettacolo con tit.digitali /
i[N]trattenimento con tit.digitali.
The default value for no-SIAE-compliant data is ‘S’
4.1.2.13 Performance.PerformancePercIntr
SIAE compliant field
performance entertainment percentage as integer
the default value for no-SIAE-compliant data is 0
4.1.2.14 Performance.VenueDescr
The name/description of the venue as a string of max 30 chars
4.1.2.15 Performance.PerformanceKind
SIAE compliant field
performance kind, a string of two chars as per SIAE reference codes.
The default value for no-SIAE-compliant data is all zeroes
4.1.2.16 Performance.PerformanceDescr
name or description of the performance a string of max 40 chars
GUARDIAN-W
WEB SERVICE SPECIFICATIONS 17 maggio 2023 REV.: 1
4.1.2.17 Performance.PerformanceAuthor
SIAE compliant field
name of the performance author a string of max 30 chars
the default value for no-SIAE-compliant data is blank
4.1.2.18 Performance.Performer
SIAE compliant field
name of the performance performer a string of max 40 chars
the default value for no-SIAE-compliant data is blank
4.1.2.19 Performance.Country
SIAE compliant field
code of country of the performance author or performer a string of 4 chars
the default value for no-SIAE-compliant data is blank
4.1.2.20 Performance.PerformanceWorkNum
SIAE compliant field
Number of pieces of the performance as integer
the default value for no-SIAE-compliant data 1
4.1.2.21 Performance.TicketingTrad
SIAE compliant field
No digital tickets at all in the current performance a string of one char
the default value for no-SIAE-compliant data is blank
4.1.2.22 Performance.PerformanceStartDate
The real day of the performance as a 8 char string in the format ‘yyyyMMdd’
This date can differ from the original, and immutable, date (e.g for the postponements)
The default value is blank, that means the same value of the PerformanceDate field
4.1.2.23 Performance.PerformanceStartTime
The time of the performance day as a 6 char string in the format ‘HHmmss’
This time can differ from the original, and immutable, date/time
The default value is blank, that means the same value of the PerformanceTime field
4.1.2.24 Performance.PerformanceEndDate
The day when the performance will end as a 8 char string in the format ‘yyyyMMdd’
This date can differ from the original, and immutable, date (e.g for the postponements)
The default value is blank, that means the same value of the PerformanceDate field
GUARDIAN-W
WEB SERVICE SPECIFICATIONS 17 maggio 2023 REV.: 1
4.1.2.25 Performance.PerformanceEndTime
The time when the performance will end as a 6 char string in the format ‘HHmmss’
This date can differ from the original, and immutable, date/time
The default value is blank, that means the same value of the PerformanceTime field
4.1.2.26 Performance.WeekDays
Weekdays enabled for repeated performance (not to be used in case of SIAE-compliant
performances).
Sunday=1, Monday=2, Tuesday=4, Wednesday=8, Thursday=16, Friday=32, Saturday=64
e.g. Saturday + Sunday=64 + 1=65
4.1.2.27 Performance.BindingTime
The Performance.StartDate, Performance.StartTime and Performance.EndDate,
Performance.EndTime are binding: no access allowed before StartDate,StartTime or after
EndDate,EndTime.
If “Performance.BindingTime=0”, Performance.StartTime and Performance.EndTime does not
affect access validity.
4.1.2.28 Performance.MandatoryHolderName
SIAE compliant field.
Set “Performance.MandatoryHolderName=true” in case of mandatory ticket holder name (as
per Prot.223774/2019 27/06/2019 Italian Revenue Agency regulation): ticket holder First
Name and Last Name must be specified for each ticket associated to this performance.
GUARDIAN-W
WEB SERVICE SPECIFICATIONS 17 maggio 2023 REV.: 1
GUARDIAN-W
WEB SERVICE SPECIFICATIONS 17 maggio 2023 REV.: 1
4.2 GetPerformances
Fetch all performances that match the given conditions (if any).
See the SetPerformances service field description for the common fields like TicketingCode,
PerformanceStartDate and so on.
4.2.2.1 PagingKeyIn.PagingKey
It’s an alphanumeric string of max. 100 chars to be provided to get the next page of records
following the last one according to the filters in being.
The value is returned by the output of the last GetPerformances call and should be supplied
as it is. On the first call this field must be blank.
GUARDIAN-W
WEB SERVICE SPECIFICATIONS 17 maggio 2023 REV.: 1
GUARDIAN-W
WEB SERVICE SPECIFICATIONS 17 maggio 2023 REV.: 1
4.3 DelPerformance
GUARDIAN-W
WEB SERVICE SPECIFICATIONS 17 maggio 2023 REV.: 1
4.4 SetSections
Adds or modifies one or more Sections that grouping a set of seats/places with common
behaviour.
Usually the Ticketing System knows where people have to seat, while the Access Control have
to know where people can pass. Then Sections (or Ticketing Areas) are used to join the positions
of the seats with the rules (policies) to pass at the gates. Sections represent a complementary
table to setup the Access Control behaviour.
Each Section is identified by a unique code, and can refer to a parent Section that contains it. If
the parent is not defined the Section will be a child of the root section.
The code-id of Sections is an any string of 32 max. chars according to the Ticketing System
encoding
Note: at the moment all Sections refer to all defined performances, Ticketing Systems and
venues. The web services already provides the fields to distinguish between Section codes
defined from different Ticketing Systems, venues and performances, that will be supported soon.
GUARDIAN-W
WEB SERVICE SPECIFICATIONS 17 maggio 2023 REV.: 1
4.4.2.1 Auth.UserName
the user name released by the web services administrator
4.4.2.2 Auth.Password
the account password released by the web services administrator
4.4.2.3 Overwrite
if FALSE, only insertions of new sections are allowed.
Set this flag to TRUE to update existing sections and insert new ones
4.4.2.4 Section.VenueCode
Performance-id Venue field – private section code of the suggested performance
string of max 13 alphanumeric chars
4.4.2.5 Section.PerformanceDate
Performance-id date field– private section code of the suggested performance
string of 8 char in the format ‘yyyyMMdd’
4.4.2.6 Section.PerformanceTime
Performance-id time field – private section code of the suggested performance
string of 4 char in the format ‘HHmm’
4.4.2.7 Section.TicketingCode
Performance-id Ticketing field– private section code of the suggested performance
string of 8 alphanumeric chars
4.4.2.8 Section.SectionId
key field – identify the section on the internal table
string of max. 32 alphanumeric chars
4.4.2.9 Section.SectionDescr
The section description - string of max. 50 alphanumeric chars
4.4.2.10 Section.SectionParent
optional section code identifying the parent of the current section
string of max. 32 alphanumeric chars
GUARDIAN-W
WEB SERVICE SPECIFICATIONS 17 maggio 2023 REV.: 1
GUARDIAN-W
WEB SERVICE SPECIFICATIONS 17 maggio 2023 REV.: 1
4.5 GetSections
GUARDIAN-W
WEB SERVICE SPECIFICATIONS 17 maggio 2023 REV.: 1
4.6 DelSections
GUARDIAN-W
WEB SERVICE SPECIFICATIONS 17 maggio 2023 REV.: 1
4.7 SetTickets
Adds or modifies one or more Ticket rows for the specified performance. It’s the main service to
feed data to the DB.
Remember the same valid ticket cannot appear more than once for the same performance and
that for the same performance, there may be more ticketing systems issuing tickets.
Then each ticket is uniquely identified by the so-called ‘ticket-id’, made up by the set of fields
according to the SIAE/NO-SIAE compliance:
Ticket SmartCardProg
Note that on SIAE-compliant mode the Ticket Code (e.g. the barcode or whatever is read from
the ticket) does not occur on the ticket-id. Instead it’s a part of the ticket-id on no-SAIE-
compliant mode.
The Ticket SmartCardCode and SmartCardProg are used to distinguish from a SIAE/no-SIAE
compliant record: they must be provided only for SIAE-compliant records and in this case they
are two mandatory parts of the record key.
There are several other fields typical of the SIAE-compliance mode: all these fields are optional
for no-SIAE-compliant records, but if they are provided they must be coherent and they will be
used for displaying data on the access control system.
The SetTickets performs insertions of new records and updates of existing ones.
GUARDIAN-W
WEB SERVICE SPECIFICATIONS 17 maggio 2023 REV.: 1
Required
Occ. Type Note &Format
SIAE STD
Auth Y Y 1 A Auth Class Tag
Auth.UserName Y Y 1 s(80) Service Account
Auth.Password Y Y 1 s(80) Service Account Password
Ticket Y Y 1:n T Ticket Class Tag
Ticket.VenueCode Y Y 1 s(13) key field
Ticket.PerformanceDate Y Y 1 s(8) key field
Ticket.PerformanceTime Y Y 1 s(4) key field
Ticket.TicketingCode Y Y 1 s(8) key field
Ticket.SmartCardCode Y N 1 s(8) key field (**)
Ticket.SmartCardProg Y N 1 s(32) key field (**)
Ticket.TicketCode Y Y 1 s(32) key field (*)
Ticket.TicketCodeAlt N N 1 s(32)
Ticket.OrdineDiPosto Y N 1 s(2) OrdinePosto Table
‘UN’ if blank
Ticket.OrdineDiPostoCapacity N N 1 i
Ticket.RowSeat N N 1 s(6)
Ticket.SectionId N N 1 s(32) OrdinePosto if blank
Ticket.SectionParent N N 1 s(32)
Ticket.SmartCardCheckCode Y N 1 s(16)
Ticket.TicketIssueDate Y N 1 s(8) yyyyMMdd
“19000101” if blank
Ticket.TicketIssueTime Y N 1 s(4) HHmm - “0000” if blank
Ticket.TicketType Y N 1 s(2) Ticket Type Table
“I1” if blank
Ticket.TicketTypeDescr N N 1 s(32)
Ticket.TotalPrice Y N 1 i
Ticket.SeasonOrganizerCode N N 1 s(16)
Ticket.SeasonCode N N 1 s(8)
Ticket.SeasonProg N N 1 s(8)
Ticket.SeasonPerformancesNum N N 1 i
Ticket.VoidedDate N N 1 s(8) yyyyMMdd
Ticket.VoidedTime N N 1 s(4) HHmm
Ticket.VoidedSmartCardCode N N 1 s(8)
GUARDIAN-W
WEB SERVICE SPECIFICATIONS 17 maggio 2023 REV.: 1
Required
Occ. Type Note &Format
SIAE STD
Ticket.VoidedSmartCardProg N N 1 i
Ticket.VoidedSmartCardCheckCode N N 1 s(16)
Ticket.TicketMedia N N 1 s(2) Ticket Media Table
Ticket.HolderLastName N N 1 s(40)
Ticket.HolderFirstName N N 1 s(30)
Ticket.HolderBirthDate N N 1 s(8) yyyyMMdd
Ticket.HolderBirthPlace N N 1 s(40)
Ticket.TicketStatus Y Y 1 s(2) Ticket Status Table
Ticket.EntryDate N N 1 s(8) yyyyMMdd
Ticket.EntryTime N N 1 s(6) HHmmss
Ticket.Notes N N 1 s(50)
Ticket.SignalCode N N 1 s(8)
Ticket.ExpirationDate N N 1 s(32) yyyyMMddHHmm
GUARDIAN-W
WEB SERVICE SPECIFICATIONS 17 maggio 2023 REV.: 1
4.7.2.1 Auth.UserName
the user name released by the web services administrator
4.7.2.2 Auth.Password
the account password released by the web services administrator
4.7.2.3 Ticket.VenueCode
key field - the Venue part of the Performance-id of the ticket key
4.7.2.4 Ticket.PerformanceDate
key field - the date part of the Performance-id of the ticket key
a string of 8 char in the format ‘yyyyMMdd’
4.7.2.5 Ticket.PerformanceTime
key field - the time part of the Performance-id of the ticket key
a string of 4 char in the format ‘HHmm’
4.7.2.6 Ticket.TicketingCode
key field - the Ticketing System part of the Performance-id of the ticket key
4.7.2.7 Ticket.SmartCardCode
key field – the Smart Card part of the ticket-id key
this field is mandatory only for SIAE-compliant systems, otherwise it must be set to blank and
the ticket key will be completed by the Ticket.TicketCode field.
The Smart Card Code is a 8 chars alphanumeric string returned by the Smart Card
4.7.2.8 Ticket.SmartCardProg
key field – the Smart Card Sequence-Number part of the ticket-id key
this field is mandatory only for SIAE-compliant systems, otherwise it must be set to blank and
the ticket key will be completed by the Ticket.TicketCode field.
The Smart Card Sequence Number is a integer number returned by the Smart Card at the
issuing time
GUARDIAN-W
WEB SERVICE SPECIFICATIONS 17 maggio 2023 REV.: 1
4.7.2.9 Ticket.TicketCode
key field - the barcode or whatever is read from the ticket at the control point.
For no-SIAE-compliant data this field is part of the ticket key instead of the couple
SmartCardCode/Prog.
The ticket code is an alphanumeric string of 32 max. chars containing any printable character,
spaces and punctuation marks included.
4.7.2.10 Ticket.TicketCodeAlt
A second barcode or whatever is read from the ticket at the control point.
For each ticket is allowed two identification codes according to the possibility of the used media
(e.g. RFID + barcode) or to allow two separate media with different codes (e.g. QR-code for
mobile and/or another barcode for the print-at-home paper.
Also this second ticket code is an alphanumeric string of 32 max. chars containing any printable
character, spaces and punctuation marks included.
4.7.2.11 Ticket.OrdineDiPosto
special encoding of sections based on two char ID as defined into the annexes of the Italian
SIAE /ADE regulation. That’s why the use of this field is relevant for SIAE-compliant systems.
For no-SIAE-compliant data the field can be omitted and the value ‘UN=Posto Unico’ (‘General
Admission’) will be used by the system
4.7.2.12 Ticket.OrdineDiPostoCapacity
Integer number of the capacity of the section. It’s a field requested for SIAE-compliant
Systems.
4.7.2.13 Ticket.RowSeat
row and seat number as a string of six chars as defined by the Italian SIAE /ADE regulation
(e.g. ‘R9 12’ as row 9, seat 12)
The field has meaning especially for SIAE-compliant systems, but if it is filled the data will be
handled and displayed when need.
4.7.2.14 Ticket.SectionId
alphanumeric string of 32 max. chars containing the Section code to identify the area where
the user can access or seat down. Note that this code might not refer to a real physical area,
but identify a grouping of the same behavior. For example the staffs of operators for
maintenance, for the arrangement of the performance, and the stewards are usually tickets
with a special areas (e.g Service, Maintenance, Organization etc.)
The code is added to the internal Section-Table if not found.
If this field is leaved blank it is filled in with the Ticket.OrdineDiPosto value
GUARDIAN-W
WEB SERVICE SPECIFICATIONS 17 maggio 2023 REV.: 1
4.7.2.15 Ticket.SectionParent
alphanumeric string of 32 max. chars containing the Section code of the Parent area of
Ticket.SectionId. The usefulness of this field, usually blank, is to allow the system to handle a
new Ticket.SectionId by inheriting the behavior from its parent.
4.7.2.16 Ticket.SmartCardCheckCode
it’s the so called ‘Sigillo Fiscale’, a 16 chars hexadecimal string returned by the Smart Card at
the issuing time.
The field is mandatory only for SIAE-compliant data, otherwise it must be set to blank
4.7.2.17 Ticket.TicketIssueDate
The date of ticket issuing as a 8 char string in the format ‘yyyyMMdd’.
The system will verify that it is a “date”, without perform other validity checks (eg. no error
returned if TicketIssueDate+TicketIssueTime is greater than current date/time, probably due
to date/time sync issue between ticketing system and Access Control System).
The field is mandatory only for SIAE-compliant data, otherwise it can be set to blank, in his
case the default value of ‘19000101’ will be provided by the system
4.7.2.18 Ticket.TicketIssueTime
The day time of ticket issuing as a 4 char string in the format ‘HHmm’.
The system will verify that it is a “time”, without perform other validity checks (eg. no error
returned if TicketIssueDate+TicketIssueTime is greater than current date/time, probably due
to date/time sync issue between ticketing system and Access Control System).
The field is mandatory only for SIAE-compliant data, otherwise it can be set to blank, in his
case the default value of ‘’0000’ will be provided by the system
4.7.2.19 Ticket.TicketType
The ticket type as a two char encoding string according to the Ticket Types Table Appendix
specifications.
The field is mandatory only for SIAE-compliant data, otherwise it can be set to blank, in his
case the default value of ‘I1=Full Price’ will be provided by the system.
No-SIAE-compliant Ticketing Systems can use any other encoding based on 2 chars IDs
4.7.2.20 Ticket.TicketTypeDescr
The ticket type description as a 32 chars string. If not blank, the value of this field updates
the previous value found into the internal table of ticket types.
4.7.2.21 Ticket.TotalPrice
The total price of the ticket as the integer of cents of the used currency
The field is required only for SIAE-compliant data, otherwise it can be set to blank
GUARDIAN-W
WEB SERVICE SPECIFICATIONS 17 maggio 2023 REV.: 1
4.7.2.22 Ticket.SeasonOrganizerCode
The well know code of the organizer of the season ticket.
The field is required only for SIAE-compliant data, otherwise it can be set to blank
GUARDIAN-W
WEB SERVICE SPECIFICATIONS 17 maggio 2023 REV.: 1
The field is mandatory for SIAE-compliant data on performances with the requirement of
personal tickets (e.g. Performance.MandatoryHolderName=True), otherwise it can be set to
blank.
In any case the provided last name will be displayed where required.
4.7.2.33 Ticket.HolderFirstName
the first name of the ticket holder as a string of 30 max chars.
The same rules described for Ticket.HolderLastName must be fulfilled.
The field is mandatory for SIAE-compliant data on performances with the requirement of
personal tickets (e.g. Performance.MandatoryHolderName=True), otherwise it can be set to
blank.
In any case the provided name will be displayed where required.
GUARDIAN-W
WEB SERVICE SPECIFICATIONS 17 maggio 2023 REV.: 1
4.7.2.34 Ticket.HolderBirthDate
the birth date the ticket holder as a string of 8 chars as ‘yyyMMdd’.
The field is mandatory for SIAE-compliant data on performances with the requirement of
personal tickets, otherwise it can be set to blank.
In any case the provided data will be displayed where required.
4.7.2.35 Ticket.HolderBirthPlace
the place of birth of the the ticket holder as a string of 40 max. chars
The field is mandatory for SIAE-compliant data on performances with the requirement of
personal tickets, otherwise it can be set to blank.
In any case the provided data will be displayed where required.
4.7.2.36 Ticket.TicketStatus
The ticket status as a two char encoding string according to the Ticket Status Table Appendix
specifications.
The field value defines the behavior of the ticket. It can be set to blank, in his case the default
value of ‘VT=Valid - standard Ticket’ will be provided by the system.
4.7.2.37 Ticket.EntryDate
The ticket use date as a 8 char string in the format ‘yyyyMMdd’
This value comes from the access control system and should not be changed. The access
control system will reject any non-compliant data.
The Ticketing Systems can acquire the use information date by this field.
4.7.2.38 Ticket.EntryTime
The ticket use time as a 6 char string in the format ‘HHmmss’
This value comes from the access control system and should not be changed. The access
control system will reject any non-compliant data.
The Ticketing Systems can acquire the use information time by this field.
4.7.2.39 Ticket.Notes
An alphanumeric string of max. 50 chars with some relevant information to be displayed at
the access control point at the reading time.
4.7.2.40 Ticket.SignalCode
An alphanumeric string of max. 8 chars with an agreed code to allow a different light signaling
on the access control point.
Some control devices handle different light signals with which the system can warn the steward
during the reading of the special tickets. This field can activate the signals related to the
previously defined codes.
GUARDIAN-W
WEB SERVICE SPECIFICATIONS 17 maggio 2023 REV.: 1
4.7.2.41 Ticket.ExpirationDate
Expiration date as a string of 32 chars as ‘yyyMMddHHmm’, after which the ticket is no longer
valid.
Not required for SIAE-compliant record. If not required must be set to blank.
Reference rules:
- the cancellation must refer to a previous issued ticket
- the cancellation cannot take place if the ticket has been used
- when in SIAE-compliance mode:
o the cancellation requires the simultaneous issue of ticket voiding data
(Ticket.VoidedDate, Ticket.VoidedTime, Ticket.VoidedSmartCardCode,
Ticket.VoidedSmartCardProg, Ticket.VoidedSmartCardCheckCode)
o once the ticket voiding data has been issued, the cancellation must be completed
GUARDIAN-W
WEB SERVICE SPECIFICATIONS 17 maggio 2023 REV.: 1
It's not possible to cancel/void a ticket and then discover that its current status doesn't allow
that, therefore it is necessary to check that the ticket has not been used before cancel it.
If the access to the event has not yet started, the problem does not arise while if the access has
started the ticketing system must ask the CA system if the ticket is passed; this verification and
the consequent cancellation must take place in such conditions that between the verification and
the cancellation the ticket cannot be used, in particular the access must not be allowed until the
access control system receives the cancellation or an abort of the cancellation request.
The solution is to disable the ticket by setting its status as Black List so as to block access and
then carry out the appropriate operation, or abort and restore the validity of the ticket.
GUARDIAN-W
WEB SERVICE SPECIFICATIONS 17 maggio 2023 REV.: 1
4.8 GetTickets
Fetch the ticket-records of a performance that match the given filter conditions (if any).
Filtering
To filter subsets of records you can insert one or more TicketFilter Class Tags with a set of single
field filters. The different TicketFilter Class Tags perform ORed conditions, whereas the different
items in the same TicketFilter Class Tag perform ANDed conditions.
Paging
This service returns a maximum number of records per time and implements a paging scheme
to fetch more items. The maximum number of record per page is defined by the input field
MaxTickets (with default 100). To get the next page of records, set the input field PagingKey
with the related value returned on the previous page.
GUARDIAN-W
WEB SERVICE SPECIFICATIONS 17 maggio 2023 REV.: 1
See the SetTickets service field description for the common fields like TicketCode, TicketStatus
and so on.
4.8.2.1 PagingKeyIn.PagingKey
It’s an alphanumeric string of max. 100 chars to be provided to get the next page of records
following the last one according to the filters in being.
The value is returned by the output of the last GetTickets call and should be supplied as it is.
On the fist call this field must be blank.
4.8.2.3 lastUpdate
If specified, filters records that have been changed from the (>=) LastUpdate.
LastUpdate can be set in the following formats: yyyyMMddHHmmssfff, yyyyMMddHHmmss,
yyyyMMddHHmm, yyyyMMdd.
GUARDIAN-W
WEB SERVICE SPECIFICATIONS 17 maggio 2023 REV.: 1
Ticket.TicketCodeAlt 1 s(32)
Ticket.OrdineDiPostoCapacity 1 i
Ticket.RowSeat 1 s(6)
Ticket.SectionId 1 s(32)
Ticket.SectionParent 1 s(32)
Ticket.SmartCardCheckCode 1 s(16)
Ticket.TicketTypeDescr 1 s(32)
Ticket.TotalPrice 1 i
Ticket.SeasonOrganizerCode 1 s(16)
Ticket.SeasonCode 1 s(8)
Ticket.SeasonProg 1 s(8)
Ticket.SeasonPerformancesNum 1 i
Ticket.VoidedSmartCardCode 1 s(8)
Ticket.VoidedSmartCardProg 1 i
Ticket.VoidedSmartCardCheckCode 1 s(16)
Ticket.HolderLastName 1 s(40)
Ticket.HolderFirstName 1 s(30)
Ticket.HolderBirthPlace 1 s(40)
Ticket.Notes 1 s(50)
Ticket.SignalCode 1 s(8)
Ticket.ExpirationDate 1 s(32)
GUARDIAN-W
WEB SERVICE SPECIFICATIONS 17 maggio 2023 REV.: 1
GUARDIAN-W
WEB SERVICE SPECIFICATIONS 17 maggio 2023 REV.: 1
Abbr. Type
GUARDIAN-W
WEB SERVICE SPECIFICATIONS 17 maggio 2023 REV.: 1
The following error codes are used on fault data and on service fails data (ex:
SetTicketsFail.FailCode)
FailCode FailDescr
100 Generic error
101 Access Denied: User or Password is invalid
102 Access Denied: Operation not allowed
200 Generic database failure
210 Duplicate key
211 Key not found
220 Ticketing System code not valid
221 No Ticketing associated
GUARDIAN-W
WEB SERVICE SPECIFICATIONS 17 maggio 2023 REV.: 1
FailCode FailDescr
310 The record cannot be edited
311 The record cannot be deleted
500 Invalid value
501 The field cannot be empty
502 Minimum length is not respected
503 Maximum length is not respected
504 Minimum value not respected
505 Maximum value not respected
600 The ticket cannot be changed
601 The ticket cannot be voided
702 Ticket already used
703 Ticket already voided
GUARDIAN-W
WEB SERVICE SPECIFICATIONS 17 maggio 2023 REV.: 1
Each status appears two times: the first for classical standard tickets (i.e. a paper or plastic
ticket is released by the issuer to the ticket holder at time of purchase) and the second for digital
tickets, i.e. access codes without a specific physical ticket issued at time of purchase. These last
kind of access codes are usually identified by special cards effectives for all the
venues/performances of a season, or by personal identification cards with RFID code. The
distinction between the two kind of codes is needed only for ‘SIAE-compliant’ tickets. For other
uses the first char of the status identifies the current condition of the ticket.
The ‘Used Status’ is divided also in on-line and off-line mode. The on-line mode take place when
the ticket has been authorized by the central system on-line, and the off-line mode when the
authorization has been done by the control device stand-alone. This splitting of the used status
comes from the italian SIAE regulation that contemplates a different handling for the two
validation method, but this information can come in handy also for non SIAE system.
The’ Barred Entry’ status comes from the DASPO italian police regulations for people that cannot
attend sport performances because of violence acts or disciplinary/administrative reasons.
The state ‘Ticket to Refine’ symbolizes a valid ticket with some missing data that must be
completed to be authorized for access the performance. It comes from the need to issue valid
tickets that will not be authorized until some its data will completed. An example are personal
and nominative tickets issued in advance for sponsors or for sportswriters of whom you do not
know the name before the performance day.
GUARDIAN-W
WEB SERVICE SPECIFICATIONS 17 maggio 2023 REV.: 1
are detailed states of a not authorization condition, useful to understand, especially to the gates,
the real reason of the permission denied.
GUARDIAN-W
WEB SERVICE SPECIFICATIONS 17 maggio 2023 REV.: 1
This table provides the values for encode the kind of physical media of the ticket as defined into
the annexes of the ADE regulation 2008/22799 March 4th 2008 and subsequent amendments
and additions.
The real and correct value is mandatory only for SIAE-compliant data.
Description Ticket
GUARDIAN-W
WEB SERVICE SPECIFICATIONS 17 maggio 2023 REV.: 1
This table provides the values for encode the kind of ticket types.
The encoding of is based on two char ID as defined into the annexes of the Italian ADE regulation
2004/137221 August 3rd 2004 and subsequent amendments and additions, and the use of real
and correct values is mandatory for SIAE-compliant Ticketing System. For the complete values
of the SIAE table, see the annexes of ADE regulations.
No-SIAE-compliant Ticketing Systems can use any other encoding based on 2 chars IDs. If there
was a need of longer IDs, this constraint could be removed by an agreement to implement an
extended data length of this field
Description Notes
I1 Full Price
Ix Generic Full Price x in the range [2..9 A..Z]
R1 Reduced Price – Children / Military
R2 Military Reduced Price
R3 Children Reduced Price
R4 Senior Reduced Price
R5 Lady Reduced Price
R6 Club Reduced Price
Rx Generic Reduced Price x in the range [7..9 A..Z]
O1 Free Ticket – Children / Military digital ticket
O2 Military Free Ticket digital ticket
O3 Children Free Ticket digital ticket
O4 Senior Free Ticket digital ticket
O5 Lady Free Ticket digital ticket
O6 Club Free Ticket digital ticket
Ox Generic Free Ticket x in the range [7..9 A..Z]
Sx Service Pass x in the range [1..9 A..Z]
SA Authority Pass
SN Free Performance Pass for free performances for all
. . .
GUARDIAN-W
WEB SERVICE SPECIFICATIONS 17 maggio 2023 REV.: 1
This table provides the values for the SIAE encoding “Ordini di Posto”, i.e. the special encoded
Sections by the Italian SIAE.
The encoding of is based on two char ID as defined into the annexes of the Italian ADE regulation
2004/137221 August 3rd 2004 and subsequent amendments and additions, and the use of real
and correct values is mandatory for SIAE-compliant Ticketing System. For the complete values
of the SIAE table, see the annexes of ADE regulations.
The default value, if the field is omitted, is UN=’Posto Unico’ (‘General Admission’)
No-SIAE-compliant Ticketing Systems can use the default value (i.e. can omit the field)
Description Relationship
Ax Anello x Level x
Cx Curva x Stand Behind the Goal
Dx Distinti x Stalls x
Gx Gradinata x Bleacher x
Hx Galleria x Gallery x
Lx Loggione x Gods x
Mx Poltronissima x Top Tier Seats
Ox Poltrona x Seats
Px Palco x Box x
PR Prato Lawn
PT Platea Stall/Orchestra
Rx Parterre x Lawn/Parterre x
Sx Settore x Section x
Tx Tribuna x Gallery x
UN Posto Unico Open Seating
UP Posto in Piedi Standing Room
where x is in the range [A..Z]
except for Px
where x is in the range [A..P]