Schema Reference
This page covers the parts of the schema beyond Setup Queries, Place Order and Webhooks. The customer and loyalty queries (customer profile, loyalty, vouchers, promotions) are in the CRM & Loyalty API pages.
Entry points
Entry point | What it gives you |
|---|---|
products | Products, product categories, sale price categories |
customers | Customers, customer categories, and the loyalty data of each customer |
organization | Locations, companies, streets, countries, currencies, VAT categories, payment methods, channels, shipping types, marketing actions |
loyalty | Promotions |
order | Orders, with payments and receipts |
delivery | Delivery areas, delivery streets and fees, driver users |
Connection fields accept the cursor arguments first, after, last and before. See Rate Limits / Pagination Conventions.
Orders and receipts
Reads orders with their payments and receipts. Each receipt carries the loyalty points earned (credit) and used (debit).
Query
query GetOrders($customer: Guid, $from: DateTime, $to: DateTime, $first: Int, $after: String) {
order {
orders(customer: $customer, perionBegin: $from, perionEnd: $to, first: $first, after: $after) {
totalCount
pageInfo { hasNextPage endCursor }
items {
publicKey
createdOn
closedOn
channelType { id name }
location { publicKey name }
customer { publicKey firstName lastName }
deliveryOrder { status deliveryDate customerDeliveryFee customerComments }
orders { productKey quantity salePrice discountAmount product { publicKey name } }
payments {
paidAmount
paymentMethods { paidAmount paymentMethodType { publicKey name } }
}
receipts {
publicKey
createdOn
number
loyalty { points { credit debit } }
}
}
}
}
}Variables
{
"customer": "<customerKey>",
"from": "2026-01-01T00:00:00",
"to": "2026-01-31T23:59:59",
"first": 30,
"after": null
}cURL
curl --location 'https://sandbox.expressoft.eu/connect/api/interopgql' \
--header 'Content-Type: application/json' \
--header 'Authorization: Bearer <token>' \
--data '{"query": "query GetOrders($customer: Guid, $from: DateTime, $to: DateTime, $first: Int, $after: String) { order { orders(customer: $customer, perionBegin: $from, perionEnd: $to, first: $first, after: $after) { totalCount pageInfo { hasNextPage endCursor } items { publicKey createdOn closedOn channelType { id name } location { publicKey name } customer { publicKey firstName lastName } deliveryOrder { status deliveryDate customerDeliveryFee customerComments } orders { productKey quantity salePrice discountAmount product { publicKey name } } payments { paidAmount paymentMethods { paidAmount paymentMethodType { publicKey name } } } receipts { publicKey createdOn number loyalty { points { credit debit } } } } } } }", "variables": {"customer": "<customerKey>", "from": "2026-01-01T00:00:00", "to": "2026-01-31T23:59:59", "first": 30, "after": null}}'Delivery areas
Reads the delivery areas and the locations that serve them.
Query
query GetDeliveryAreas {
delivery {
deliveryAreas {
publicKey
name
active
locations { publicKey name }
}
}
}cURL
curl --location 'https://sandbox.expressoft.eu/connect/api/interopgql' \
--header 'Content-Type: application/json' \
--header 'Authorization: Bearer <token>' \
--data '{"query": "query GetDeliveryAreas { delivery { deliveryAreas { publicKey name active locations { publicKey name } } } }"}'Delivery streets and fees
Reads the streets served by a location, with the delivery fee for the customer and for the driver. customerDeliveryFee can depend on the order value, so pass saleAmount.
Query
query GetDeliveryStreets($deliveryArea: Guid, $location: Guid, $saleAmount: Decimal, $first: Int, $after: String) {
delivery {
deliveryStreets(deliveryArea: $deliveryArea, location: $location, first: $first, after: $after) {
totalCount
pageInfo { hasNextPage endCursor }
items {
deliveryArea { publicKey name }
location { publicKey name }
street { publicKey name }
customerDeliveryFee(saleAmount: $saleAmount)
driverDeliveryFee
priority
}
}
}
}Variables
{
"deliveryArea": "<deliveryAreaKey>",
"location": "<locationKey>",
"saleAmount": 50,
"first": 30,
"after": null
}cURL
curl --location 'https://sandbox.expressoft.eu/connect/api/interopgql' \
--header 'Content-Type: application/json' \
--header 'Authorization: Bearer <token>' \
--data '{"query": "query GetDeliveryStreets($deliveryArea: Guid, $location: Guid, $saleAmount: Decimal, $first: Int, $after: String) { delivery { deliveryStreets(deliveryArea: $deliveryArea, location: $location, first: $first, after: $after) { totalCount pageInfo { hasNextPage endCursor } items { deliveryArea { publicKey name } location { publicKey name } street { publicKey name } customerDeliveryFee(saleAmount: $saleAmount) driverDeliveryFee priority } } } }", "variables": {"deliveryArea": "<deliveryAreaKey>", "location": "<locationKey>", "saleAmount": 50, "first": 30, "after": null}}'Driver users
Reads the users that deliver orders, with their shipping type.
Query
query GetDriverUsers($first: Int, $after: String) {
delivery {
driverUsers(first: $first, after: $after) {
totalCount
pageInfo { hasNextPage endCursor }
items {
shippingType { id name }
user { publicKey firstName lastName email }
}
}
}
}Variables
{
"first": 30,
"after": null
}cURL
curl --location 'https://sandbox.expressoft.eu/connect/api/interopgql' \
--header 'Content-Type: application/json' \
--header 'Authorization: Bearer <token>' \
--data '{"query": "query GetDriverUsers($first: Int, $after: String) { delivery { driverUsers(first: $first, after: $after) { totalCount pageInfo { hasNextPage endCursor } items { shippingType { id name } user { publicKey firstName lastName email } } } } }", "variables": {"first": 30, "after": null}}'Organization reference data
Reads currencies, VAT categories, payment methods, channels, shipping types, marketing actions and company categories in one request.
Query
query GetReferenceData {
organization {
organizations { publicKey name isActive }
currencies { publicKey symbol isActive }
vatCategories { publicKey percentageValue isActive }
paymentMethods {
publicKey
name
paymentMethodType
tickets { publicKey ticketValue active }
}
channelType { id name }
shippingType { id name }
marketingactions { publicKey name }
companyCategories { publicKey name active }
}
}cURL
curl --location 'https://sandbox.expressoft.eu/connect/api/interopgql' \
--header 'Content-Type: application/json' \
--header 'Authorization: Bearer <token>' \
--data '{"query": "query GetReferenceData { organization { organizations { publicKey name isActive } currencies { publicKey symbol isActive } vatCategories { publicKey percentageValue isActive } paymentMethods { publicKey name paymentMethodType tickets { publicKey ticketValue active } } channelType { id name } shippingType { id name } marketingactions { publicKey name } companyCategories { publicKey name active } } }"}'Companies
Searches companies by name or fiscal code.
Query
query GetCompanies($name: String, $fiscalCode: String, $first: Int, $after: String) {
organization {
companies(name: $name, fiscalCode: $fiscalCode, first: $first, after: $after) {
totalCount
pageInfo { hasNextPage endCursor }
items {
publicKey
name
fiscalAttribute
fiscalCode
registrationCode
category { publicKey name }
addresses { publicKey streetName streetNumber isPrimaryAddress city { publicKey name } }
}
}
}
}Variables
{
"name": "<company name>",
"fiscalCode": null,
"first": 30,
"after": null
}cURL
curl --location 'https://sandbox.expressoft.eu/connect/api/interopgql' \
--header 'Content-Type: application/json' \
--header 'Authorization: Bearer <token>' \
--data '{"query": "query GetCompanies($name: String, $fiscalCode: String, $first: Int, $after: String) { organization { companies(name: $name, fiscalCode: $fiscalCode, first: $first, after: $after) { totalCount pageInfo { hasNextPage endCursor } items { publicKey name fiscalAttribute fiscalCode registrationCode category { publicKey name } addresses { publicKey streetName streetNumber isPrimaryAddress city { publicKey name } } } } } }", "variables": {"name": "<company name>", "fiscalCode": null, "first": 30, "after": null}}'Enum values
Enum | Values |
|---|---|
BillDeliveryStatusType | NONE, HELD, UNCONFIRMED, PICKED_UP, READY, DISPATCHED, DELIVERED, HANDED_OVER, CANCELED, ASSIGNED, IN_TRANSIT, REASSIGN |
PaymentType | CASH, CARD, MEAL_TICKET, VIRAMENT, MOBILE, PMS, CONTACT_DEBT, ACCOUNT_DEBT, ELECTRONIC_MEAL_TICKET |
DiscountType | PERCENT, AMOUNT |
PromotionType | PRODUCT_DISCOUNT, PRODUCT_SALE_PRICE, CUSTOMER_DISCOUNT, BUY_X_GET_Y, BUY_X_AND_Y_GET_DISCOUNT, BUY_X_GET_Y_FREE_LOWEST_PRICE_ITEM, BUY_PRODUCT_COMBINATION_GET_SPECIAL_PRICES, CUSTOMER_DISCOUNT_ON_PAYMENT_METHOD, BUY_CERTAIN_VALUE_GET_PRODUCTS_WITH_DISCOUNTS_OR_SPECIAL_PRICES, COMPANY_DISCOUNT |
OrderSubtotalDiscountType | DEFAULT, PROMOTION, LOYALTY_POINT, VOUCHER |
DeliveryCarryType | DELIVERY, TAKE_AWAY, SELF_PICK_UP, DINE_IN |
InvoiceClientType | CUSTOMER, COMPANY |
Profiles (ProfileType)
Value | Default profile |
|---|---|
DELIVERY | Delivery |
RESTAURANT | Restaurant |
RETAIL_FOOD | Retail Food |
BEAUTY | Beauty |
QUICK_SERVICE | QuickService |
RETAIL_NON_FOOD | Retail NonFood |
SELF_SERVICE_KIOSK | Self Service Kiosk |
CASHLESS | Cashless |
Sort values (orderBy)
Pass one or more of these values in orderBy. The names ending in _DESC sort in descending order.
Enum | Values |
|---|---|
CustomerConnnectionOrderType | FIRST_NAME, FIRST_NAME_DESC, LAST_NAME, LAST_NAME_DESC |
ProductConnnectionOrderType | NAME, NAME_DESC |
StreetConnnectionOrderType | NAME, NAME_DESC, CREATE_ON, CREATED_ON_DESC |
CompanyConnnectionOrderType | NAME, NAME_DESC |
CountryConnnectionOrderType | NAME, NAME_DESC |
CityConnnectionOrderType | NAME, NAME_DESC |
CountyConnnectionOrderType | NAME, NAME_DESC |
PromotionConnnectionOrderType | NAME, NAME_DESC |
OrderConnnectionOrderType | CREATED_ON, CREATED_ON_DESC |
LocationConnnectionOrderType | DELIVERY_AREA_NAME, DELIVERY_AREA_NAME_DESC, LOCATION_NAME, LOCATION_NAME_DESC, STREET_NAME, STREET_NAME_DESC, STREET_PRIORTY, STREET_PRIORTY_DESC |
DriverUserConnnectionOrderType | CREATED_ON, CREATED_ON_DESC, LAST_MODIFIED_ON, LAST_MODIFIED_ON_DESC |
Mutations
Every mutation returns result, errorCode, errorMessage and errorData. The table lists every mutation in the schema. The payload fields of each input type are in Input types below.
Mutation | Argument | Returns | Documented |
|---|---|---|---|
customer.create | payload: CustomerCreateInputType! | CustomerTypeResult | Place Order, step 2 |
customer.update | payload: CustomerUpdateInputType! | CustomerTypeResult | Input types |
customer.delete | payload: Guid! | BooleanGraphTypeResult | Input types |
customer.createAddress | payload: CustomerAddressCreateInputType! | CustomerAddressTypeResult | Place Order, step 3 |
customer.updateCustomerAddress | payload: CustomerAddressUpdateInputType! | CustomerAddressTypeResult | Input types |
customer.deleteAddress | payload: Guid! | BooleanGraphTypeResult | Input types |
customer.linkCompany | payload: CustomerCompanyLinkInputType! | CustomerTypeResult | Input types |
customer.unlinkCompany | payload: CustomerCompanyLinkInputType! | CustomerTypeResult | Input types |
customer.upsertMarketingActions | payload: [CustomerMarketingActionInputType]! | BooleanGraphTypeResult | Input types |
organization.createStreet | payload: StreetCreateInputType! | StreetTypeResult | Input types |
organization.updateStreet | payload: StreetUpdateInputType! | StreetTypeResult | Input types |
organization.upsertLocationStreet | payload: LocationStreetUpsertInputType! | BooleanGraphTypeResult | Input types |
organization.deleteLocationStreet | payload: LocationStreetUpsertInputType! | BooleanGraphTypeResult | Input types |
organization.createCompany | payload: CompanyCreateInputType! | CompanyTypeResult | Place Order, step 4 |
organization.updateCompany | payload: CompanyUpdateInputType! | CompanyTypeResult | Input types |
organization.deleteCompany | publicKey: Guid! | BooleanGraphTypeResult | Input types |
organization.createCompanyAddress | payload: CompanyAddressCreateInputType! | CompanyAddressTypeResult | Place Order, step 5 |
organization.updateCompanyAddress | payload: CompanyAddressUpdateInputType! | CompanyAddressTypeResult | Input types |
organization.deleteCompanyAddress | publicKey: Guid! | BooleanGraphTypeResult | Input types |
organization.setPrimaryCompanyAddress | publicKey: Guid! | BooleanGraphTypeResult | Input types |
organization.createCity | payload: CityCreateInputType! | CityTypeResult | Input types |
organization.createGiftCard | payload: CreateGiftCardInputType! | GiftCardTypeResult | Input types |
deliveryOrder.create | payload: DeliveryOrderCreateInputType! | OrderTypeResult | Place Order, step 6 |
The webhook mutations (miscellaneous.webHooks) are documented on the Webhooks pages.
Input types
CityCreateInputType
Field | Type | Required | Default | Description |
|---|---|---|---|---|
name | String! | yes | | City name. |
countyKey | Guid! | yes | | County public key. |
CompanyAddressCreateInputType
Field | Type | Required | Default | Description |
|---|---|---|---|---|
companyKey | Guid! | yes | | Company public key. |
name | String | no | | Address label/name. |
String | no | | Contact email. | |
fax | String | no | | Fax number. |
roomNumber | String | no | | Room/office number. |
floor | String | no | | Floor information. |
buildingNumber | String | no | | Building number/identifier. |
streetName | String | no | | Street name (free-text). |
streetNumber | String | no | | Street number (free-text). |
postalCode | String | no | | Postal code. |
telephone | String | no | | Telephone number. |
mobilePhone | String | no | | Mobile phone. |
phone | String | no | | Phone contact. |
isPrimaryAddress | Boolean | no | false | Marks this address as primary (default false). |
cityKey | Guid | no | | City public key. |
CompanyAddressUpdateInputType
Field | Type | Required | Default | Description |
|---|---|---|---|---|
publicKey | Guid! | yes | | Address public key. |
name | String | no | " " | Address label/name (optional). |
String | no | " " | Contact email (optional). | |
fax | String | no | " " | Fax number (optional). |
roomNumber | String | no | " " | Room/office number (optional). |
floor | String | no | " " | Floor information (optional). |
buildingNumber | String | no | " " | Building number/identifier (optional). |
streetName | String | no | " " | Street name (optional). |
streetNumber | String | no | " " | Street number (optional). |
postalCode | String | no | " " | Postal code (optional). |
telephone | String | no | " " | Telephone number (optional). |
mobilePhone | String | no | " " | Mobile phone (optional). |
phone | String | no | " " | Phone contact (optional). |
cityKey | Guid | no | "00000000-0000-0000-0000-000000000000" | City public key (optional). |
CompanyCreateInputType
Field | Type | Required | Default | Description |
|---|---|---|---|---|
name | String! | yes | | Company name. |
fiscalAttribute | String | no | | Fiscal attribute. |
fiscalCode | String! | yes | | Fiscal code (VAT ID). |
registrationCode | String | no | | Registration code. |
bankAccount1 | String | no | | Primary bank account (IBAN). |
bankAccount2 | String | no | | Secondary bank account (IBAN). |
bankName1 | String | no | | Primary bank name. |
bankName2 | String | no | | Secondary bank name. |
category | Guid! | yes | | Company category key. |
CompanyUpdateInputType
Field | Type | Required | Default | Description |
|---|---|---|---|---|
publicKey | String! | yes | | Company public key. |
name | String | no | " " | Company name (optional). |
fiscalAttribute | String | no | " " | Fiscal attribute (optional). |
fiscalCode | String | no | " " | Fiscal code/VAT ID (optional). |
registrationCode | String | no | " " | Registration code (optional). |
bankAccount1 | String | no | " " | Primary bank account/IBAN (optional). |
bankAccount2 | String | no | " " | Secondary bank account/IBAN (optional). |
bankName1 | String | no | " " | Primary bank name (optional). |
bankName2 | String | no | " " | Secondary bank name (optional). |
category | Guid | no | "00000000-0000-0000-0000-000000000000" | Company category key (optional). |
CreateGiftCardInputType
Field | Type | Required | Default | Description |
|---|---|---|---|---|
organizationKey | Guid! | yes | | Organization that owns the gift card. |
amount | Decimal! | yes | | Gift card face value (TotalAmountWithVAT). |
vatCategoryKey | Guid! | yes | | VAT category applied to the gift card amount. |
currencyKey | Guid! | yes | | Currency of the gift card amount. |
code | String | no | | External code (max 8 alphanumeric). Generated randomly if omitted. |
name | String | no | | Gift card display name/title, shown in CRM. Falls back to the code if omitted. |
startOn | DateTime! | yes | | Validity start date (non-UTC, as stored). |
expireOn | DateTime! | yes | | Expiry date (non-UTC, as stored). |
CustomerAddressCreateInputType
Field | Type | Required | Default | Description |
|---|---|---|---|---|
customerKey | Guid! | yes | | Customer public key. |
streetKey | Guid! | yes | | Street public key. |
streetNumber | String | no | | Street number (free-text). |
buildingNumber | String | no | | Building number/identifier. |
staircase | String | no | | Staircase/entrance identifier. |
floor | String | no | | Floor information. |
roomNumber | String | no | | Room/apartment number. |
intercom | String | no | | Intercom code. |
landmark | String | no | | Landmark near the address. |
geoLocation | GeoLocationInputType | no | | Latitude/Longitude coordinates. |
CustomerAddressUpdateInputType
Field | Type | Required | Default | Description |
|---|---|---|---|---|
publicKey | Guid! | yes | | Address public key. |
streetKey | Guid | no | "00000000-0000-0000-0000-000000000000" | Street public key (optional). |
streetNumber | String | no | " " | Street number (optional). |
buildingNumber | String | no | " " | Building number (optional). |
staircase | String | no | " " | Staircase (optional). |
floor | String | no | " " | Floor (optional). |
roomNumber | String | no | " " | Room number (optional). |
intercom | String | no | " " | Intercom (optional). |
landmark | String | no | " " | Landmark (optional). |
geoLocation | GeoLocationInputType | no | | Latitude/Longitude coordinates. |
CustomerCompanyLinkInputType
Field | Type | Required | Default | Description |
|---|---|---|---|---|
customerKey | Guid! | yes | | Customer public key. |
companyKey | Guid! | yes | | Company public key. |
CustomerCreateInputType
Field | Type | Required | Default | Description |
|---|---|---|---|---|
category | Guid! | yes | | Customer category key. |
firstName | String! | yes | | Customer first name. |
lastName | String! | yes | | Customer last name. |
code | String | no | | Customer code/reference. |
String | no | | Customer email. | |
mobilePhone | String! | yes | | Mobile phone (mandatory). |
workPhone | String | no | | Work phone. |
homePhone | String | no | | Home phone. |
birthDate | DateTime | no | | Customer date of birth (optional). |
CustomerMarketingActionInputType
Field | Type | Required | Default | Description |
|---|---|---|---|---|
customerKey | Guid! | yes | | Customer public key. |
marketingActionKey | Guid! | yes | | Marketing action public key. |
value | Boolean! | yes | | Action flag value (opt-in = true, opt-out = false). |
CustomerUpdateInputType
Field | Type | Required | Default | Description |
|---|---|---|---|---|
publicKey | Guid! | yes | | Customer public key. |
category | Guid | no | "00000000-0000-0000-0000-000000000000" | Customer category key (optional). |
firstName | String | no | " " | Customer first name (optional). |
lastName | String | no | " " | Customer last name (optional). |
code | String | no | " " | Customer code/reference (optional). |
String | no | " " | Customer email (optional). | |
mobilePhone | String | no | " " | Mobile phone (optional). |
workPhone | String | no | " " | Work phone (optional). |
homePhone | String | no | " " | Home phone (optional). |
birthDate | DateTime | no | "0001-01-01T00:00:00" | Customer date of birth (optional). |
DeliveryOrderCreateInputType
Field | Type | Required | Default | Description |
|---|---|---|---|---|
channelType | Short | no | | Sales channel type ID. |
key | Guid | no | | Optional client-supplied idempotency key. If a delivery order with this key already exists, the mutation returns the DuplicateKey error instead of creating a new order. |
attendedOrder | Boolean | no | true | TRUE when order must be confirmed by any system user |
customerKey | Guid! | yes | | Customer public key. |
customerAddressKey | Guid | no | | Customer address public key. |
locationKey | Guid | no | | Fulfillment location public key. |
callCenterKey | Guid | no | | Call center public key (if applicable). |
salePriceCategoryKey | Guid! | yes | | Sale price category used for this order. |
customerComments | String | no | | Comments from the customer. |
deliveryFee | Decimal | no | | Custom delivery fee override. |
deliveryTime | DateTime | no | | Requested delivery time (null or UTC datetime). |
subtotalDiscount | SubtotalDiscountInputType | no | | Order-level discount. |
serviceChargeFee | Decimal | no | | Service charge fee amount. |
orders | [OrderProductInputType]! | no | [] | List of products/items in the order. |
payments | [OrderPaymentInputType] | no | [] | Payment methods used for the order. |
invoice | OrderInvoiceInputType | no | | Invoice billing details (if requested). |
GeoLocationInputType
Field | Type | Required | Default | Description |
|---|---|---|---|---|
lat | Float! | yes | | |
lng | Float! | yes | | |
LocationStreetUpsertInputItemType
Field | Type | Required | Default | Description |
|---|---|---|---|---|
deliveryAreaKey | Guid! | yes | | Delivery area public key. |
locationKey | Guid! | yes | | Location public key. |
streetKey | Guid! | yes | | Street public key. |
customerDeliveryFee | Decimal | no | | Customer delivery fee (optional override). |
driverDeliveryFee | Decimal | no | | Driver delivery fee (optional override). |
priority | Short | no | | Priority level (optional override). |
LocationStreetUpsertInputType
Field | Type | Required | Default | Description |
|---|---|---|---|---|
items | [LocationStreetUpsertInputItemType]! | yes | | List of location-street mapping items to upsert. |
OrderAddonInputType
Field | Type | Required | Default | Description |
|---|---|---|---|---|
variants | [OrderAddonVariantProductInputType] | no | [] | Selected addon variants. |
options | [OrderAddonOptionProductInputType] | no | [] | Selected addon options. |
OrderAddonOptionProductInputType
Field | Type | Required | Default | Description |
|---|---|---|---|---|
default | Boolean! | yes | | Indicates if this is the default option. |
productKey | Guid! | yes | | Product public key. |
salePrice | Decimal! | yes | | Unit price with VAT. |
quantity | Decimal! | yes | | Quantity selected. |
packaging | ProductPackagingInputType | no | | Packaging details for the option. |
OrderAddonVariantProductInputType
Field | Type | Required | Default | Description |
|---|---|---|---|---|
variantKey | Guid! | yes | | Variant public key. |
productKey | Guid! | yes | | Product public key. |
salePrice | Decimal! | yes | | Unit price with VAT. |
packaging | ProductPackagingInputType | no | | Packaging details for the variant. |
OrderBundleInputType
Field | Type | Required | Default | Description |
|---|---|---|---|---|
options | [OrderBundleOptionProductInputType] | no | [] | List of selected bundle option items. |
OrderBundleOptionProductInputType
Field | Type | Required | Default | Description |
|---|---|---|---|---|
optionIndex | Short! | yes | | Zero-based index of the bundle option. |
productKey | Guid! | yes | | Selected product public key. |
salePrice | Decimal! | yes | | Price override or unit price with VAT. |
preparation | String | no | | Preparation instructions specific to this bundle item. |
addon | OrderAddonInputType | no | | bundle item addons content |
packaging | ProductPackagingInputType | no | | Packaging details for this bundle item. |
OrderInvoiceInputType
Field | Type | Required | Default | Description |
|---|---|---|---|---|
clientType | InvoiceClientType! | yes | | Target client type (Customer or Company). |
clientKey | Guid! | yes | | Target client public key. |
clientAddressKey | Guid! | yes | | Target client address public key. |
OrderPaymentCardInputType
Field | Type | Required | Default | Description |
|---|---|---|---|---|
transactionId | String | no | | External transaction ID (max 255 characters, longer values are truncated). |
auhtorizationId | String | no | | External authorization code (max 50 characters, longer values are truncated). |
cardInfo | String | no | | Masked card number or description (max 255 characters, longer values are truncated). |
cardType | String | no | | Card brand/type (max 50 characters, longer values are truncated). |
cardExpiration | String | no | | Card expiration date string (max 50 characters, longer values are truncated). |
OrderPaymentInputType
Field | Type | Required | Default | Description |
|---|---|---|---|---|
paymentKey | Guid! | yes | | Payment method public key. |
paymentAmount | Decimal! | yes | | Payment amount. |
processed | Boolean | no | false | Indicates if payment was already processed by external gateway (default false). |
cardPayment | OrderPaymentCardInputType | no | | Card transaction details (if applicable). |
ticketPayments | [OrderPaymentTicketInputType] | no | [] | Meal ticket details (if applicable). |
OrderPaymentTicketInputType
Field | Type | Required | Default | Description |
|---|---|---|---|---|
companyKey | Guid! | yes | | Ticket issuing company key. |
ticketValue | Decimal! | yes | | Unit value of one ticket. |
ticketCount | UInt! | yes | | Number of tickets used. |
OrderProductInputType
Field | Type | Required | Default | Description |
|---|---|---|---|---|
productKey | Guid! | yes | | Product public key. |
quantity | Decimal! | yes | | Quantity ordered. |
salePrice | Decimal! | yes | | Unit price with VAT. |
discountAmount | Decimal | no | | Discount amount applied to item. |
preparation | String | no | | Preparation instructions/comments. |
voucherKey | Guid | no | | Voucher key applied to this item. |
promotionKey | Guid | no | | Promotion key applied. |
promotionGroupKey | Guid | no | | single or multiple products belong on the same promotion unit / context |
isPromotionBenefit | Boolean | no | | Indicates if this item is a benefit of a promotion. |
bundle | OrderBundleInputType | no | | order budle content items |
addon | OrderAddonInputType | no | | order addons content |
packaging | ProductPackagingInputType | no | | Packaging details for the item. |
ProductPackagingInputType
Field | Type | Required | Default | Description |
|---|---|---|---|---|
salePrice | Decimal! | yes | | Packaging unit price with VAT. |
StreetCreateInputType
Field | Type | Required | Default | Description |
|---|---|---|---|---|
name | String! | yes | | Street name. |
cityKey | Guid! | yes | | City public key. |
startNumber | UInt! | yes | | Start street number. |
endNumber | UInt! | yes | | End street number. |
externalCode | String | no | | External code for integrations. |
districtKey | Guid | no | | District public key (optional). |
StreetUpdateInputType
Field | Type | Required | Default | Description |
|---|---|---|---|---|
publicKey | Guid! | yes | | Street public key. |
name | String | no | " " | Street name (optional) |
cityKey | Guid | no | | City public key (optional). |
startNumber | UInt | no | | Start street number (optional). |
endNumber | UInt | no | | End street number (optional). |
externalCode | String | no | " " | External code (optional). |
districtKey | Guid | no | "00000000-0000-0000-0000-000000000000" | District public key (optional). |
SubtotalDiscountInputType
Field | Type | Required | Default | Description |
|---|---|---|---|---|
value | Decimal! | yes | | Discount value (percentage or amount depending on type). |
subtotalDiscountType | OrderSubtotalDiscountType! | yes | | Type of discount (Percentage, Amount, etc.). |
promotionKey | Guid | no | | Promotion key causing the discount. |
voucherKey | Guid | no | | Voucher key causing the discount. |
loyaltyPoints | Decimal | no | | Number of loyalty points redeemed for this discount. |
WebHookLocationAvailabilityInputType
Field | Type | Required | Default | Description |
|---|---|---|---|---|
urlPath | String! | yes | | Target URL path for the webhook. |
locationKey | Guid! | yes | | Location public key associated with the event. |
isAvailable | Boolean! | yes | | Indicates if the location is available. |
WebHookLocationPreparationTimeInputType
Field | Type | Required | Default | Description |
|---|---|---|---|---|
urlPath | String! | yes | | Target URL path for the webhook. |
locationKey | Guid! | yes | | Location public key associated with the event. |
preparationTime | UInt! | yes | | New preparation time in minutes. |
WebHookOrderStatusInputType
Field | Type | Required | Default | Description |
|---|---|---|---|---|
urlPath | String! | yes | | Target URL path for the webhook. |
locationKey | Guid! | yes | | Location public key associated with the event. |
orderKey | Guid! | yes | | Order public key. |
status | Short! | yes | | supported values Held = 1, PickedUp = 3, Ready = 4, Dispatched = 5, Delivered = 6, HandedOver = 7, Canceled = 8, Assigned = 9 |
WebHookOrderTransferInputType
Field | Type | Required | Default | Description |
|---|---|---|---|---|
urlPath | String! | yes | | Target URL path for the webhook. |
orderKey | Guid! | yes | | Previous order public key. |
newOrderKey | Guid! | yes | | New order public key. |
WebHookProductStockAvailabilityInputType
Field | Type | Required | Default | Description |
|---|---|---|---|---|
urlPath | String! | yes | | Target URL path for the webhook. |
locationKey | Guid! | yes | | Location public key associated with the event. |
availableProducts | [Guid]! | yes | | List of product public keys that became available (in stock). |
unavailableProducts | [Guid]! | yes | | List of product public keys that became unavailable (out of stock). |