Skip to content

Column values

What the status columns can actually contain.

These columns are Edm.String holding UPPER_SNAKE_CASE tokens. They were numeric enums in the operational system; the hub converts them to text on write, so you get PAID rather than 2.

Two consequences worth knowing before you build a dimension table:

  • The sets below are closed. Anything the hub cannot map falls into UNKNOWN, so a value outside these lists should not appear. If one does, tell us — it means a mapping is missing.
  • Tokens are uppercase and exact. $filter matches property names case-insensitively but not values: eq 'paid' matches nothing.

Ticket

TicketStatusType

TokenMeans
NONENo status set.
FREENot yet assigned to a person — available.
ASSIGNEDAssigned to a ticket owner.
BLOCKEDBlocked from use.
UNKNOWNThe source held a value the hub could not map.

TicketValidity

TokenMeans
NONENo validity window defined.
ONE_DAYValid on a single day.
MULTIPLE_DAYSValid on several specific days.
ALL_DAYSValid for the whole event run.

ThirdPartyRegistrationState

Nullable. Registration handled by an external vendor.

TokenMeans
PENDINGSubmitted, not yet decided.
COMPLETEDAccepted.
DENIEDRejected.
UNKNOWNUnmappable source value.
nullNo third-party registration involved.

Article

ArticleType

TokenMeans
TICKETAn admission ticket.
CATALOGA catalogue.
CDA data medium.
VOUCHERA voucher.
SERVICEA service.
SERVICE_FEEA fee added to a sale.
FUNCTIONAL_FEATUREA functional add-on rather than a product.
REGISTRATION_FORMA registration form article.
OTHERAnything else classified explicitly.
UNKNOWNUnmappable source value, including "none".

If you are counting tickets sold, filter ArticleType eq 'TICKET' — otherwise service fees and vouchers land in the same count.

Sale

Four status columns that progress independently. All four are nullable, and all four use UNKNOWN for unmappable values.

SaleStatus

TokenMeans
PENDINGStarted, not completed.
COMPLETEDConcluded successfully.
REVOKEDWithdrawn.
ERRORFailed.
CANCELEDCancelled.
PROCESSINGIn progress.

SalePaymentStatus

TokenMeans
NOT_REQUIREDNothing to pay — a free ticket, for instance.
NOT_PAIDPayment outstanding.
PAIDPaid in full.
PAYMENT_PROCESSINGPayment under way.
NOT_REFUNDEDRefund considered and not made.
REFUNDEDFully refunded.
PARTIALLY_REFUNDEDPartly refunded.
REFUND_PENDINGRefund initiated.
PARTIAL_REFUND_PENDINGPartial refund initiated.
PARTIAL_REFUND_MANUAL_PENDINGPartial refund awaiting manual handling.

For paid revenue, SalePaymentStatus eq 'PAID' is the honest filter. NOT_REQUIRED marks genuinely free tickets, which belong in attendance figures but not in revenue.

SaleRegistrationStatus

TokenMeans
NOT_REQUIREDNo registration needed.
PENDINGRegistration outstanding.
REGISTEREDRegistration complete.

SaleReceiptStatus

TokenMeans
NOT_REQUIREDNo receipt needed.
NOT_CREATEDReceipt due, not yet created.
IN_PROCESSBeing created.
CREATEDReceipt issued.

SaleDistributionChainType

TokenMeans
NONENo channel recorded.
INTERNETOnline shop.
ON_SITESold at the venue.
ESCExhibitor Service Center.
INTERNInternal allocation.
UNKNOWNUnmappable source value.

Several distinct source channels collapse into NONE, so treat it as "not attributable" rather than as a channel.

Legitimation

LegitimationStatus

TokenMeans
NEWSubmitted, untouched.
IN_PROGRESSBeing reviewed.
WAIT_FOR_VERIFICATIONAwaiting external verification.
ON_HOLDPaused.
INCOMPLETEMissing information.
FOLLOW_UPNeeds a follow-up action.
ACCEPTEDApproved by a reviewer.
AUTO_APPROVEDApproved automatically.
DENIEDRejected.
UNKNOWNUnmappable source value.

ACCEPTED and AUTO_APPROVED are both approvals. Any "how many were approved" figure needs both.

Person

TicketOwnerGenderCode, BuyerGenderCode

TokenMeans
UNKNOWNNot stated or not mappable.
MALE
FEMALE
DIVERS

BuyerGenderCode is additionally nullable, where no buyer person exists.

Pass-through columns — no fixed list

These also look like status columns, but the hub passes them through from the source system rather than mapping them to a fixed set. Their values depend on your own configuration, so read the distinct values from your own extract and treat that as your dimension:

ColumnDatasetComes from
TicketRegistrationChannelTicketsThe channel the registration came through.
UsedTicketMediumTicketUsagesHow the ticket was presented at the door — print, mobile, wallet.
TypeTicketUsagesThe kind of ticket action recorded.
QuestionTypeSurveysThe question's form type.
AnswerSourceSurveysWhere the answer came from.
CharacteristicSurveysThe target field the question writes into.
Important: Seed the closed sets above as lookup tables in your warehouse and join against them. A token that fails to match then surfaces as an unmatched key — which is what you want when we add one — instead of silently vanishing from a report.