All integrators issuing tickets on GET Protocol interact with the same contracts, but aren't equal in terms of resource usage and value. Despite all tickets being issued as NFTs on-chain, the path to get there can be different depending on how much of the protocol is required.

We have two main products available for use:

  • White-Label; a full-stack ticketing solution, offering mobile apps, seating and crowd management, payouts, and resale markets.
  • Digital Twin; NFT ticket distribution for existing ticketing platforms. See Ticket Engine for more.

A single usage price across all products would ultimately not be workable as each product offers differing level of value to the user and demands varying level of resources and support from the foundation. Integrators using the Ticket Engine alongside their own ticketing platform would rightly be reluctant to pay the same as white-labellers that rely on GET Protocol to run a fully operational ticketing stack and for that reason the rates are configurable per-integrator, on-chain.

Identifying an Issuer

While it makes sense to treat integrators of each product separately when it comes to pricing based on resource usage, in the eyes of the smart contracts all users are the same (just with different parameters and rate configurations). For that reason we identify all integrators on the protocol by their relayerAddress. This allows us to rely on the on-chain identity using the public address of the smart contract representing an integrator, regardless of their type or pricing model.

A relayerAddress will map to a single integrator and each integrator will have their own independent relayerAddress. It is within this smart contract that the rate configuration is held.

Here, it is useful to consider integrators as relayerAddresses as it makes it clear we are discussing smart contracts rather than invoicing or spreadsheet accounting. Usage metering and charging happens in real-time and the account to be charged is determined by who is calling the contract and with a blockchain we cannot send an invoice after the fact.

Rate Configuration

Each relayerAddress has an independent configuration of variables that define the usage costs of the protocol. GET is used as the medium of exchange and payment for all interactions on the protocol, but USD is used as the base currency for determining the amount of GET required.

Ticket Issuer




ACME Tickets



{mintRate1, upsellRate1, ...}




{mintRate2, upsellRate2, ...}


Digital Twin


{mintRate3, upsellRate3, ...}

A list and description of the rates used in each relayerAddress configuration can be found in System Variables.



Although all NFTs are created with the same code, the rate configuration set for each relayerAddress will depend on the amount of tooling and products used by the integrator.