Whether service charge is included within the bill (ALWAYS, USUALLY, SOMETIMES, ALMOST_NEVER)
tipping.categories.placeToTip
String
Where should you tip (BEDSIDE_TABLE, DISCREET, DIRECTLY, ENVELOPE, RECEPTION, TABLE, TIPPING_BOX)
tipping.categories.frequency
String
How often should you tip (PER_BAG, PER_DAY, PER_DRINK, PER_NIGHT, PER_PERSON, PER_REQUEST, PER_WEEK)
tipping.categories.isIllegal
boolean
Whether tipping is illegal
tipping.categories.isOffensive
boolean
Whether tipping is offensive/rude
tipping.categories.workersRelyOnTips
boolean
Whether workers rely on tips to make a living (i.e. they have minimum or below minimum wages)
tipping.categories.tip.expectations
String
Type of tipping (DO_NOT_TIP, NOT_EXPECTED, EXPECTED)
tipping.categories.tip.serviceQuality
String
Type of the tip (BAD, OK, EXCELLENT)
tipping.categories.tip.includedServiceCharge
boolean
Whether service charge is included or not (Note: this attribute is different from one in the parent object)
tipping.categories.tip.amount
Object
Omitted if there are tipping.tip.from and tipping.tip.to attributes
tipping.categories.tip.from
Object
Omitted if there is tipping.tip.amount attribute
tipping.categories.tip.to
Object
Omitted if there is tipping.tip.amount attribute
tipping.categories.tip.{amount/from/to}.type
String
Type of the tip regarding the actual money (NONE, ROUND_UP, PERCENTAGE, CURRENCY).
If type is NONE or ROUND_UP there are no other attributes. If type is PERCENTAGE extra attribute amount determines actual percentage.
If type is CURRENCY extra attributes from money object are added (amount, amountInteger, currency and displayAs).