Ticket Operations and User Rights
Navigating Access for Ticket Actions
This section describes user rights required when performing Ticket API methods.
Creating and modifying ticket
When creating or modifying ticket, specific user rights are required, based on payload data and whether ticket with given identifier already exists.
TicketCreate
: necessary when no existing ticket with given identifier is found.TicketUpdate
: necessary when attempting to modify an open ticket with a given identifier. This applies when the ticket is linked to an authorized user (determined through theemployee.userName
property).TicketUpdateAny
: necessary when attempting to modify an open ticket with a given identifier. This applies when the ticket is linked to a user other than the authorized user (determined through theemployee.userName
property).TicketRename
: necessary when attempting to modifyname
property of an existing open ticket.TicketSetDiscount
: necessary when attempting to set a non-zero value for thediscountRate
property of a new ticket or changing it from an existing ticket. If the ticket is associated with a customer (through thecustomer
property), setting a value equal to the customer's discount rate (customer.discountRate
) is allowed and doesn't require this right.TicketSetCustomer
: necessary when attempting to set non-null value forcustomer
property of a new ticket or changing it for an existing ticket.TicketHandover
: necessary when attempting to associate ticket with user other than the authorized user (determined through theemployee.userName
property).TicketTakeover
: necessary when attempting to switch the association of a ticket from a user other than the authorized user (identified through theemployee.userName
property) to the authorized user. The execution of this operation also requiredTicketUpdateAny
user right.
Deleting ticket
When deleting existing opened ticket, specific user rights are required, based on properties of existing ticket.
TicketDelete
: neccessary when deleting ticket associated with authorized user (determined through theemployee.userName
property).TicketUpdateAny
: necessary deleting ticket linked to a user other than the authorized user (determined through theemployee.userName
property).Storno
: necessary when deleting ticket containing at least one ticket item initems
collection with a quantity greater than zero.
Closing ticket
When closing ticket, following user rights are required:
TicketClose
: necessary when closing ticket.TicketCloseAny
: necessary when closing ticket linked to a user other than the authorized user (determined through theemployee.userName
property).TicketCloseAs
: necessary when closing ticket in behalf of user other than the authorized user (determined through theuser.userName
property ofTicketCloseContext
).TicketCloseToAnyFiscal
: necessary when closing a ticket on a fiscal device that is not the default fiscal device. For more details on how to evaluate the default fiscal device, please refer to the Evaluating the Default Fiscal Name section.TicketUpdate
: necessary when ticket is linked to an authorized user (determined through theemployee.userName
property).TicketUpdateAny
: necessary when ticket is linked to a user other than the authorized user (determined through theemployee.userName
property).
Evaluating the Default Fiscal Name
This section outlines the procedure for determining the default fiscal device for a ticket
Checking Device's Settings.DefaultFiscalName Property: The
Settings.DefaultFiscalName
property of the Device associated with the authorized user is checked. If the property value is equal tonull
, proceed to the next step.No Default Fiscal Name Set: If none of the above steps yield a default fiscal name, it means that the default fiscal name is not configured. In such cases, the
TicketCloseToAnyFiscal
user right is not required.
Printing preliminary ticket
When printing preliminary ticket, following user rights are required:
TicketPrintPreliminary
TicketUpdate
: necessary when ticket is linked to an authorized user (determined through theemployee.userName
property).TicketUpdateAny
: necessary when ticket is linked to a user other than the authorized user (determined through theemployee.userName
property).
Last updated