API reference

Custom GraphQL queries and mutations served at /api/graphql.

Declared in features/keystone/mutations/index.ts. Every mutation takes an input object with businessId, usually storeId, and an idempotencyKey; it returns OperationResult. Money is integer cents.

Queries

storefrontCatalog, storefrontBasket, storefrontHistory, storefrontRewards, conveniencePublicStorefront, conveniencePlatformProjection, conveniencePlatformNavigation, convenienceReportingSummary, posSaleReceipt, posOperationOutcome, downloadExportArtifact, assistantCapability, redirectToInit.

Mutations

AreaMutations
Setup and brandonboardConvenienceBusiness, configureBusinessBrand, configureRegister, configureInventoryLocation
Staff and sessionssetOwnPosPin, openEmployeeShift, closeEmployeeShift, revokeCurrentUserSessions
TillsopenRegisterSession, recordCashMovement, closeRegisterSession
POScreatePosCart, addPosCartLine, updatePosCartLine, removePosCartLine, transitionPosCart, applyPromotionToCart, completePosSale, refundPosSale, voidCompletedPosSale
Catalog and pricingconfigureCatalogItem, setRetailPrice, configureStoreTaxRate, configurePromotion
Restricted salesconfigureAgeRestrictionPolicy, verifyRestrictedSaleAge, transitionComplianceIncident
LoyaltyconfigureLoyaltyProgram, enrollLoyaltyAccount, adjustLoyaltyPoints, applyLoyaltyRedemptionToCart, expireLoyaltyPoints
PurchasingconfigureVendor, configureVendorItem, draftPurchaseOrder, transitionPurchaseOrder, receivePurchaseOrder
InventorystartInventoryCount, recordInventoryCountLine, postInventoryAdjustment, transitionInventoryCount, approveInventoryCount, draftInventoryTransfer, transitionInventoryTransfer
Prepared foodconfigurePreparedFoodRecipe, startPrepBatch, completePrepBatch, recordWasteEvent
FuelconfigureFuelTopology, setFuelPrice, recordFuelTankReading, recordFuelDelivery, authorizeFuelPayment, cancelFuelPaymentAuthorization, completeFuelTransaction, generateFuelReconciliation, approveFuelReconciliation
Store daygenerateStoreDayReconciliation, approveStoreDayReconciliation, prepareBankDeposit, transitionBankDeposit
ExportsconfigureExportDestination, generateDailyAccountingExport, transitionExportBatch
AlertsevaluateOperationalAlerts, transitionOperationalAlert, recordOperationalHeartbeat
LotteryconfigureLotteryGame, receiveLotteryPack, activateLotteryPack, recordLotteryPackSale, closeLotteryPack, generateLotterySettlement, approveLotterySettlement
Money servicesconfigureMoneyServiceProvider, recordExternalMoneyServiceTransaction, voidExternalMoneyServiceTransaction, generateMoneyServiceSettlement, approveMoneyServiceSettlement
PaymentsconfigurePaymentProvider, generatePaymentReconciliation, approvePaymentReconciliation
Offline and outboxregisterOfflineDevice, transitionOfflineDevice, recordOfflineReplayBatch, claimOutboxEvents, completeOutboxEvent, replayOutboxEvent
API keyscreateBusinessApiKey, revokeBusinessApiKey
StorefrontupdateStorefrontBasket

Example: open a drawer

mutation {
  openRegisterSession(input: {
    businessId: "..."  storeId: "..."  registerId: "..."
    employeeId: "..."  openingCashCents: 20000
    idempotencyKey: "open-reg1-2026-10-30"
  }) { __typename }
}

Key inputs

  • completePosSale: cartId, tenders[] (method, amountCents, tenderedCents, paymentProviderId, providerPaymentId, providerAuthority, cardBrand, cardLast4)
  • refundPosSale: saleId, registerSessionId, employeeId, reason, lines[], tenderAllocations[], managerPin
  • receivePurchaseOrder: purchaseOrderId, locationId, employeeId, lines[]
  • startInventoryCount: locationId, type, variantIds

On this page