UNPKG

supersonic-models

Version:

Supersonic models and API specifications

1,536 lines (1,534 loc) 39.4 kB
type: object required: - current - serial - product - count - version - wan - ip - device - raygunEnabled - display - timezone - storeName - versionId - type - env - id - datasource - site - initialPage - order - payment - diagnostics - mocks - properties - modes - paymentMethods - paymentMethodsOptions - receipt - content - languages - interval properties: current: type: boolean serial: type: string product: type: string example: supersonic version: type: string example: "1.0.0" wan: type: string ip: type: string device: type: string raygunEnabled: type: boolean storeAddress: type: string display: type: string example: "kiosk" timezone: type: string example: "Australia/Sydney" storeName: type: string example: "Fingermark Lab 1" versionId: type: string type: type: string example: "kiosk" env: type: string example: "uat" id: type: string initialPage: type: object required: - url - redirect properties: url: type: string redirect: type: boolean order: type: object required: - cancelOrderEndpoint - organisationId - preOrderEndpoint - kitchenCheckEndpoint - local - finishOrderEndpoint - placeOrderEndpoint - storeId - headers - type - startOrderEndpoint properties: cancelOrderEndpoint: type: string organisationId: type: string example: "yum-au-kfc" preOrderEndpoint: type: string kitchenCheckEndpoint: type: string startOrderEndpoint: type: string placeOrderEndpoint: type: string finishOrderEndpoint: type: string storeId: type: string example: "16" type: type: string example: "aloha" headers: type: object local: type: object required: - orderName - tenderIdRules - jobCodeId - queueId - orderModeRules - defaultTenderId - orderMode - tenderIdMapping - employeeId - terminalId properties: orderName: type: string tenderIdRules: type: array items: $ref: "./key-value-pair.yaml" jobCodeId: type: integer queueId: type: integer orderModeRules: type: array items: $ref: "./key-value-pair.yaml" defaultTenderId: type: string example: "3" orderMode: type: integer tenderIdMapping: type: array items: $ref: "./key-value-pair.yaml" employeeId: type: integer terminalId: type: integer aloha: type: object required: - destination - paymentMethodType - endpoint - env - placeOrderIndividualItems - useLoyalty - originType - checkIns - authBasicToken - companyCode - sendEmail - menuId - loyalty - intent properties: destination: type: integer paymentMethodType: type: string example: "8" endpoint: type: string env: type: string example: "dev" placeOrderIndividualItems: type: boolean useLoyalty: type: boolean originType: type: integer checkIns: type: array items: type: object required: - destination - orderType - originType - intent properties: destination: type: string example: "1" orderType: type: string example: "DINE_IN" originType: type: string example: "2" intent: type: integer authBasicToken: type: string minLength: 40 companyCode: type: string minLength: 7 sendEmail: type: boolean menuId: type: integer loyalty: type: object required: - applicationId - baseUrl - authBasicToken - companyCode properties: applicationId: type: string baseUrl: type: string authBasicToken: type: string companyCode: type: string intent: type: integer mycentral: type: object required: - applicationId - receiveMarketingEmail - orderNumberSource - phone - deliveryOptionsRequiringBeacon - kioskId - endpoint - cultureCode properties: applicationId: type: string receiveMarketingEmail: type: boolean orderNumberSource: type: string example: "CREDIT_CARD_LAST_2_DIGITS" kioskId: type: string endpoint: type: string cultureCode: type: string example: "en-AU" payment: type: object required: - verifone - noon - fab - adyen - provider properties: verifone: type: object required: - port - pinpadIp properties: port: type: integer pinpadIp: type: string example: "0.0.0.0" noon: type: object required: - channel - currency - testToken - tokenize - locale - name - test - category - liveToken properties: channel: type: string example: "web" currency: type: string example: "AED" testToken: type: string tokenize: type: boolean locale: type: string example: "en" name: type: string test: type: boolean category: type: string example: "pay" liveToken: type: string fab: type: object required: - ecrNumber - terminalId - pid - comPort - vid properties: ecrNumber: type: string example: "001" terminalId: type: string pid: type: string example: "1234" comPort: type: string example: "COMX" vid: type: string example: "123" adyen: type: object required: - env - isLocal - manufacturer - keyVersion - apiKey - keyIdentifier - test - poiId - kioskName - passphrase - application - currency - referenceType - saleId - pinpadIp properties: env: type: string example: "test" isLocal: type: boolean manufacturer: type: string keyVersion: type: integer apiKey: type: string keyIdentifier: type: string test: type: boolean poiId: type: string kioskName: type: string passphrase: type: string application: type: string currency: type: string example: "AUD" referenceType: type: string saleId: type: string pinpadIp: type: string example: "0.0.0.0" provider: type: string example: "adyen" diagnostics: type: object required: - health properties: health: type: string mocks: type: object required: - payment - paymentChromeShell - refund - kitchenHealthCheck - printer - order - voucher properties: payment: type: boolean paymentChromeShell: type: boolean refund: type: boolean kitchenHealthCheck: type: boolean printer: type: boolean order: type: boolean voucher: type: boolean properties: type: object required: - deviceId - storeId - organisation properties: deviceId: type: string minLength: 20 storeId: type: string minLength: 20 organisation: type: string minLength: 20 modes: type: object required: - touchless - beacon - sms - miniCart - coupon - dineIn - survey properties: touchless: type: boolean beacon: type: boolean sms: type: boolean miniCart: type: boolean coupon: type: boolean dineIn: type: boolean survey: type: boolean paymentMethods: type: object required: - mastercard - majorCards - cashAndCredit - paywave - apple - visa - google - amex properties: mastercard: type: boolean majorCards: type: boolean cashAndCredit: type: boolean paywave: type: boolean apple: type: boolean visa: type: boolean google: type: boolean amex: type: boolean paymentMethodOptions: type: object required: - cash - google - manualCard - manualCash - card - giftCard - apple properties: cash: type: boolean google: type: boolean manualCard: type: boolean manualCash: type: boolean card: type: boolean giftCard: type: boolean apple: type: boolean receipt: type: object required: - messages - printer - type - showInitials - paymentVatNumber - email - sms properties: messages: type: array items: type: object required: - multipleOffers - productId - url - message properties: multipleOffers: type: string productId: type: string url: type: string message: type: string printer: required: - port - ip properties: port: type: string ip: type: string example: "0.0.0.0" type: type: string example: "sms" showInitials: type: boolean paymentVatNumber: type: string email: type: object required: - smtp - sendgrid - type properties: smtp: type: object required: - user - port - host - pass properties: user: type: object port: type: object host: type: object pass: type: object sendgrid: type: object required: - api properties: api: type: string type: type: string sms: type: object required: - type - routemobile - other properties: type: type: string routemobile: type: object required: - username - endpoint - source - password properties: username: type: string endpoint: type: string source: type: string password: type: string other: type: object required: - endpoint properties: endpoint: type: string content: type: object required: - healthCheckToken - addresses - homeBurger - upsellPopup - comboUpsize - devTools - healthCheckId - healthMsg properties: healthCheckToken: type: string addresses: type: array items: type: string homeBurger: type: boolean upsellPopup: type: boolean comboUpsize: type: boolean devTools: type: boolean healthCheckId: type: string healthMsg: type: boolean interval: type: object required: - restart - receipt - timeout - pinpad - log - refresh properties: restart: type: object required: - times properties: times: type: array items: type: string receipt: type: object required: - redirect properties: redirect: type: integer timeout: type: object required: - warning - receipt - order - session - success properties: warning: type: integer receipt: type: integer order: type: integer session: type: integer success: type: integer pinpad: type: object required: - refund - payment properties: refund: type: integer payment: type: integer log: type: object required: - delete properties: delete: type: integer refresh: type: object required: - menu - settings properties: menu: type: integer settings: type: integer languages: type: object required: - uae - available - default properties: uae: type: boolean default: type: string available: type: array items: type: object required: - key - direction - name - translations properties: key: type: string direction: type: string example: "ltr" name: type: string example: "United Kingdom" translations: type: object required: - menuSettingsError - doYouReallyWantTo - kioskLocked - categoryNotFound - orderStartProcessInstruction - orderFinishProcessMessage - emailCaseInsensitive - serialKeyNotFound - restart - receiptInstructions - couponCode - refundErrorMessage - waitingSettings - addToOrder - addMore - orderProcessCardErrorMessage - useKioskReboot - menuFound - orderFinishProcessInstruction - continue - small - refundSuccess - lockKiosk - settingsSerialKeyError - settingsFound - waitingMenu - orderHere - adminActions - menuTryAgainOnError - smsReceiptMessage2 - productNotFound - comingSoon - orderHealthCheckErrorMessage - manualRefundInstructions - takeaway - menu - upsellModalTitle - timeoutPopupMessageSecondLine - orderHealthCheckTitle - kioskOverview - firstName - receiptTitleLoading - seeReceipt - test - adminRefresh - continueOrder - smsMessageReceipt - customiseCategoryMessagePlural - advancedPanel - orderProcessTryAgainOnError - order - applePay - change - receiptOrderType - cart - timeoutPopupMessageFirstLine - paymentPending - notFoundSubTitle - siteNumber - extra - paymentErrorMessage - tableService - receiptClaimInstructions - eatIn - orderHealthCheckTryAgainOnError - customiseCategoryMessage - healthTagTitle - selectPaymentMethod - taxInvoice - orderTotal - console - address - manualRefundTitle - cancelPaymentInstructions - productUnavailableModalLine2 - notFoundTitle - orderIdMessage - productUnavailableModalLine1 - paymentTryAgainOnError - orderFinishProcessTitle - items - productUnavailableInCartMessage - adminKAS - back - pleaseWait - lockscreen - refundTryAgainOnError - paymentTypesAccepted - beaconTitle - receiptSubTotalVatTotal - receiptTitle - returnToCategories - smsReceiptMessage4 - customiseCategoryAddedPrice - inYourMeal - paymentWaitingActionOnPinPad - errorPlacingOrder - lockScreen - checkKioskConsole - completeOrder - menuNotFound - changeSelection - waitForReceipt - adminReboot - sendReceipt - fancyLittleMore - allergensNutritionInfo - orderProcessCashErrorMessage - remove - keepBrowsing - receiptClaimInstructionsCash - orderStartProcessMessageCash - chooseYourLanguage - adminLockScreen - exit - no - cartEmpty - cancelOrder - adminView - smsReceiptMessage3 - orderProcessErrorMessage - orderStartProcessMessage - wouldLikeReceipt - adminSendSettlementRequest - smsReceiptMessage1 - adminSoftLockScreen - giftCard - receiptTotalWithOrderType - serialEntry - thankYou - actions - addAdditionalItem - viewOrder - transactions - receiptPopupMessage - gstNumber - orderPickupInstruction - next - settingsNotFound - posFailure - clear - orderHealthCheckInstruction - paperFree - majorCards - yes - orderHealthCheckMessage - smsMessageOrder - orderCancelProcessInstruction - emailAddress - healthTagText - vatNumber - softLockScreen - adminPanel - proceedToPayment - card - serialKeyTryAgainOnError - timeoutPopupButton - enterOffer - orderProviderError - done - addMoreToYourOrder - enterDetails - confirm - selectMealSize - receiptSubTotalVatExclusive - phoneNumberInvalid - total - yourOrder - receiptSentSuccess - restartingApplication - updateOrder - orderPickupInstructionBeacon - countryCodeInvalid - kitchenErrorMessage - large - cash - adminMenu - seeTransactionReceipt - whenReady - couponTryAgainOnError - receiptError - contains - regular - waitingSerialKey - orderPickupInstructionCash - add - sendSettlementRequest - advanced - googlePay - cancel - useComingSoon - generatingReceipt - loadingDataFromCache - customise - profaneString - adminExit - serialKeyFound - refundWaitingActionOnPinPad - kitchenTryAgainOnError - addToCart - cancelYourOrder - receiptPopupClose - hungry - removedCustomisedProduct - refundProcessMessage - adminConsole - settingsTryAgainOnError - kas - orderCancelProcessTitle - adminTransactions - settings - lastInitial - yourOrderNumber - receiveEmailAddress - checkingKitchenMessage - orderInitialsMessage - emailInvalid properties: menuSettingsError: type: string doYouReallyWantTo: type: string kioskLocked: type: string categoryNotFound: type: string orderStartProcessInstruction: type: string orderFinishProcessMessage: type: string emailCaseInsensitive: type: string serialKeyNotFound: type: string restart: type: string receiptInstructions: type: string couponCode: type: string refundErrorMessage: type: string waitingSettings: type: string addToOrder: type: string addMore: type: string orderProcessCardErrorMessage: type: string useKioskReboot: type: string menuFound: type: string orderFinishProcessInstruction: type: string continue: type: string small: type: string refundSuccess: type: string lockKiosk: type: string settingsSerialKeyError: type: string settingsFound: type: string waitingMenu: type: string orderHere: type: string adminActions: type: string menuTryAgainOnError: type: string smsReceiptMessage2: type: string productNotFound: type: string comingSoon: type: string orderHealthCheckErrorMessage: type: string manualRefundInstructions: type: string takeaway: type: string menu: type: string upsellModalTitle: type: string timeoutPopupMessageSecondLine: type: string orderHealthCheckTitle: type: string kioskOverview: type: string firstName: type: string receiptTitleLoading: type: string seeReceipt: type: string test: type: string adminRefresh: type: string continueOrder: type: string smsMessageReceipt: type: string customiseCategoryMessagePlural: type: string advancedPanel: type: string orderProcessTryAgainOnError: type: string order: type: string applePay: type: string change: type: string receiptOrderType: type: string cart: type: string timeoutPopupMessageFirstLine: type: string paymentPending: type: string notFoundSubTitle: type: string siteNumber: type: string extra: type: string paymentErrorMessage: type: string tableService: type: string receiptClaimInstructions: type: string eatIn: type: string orderHealthCheckTryAgainOnError: type: string customiseCategoryMessage: type: string healthTagTitle: type: string selectPaymentMethod: type: string taxInvoice: type: string orderTotal: type: string console: type: string address: type: string manualRefundTitle: type: string cancelPaymentInstructions: type: string productUnavailableModalLine2: type: string notFoundTitle: type: string orderIdMessage: type: string productUnavailableModalLine1: type: string paymentTryAgainOnError: type: string orderFinishProcessTitle: type: string items: type: string productUnavailableInCartMessage: type: string adminKAS: type: string back: type: string pleaseWait: type: string lockscreen: type: string refundTryAgainOnError: type: string paymentTypesAccepted: type: string beaconTitle: type: string receiptSubTotalVatTotal: type: string receiptTitle: type: string returnToCategories: type: string smsReceiptMessage4: type: string customiseCategoryAddedPrice: type: string inYourMeal: type: string paymentWaitingActionOnPinPad: type: string errorPlacingOrder: type: string lockScreen: type: string checkKioskConsole: type: string completeOrder: type: string menuNotFound: type: string changeSelection: type: string waitForReceipt: type: string adminReboot: type: string sendReceipt: type: string fancyLittleMore: type: string allergensNutritionInfo: type: string orderProcessCashErrorMessage: type: string remove: type: string keepBrowsing: type: string receiptClaimInstructionsCash: type: string orderStartProcessMessageCash: type: string chooseYourLanguage: type: string adminLockScreen: type: string exit: type: string no: type: string cartEmpty: type: string cancelOrder: type: string adminView: type: string smsReceiptMessage3: type: string orderProcessErrorMessage: type: string orderStartProcessMessage: type: string wouldLikeReceipt: type: string adminSendSettlementRequest: type: string smsReceiptMessage1: type: string adminSoftLockScreen: type: string giftCard: type: string receiptTotalWithOrderType: type: string serialEntry: type: string thankYou: type: string actions: type: string addAdditionalItem: type: string viewOrder: type: string transactions: type: string receiptPopupMessage: type: string gstNumber: type: string orderPickupInstruction: type: string next: type: string settingsNotFound: type: string posFailure: type: string clear: type: string orderHealthCheckInstruction: type: string paperFree: type: string majorCards: type: string yes: type: string orderHealthCheckMessage: type: string smsMessageOrder: type: string orderCancelProcessInstruction: type: string emailAddress: type: string healthTagText: type: string vatNumber: type: string softLockScreen: type: string adminPanel: type: string proceedToPayment: type: string card: type: string serialKeyTryAgainOnError: type: string timeoutPopupButton: type: string enterOffer: type: string orderProviderError: type: string done: type: string addMoreToYourOrder: type: string enterDetails: type: string confirm: type: string selectMealSize: type: string receiptSubTotalVatExclusive: type: string phoneNumberInvalid: type: string total: type: string yourOrder: type: string receiptSentSuccess: type: string restartingApplication: type: string updateOrder: type: string orderPickupInstructionBeacon: type: string countryCodeInvalid: type: string kitchenErrorMessage: type: string large: type: string cash: type: string adminMenu: type: string seeTransactionReceipt: type: string whenReady: type: string couponTryAgainOnError: type: string receiptError: type: string contains: type: string regular: type: string waitingSerialKey: type: string orderPickupInstructionCash: type: string add: type: string sendSettlementRequest: type: string advanced: type: string googlePay: type: string cancel: type: string useComingSoon: type: string generatingReceipt: type: string loadingDataFromCache: type: string customise: type: string profaneString: type: string adminExit: type: string serialKeyFound: type: string refundWaitingActionOnPinPad: type: string kitchenTryAgainOnError: type: string addToCart: type: string cancelYourOrder: type: string receiptPopupClose: type: string hungry: type: string removedCustomisedProduct: type: string refundProcessMessage: type: string adminConsole: type: string settingsTryAgainOnError: type: string kas: type: string orderCancelProcessTitle: type: string adminTransactions: type: string settings: type: string lastInitial: type: string yourOrderNumber: type: string receiveEmailAddress: type: string checkingKitchenMessage: type: string orderInitialsMessage: type: string emailInvalid: type: string datasource: type: object required: - storeId - provider - customer properties: storeId: type: string example: "8888" provider: type: string example: "aloha" customer: type: string example: "yum-au-kfc" site: type: object required: - name - storeId - isKioskClosed - workingHours - address properties: name: type: string example: "KFC Digital Lab" storeId: type: string example: "8888" isKioskClosed: type: boolean workingHours: type: array items: type: object required: - weekday - to - from properties: weekday: type: string example: sun from: $ref: "./time.yaml" to: $ref: "./time.yaml" address: type: object required: - addressLine1 - addressLine2 - state - phone - postal - city properties: addresLine1: type: string addressLine2: type: string state: type: string phone: type: string postal: type: string city: type: string count: type: object required: - timestamp - numberOfMeals - numberOfProducts - numberOfCoupons - numberOfUpsells - numberOfCategories - numberOfProductsPage properties: timestamp: type: object properties: _seconds: type: integer _nanoseconds: type: integer description: Google's timestamp object numberOfMeals: type: integer example: 2 numberOfProducts: type: integer example: 461 numberOfCoupons: type: integer example: 5 numberOfUpsells: type: integer example: 5 numberOfCategories: type: integer example: 15 numberOfProductsPage: type: integer example: 10