This release contains contract updates to three APIs.
Highlights
-
Reporting API exposes two new franchisee endpoints and adds void/refund state fields to order responses, but removes the
washing/selected*fields from order responses across seven endpoints. Consumers of those fields must review. -
Catalog API v1 adds optional void/refund state and
voidingRowKeyrequest properties to every product type on the add and bulk endpoints — pairs directly with the new Reporting response fields. -
Administration API adds company-level settings (AI assistant, customer satisfaction query, franchisees enablement) and workstation-level customer satisfaction query configuration.
Administration API
API Contract Update: New Optional Properties Added
New optional properties were added to selected Administration API response schemas.
Affected endpoints
-
GET /v1-ext/Company
-
GET /v1-ext/Workstation
-
GET /v1-ext/Workstation/{id}
Affected fields
Response (GET /v1-ext/Company) Added new optional properties under company settings:
-
aiAssistant
-
customerSatisfactionQuery
-
franchiseesEnabled
Response (GET /v1-ext/Workstation and GET /v1-ext/Workstation/{id}) Added new optional properties on each interaction device configuration under interactionService.interactionDeviceConfigurations[]:
-
customerSatisfactionQuery
-
customerSatisfactionQueryTimeout
Consumer action No mandatory action is required for existing consumers, since all added properties are optional.
However:
-
Consumers of GET /v1-ext/Company may start receiving the new optional fields under company settings.
-
Consumers of GET /v1-ext/Workstation and GET /v1-ext/Workstation/{id} may start receiving
customerSatisfactionQueryandcustomerSatisfactionQueryTimeouton each interaction device configuration.
If you use strict schema validation, generated models, or explicit request/response mappings, consider updating them to include these new properties.
Catalog API v1
API Contract Update: Void/Refund State and voidingRowKey Added to All Product Types
New optional request properties were added to every product type on the add-product and bulk endpoints. These fields track the void/refund state of a product and pair with the matching new response fields in the Reporting API.
Affected endpoints
-
POST /v1-ext/Products/addProduct
-
POST /v1-ext/Products/bulk
Affected product types (applies uniformly to all five)
-
CustomProductInApiModel
-
GiftCardProductInApiModel
-
ServiceProductInApiModel
-
StockProductInApiModel
-
VariantProductInApiModel
Affected fields
Request (both endpoints, all product types) Added the following new optional request properties on each product variant:
-
isRefunded
-
isRefunding
-
isVoided
-
isVoiding
-
voidingRowKey
On POST /v1-ext/Products/bulk these fields appear under /items/oneOf[<ProductType>]/...; on POST /v1-ext/Products/addProduct they appear under /oneOf[<ProductType>]/....
Consumer action No mandatory action is required for existing consumers, since all added properties are optional.
However:
-
Consumers of POST /v1-ext/Products/addProduct and POST /v1-ext/Products/bulk can now optionally provide the void/refund state and
voidingRowKeyon any product type.
If you use strict schema validation, generated models, or explicit request/response mappings, consider updating them to include these new properties on all product-type variants.
Reporting API
New Endpoints: Franchisees
Two new endpoints were added for retrieving franchisee data.
Added endpoints
-
GET /v1-ext/Franchisees
-
GET /v1-ext/Franchisees/{id}
Consumer action No action required for existing consumers. New consumers can call the endpoints to list franchisees or retrieve a franchisee by id. This pairs with the new franchiseesEnabled company setting exposed by the Administration API in this release.
Backward-Incompatible: washing/selected* Response Properties Removed
Three optional properties under washing have been removed from products[] and refundedRows[] in every order-returning response across the Reporting API. Consumers that currently read these fields will no longer receive them.
Affected endpoints
-
POST /v1-ext/Orders
-
GET /v1-ext/Orders/getAllAfter/{fromEpoch}
-
GET /v1-ext/Orders/getAllAfterByPage/{fromEpoch}
-
GET /v1-ext/Orders/getAllInDateRange
-
GET /v1-ext/Orders/getAllPaidAfter/{fromEpoch}
-
GET /v1-ext/Orders/getByReceiptId/{receiptId}
-
GET /v1-ext/Orders/{orderId}
Removed fields (from both products[] and refundedRows[] on each endpoint above)
-
washing.selectedDeliveryTime
-
washing.selectedMethodCode
-
washing.selectedPlaceCode
On the paged endpoint GET /v1-ext/Orders/getAllAfterByPage/{fromEpoch}, the removals apply under reportingOrders/items/products[] and reportingOrders/items/refundedRows[].
Consumer action (review required) Consumers must:
-
Stop expecting
washing.selectedDeliveryTime,washing.selectedMethodCode, andwashing.selectedPlaceCodeinproducts[]andrefundedRows[]responses. -
Remove references to these fields in generated models, strict schema validators, and any downstream mappings, dashboards, or exports that consume them.
If any downstream feature depends on these values, coordinate with the Reporting API team before the release to identify a replacement source.
API Contract Update: Void/Refund State and Accounting Fields Added
New optional properties were added to order responses across the same seven endpoints. Additions include void/refund state fields (mirroring the new Catalog v1 request properties) and an accountName field on account line items.
Affected endpoints (same seven as removals above)
-
POST /v1-ext/Orders
-
GET /v1-ext/Orders/getAllAfter/{fromEpoch}
-
GET /v1-ext/Orders/getAllAfterByPage/{fromEpoch}
-
GET /v1-ext/Orders/getAllInDateRange
-
GET /v1-ext/Orders/getAllPaidAfter/{fromEpoch}
-
GET /v1-ext/Orders/getByReceiptId/{receiptId}
-
GET /v1-ext/Orders/{orderId}
Affected fields
Added on each item in products[] and refundedRows[]:
-
isRefunded
-
isRefunding
-
isVoided
-
isVoiding
-
voidingRowKey
-
accountLines[].accountName
Added on each item in payments[]:
-
accountLines[].accountName
On the paged endpoint GET /v1-ext/Orders/getAllAfterByPage/{fromEpoch}, the additions appear under reportingOrders/items/....
Consumer action No mandatory action is required for existing consumers, since all added properties are optional.
However:
-
Consumers of the listed endpoints may start receiving void/refund state fields and
voidingRowKeyon each product and refunded row. -
Consumers may also start receiving
accountNameon every account line underproducts[],refundedRows[], andpayments[].
If you use strict schema validation, generated models, or explicit request/response mappings, consider updating them to include these new properties.
Services with no changes
The following services have no API contract changes in this release:
-
Accounting API
-
Catalog API v2
-
Customership API
-
GiftCards API
-
Orders API
-
Receipts API
-
Stock Handling API v1
-
Stock Handling API v2
-
Webhooks API