API Release Notes - Build 0.2.145
Build 0.2.145 · PAR POS v5.16 r2 · Version History v2.0 · June 2026
API Change Report: v5.16 → v5.16 r2
No Breaking Changes in this Release. All changes are fully backward compatible. Existing integrations require no code changes.
API Portal & Documentation
Full API documentation — including message examples, schema definitions, and field descriptions — is available on the PAR Developer Portal.
API Best Practices
Request Rate & Batching
Batch requests should be sequential. If end-customer systems allow multi-threaded load, adhere to the recommended Requests Per Minute (RPM) limits below.
Changes should be published and tested on one location first, then cascade to other locations.
If changes are made in parallel at multiple locations, only single-record changes should be executed — bulk/batch operations are not recommended in parallel scenarios.
Changes from one location must not be cascaded to more than 500 locations at once.
Rate Limits (applicable for both EOD and Immediate Publish)
| Endpoint Group | Max Batch Size | Max RPM |
|---|---|---|
| SaveItems, SaveDestinations, SaveTaxes | 100 | 5 |
| DeleteItems, DeleteDestinations, DeleteTaxes | 20 | 5 |
| SavePriceChange / DeletePriceChange | Not recommended (single record only) | — |
API Build 0.2.145 — What’s New
New Features
| ID | Description |
|---|---|
| AS1-3617, AS1-3495, AS1-3638 | DSP modifier group pricing — SOAP support added. The SavePriceChanges and GetPriceChanges SOAP operations (Settings2.svc) now support alternate modifier group pricing per Delivery Service Partner (DSP), matching the REST implementation shipped in 0.2.143. A nested PriceChange → ModifierGroupPriceChanges → ModifierGroupItemPriceChanges model is used. Use negative IDs when creating new records; positive IDs for updates. Note: ModifierGroupPriceChange and ModifierGroupItemPriceChange are part of the runtime contract but are not yet declared in the CDN-published Settings2.xml WSDL — see the WSDL Changes section below. The modifier pricing fields in the SOAP contract follow PascalCase (ModifierGroupId, ModifierGroupItemId, Price); the group Name field is accepted but not persisted. Save semantics are delta-only: send only the changed modifier group items, not the full group. |
WSDL Changes (0.2.143 → 0.2.145)
The CDN-published WSDL files have the following status in this release. SOAP clients relying on auto-generated proxies from the CDN WSDL should review the notes below before implementing modifier pricing.
| WSDL | Change in 0.2.145 | Notes |
|---|---|---|
| Settings2.xml | No change (byte-identical) | ModifierGroupPriceChange and ModifierGroupItemPriceChange types are NOT declared in the CDN-published WSDL. Use the runtime contract shapes documented in this guide. Refer to wsdl-diff/WSDL_DIFF_REPORT.txt and wsdl-diff/MODIFIER_SCHEMA.txt for full diff details. |
| Sales2.xml | Updated | Adds three new fields to the Order type: CustomerMaskedAccountNumber (masked gift card account number, per AS1-3581); FutureDateOrderStatus (FDO status string — Pending, Processed, or Closed — per POG-3254/AS1-3493); and AccountNumber on OrderGiftCard (gift card last 4 digits, per AS1-3581). Integrators using the GetOrders or GetFutureDateOrders SOAP operations should regenerate proxies or manually add these fields to their contracts. |
| HouseAccounts.xml | No change | No API-relevant changes in this release. |
| Kitchen.xml | No change | No API-relevant changes in this release. |
| Labor2.xml | No change | No API-relevant changes in this release. |
| Ordering.xml | No change | No API-relevant changes in this release. |
| Settings.xml (v1) | No change | No API-relevant changes in this release. |
Key Field Rules (SOAP & REST)
| Field | Rule |
|---|---|
| ModifierGroupItemId (SOAP) / modifierGroupItemId (REST) | Maps to ModifierGroupItem.Id (the container/mapping ID), NOT the menu ItemId. |
| Price / price | Required for modifiers with ModifierPriceMethod = ModifierPrice. |
| Group Name (SOAP) | Accepted in XML but not stored. Omit for clarity. |
| Item name / originalPrice | Not stored; not part of the REST schema. |
| Save semantics | Delta-only — send only changed modifier group items, not the full group. |
| Create vs. update | Use negative Id for new records; positive Id for existing records. |
API Build 0.2.143 — What’s New
New Features
| ID | Description |
|---|---|
| AS1-3581 | Gift card last 4 digits now returned by GetOrders. The GetOrders API (REST and SOAP) now returns the last 4 digits of a gift card’s account number in a new AccountNumber field on the OrderGiftCard object. The field is masked for security, consistent with how payment card numbers are handled elsewhere in the API. API portal documentation and the OpenAPI schema have been updated to reflect the new field. Note: AccountNumber is only populated for OrderGiftCard items and does not apply to other order line types. |
|
AS1-3318 AS1-3582 |
SavePromotions pricing and availability updates via API (PMP/RSI integration). The SavePromotions API now supports modifying promotion price and availability through external price management integrations such as RSI/PMP. Two new REST endpoints are now available for managing promotions:
A new SOAP SavePromotions operation is also available, supporting the same create/update workflows. Supported promotion types: BOGO, Gift Card, Coupon, Order Reduction, and Combo. Promotions can include complex configurations such as qualifications, discount items, combo components, destinations, sections, eligible items/groups, and custom fields — all with IDs automatically assigned on creation. Changes can be published immediately or via changesets. Obsolete fields have been clearly marked in the API contract to guide integrators away from deprecated properties. Notes
|
| AS1-3495, AS1-3546, AS1-3557, AS1-3578 | DSP-specific modifier group pricing added. The SavePriceChange and GetPriceChange APIs now support alternate modifier group pricing per Delivery Service Partner (DSP). A new ModifierGroupPriceChanges array field has been added to the PriceChange data type, along with two new data types: ModifierGroupPriceChange (modifier group identifier, name, and a list of item price changes) and ModifierGroupItemPriceChange (item identifier and updated price). The Ordering Service now applies DSP-specific pricing logic when a modifier group item’s price method is set to ModifierPrice. Full API Portal documentation and code samples (C#, C# Core, Python, XML) are included. This change is fully backward compatible — the ModifierGroupPriceChanges field is optional and only required when DSP-specific modifier pricing is needed. Update Postman collections and SoapUI suites accordingly. |
| AS1-3583 | GetSettings now returns marketing campaign data for SavePromotion. The GetSettings API response now includes marketing campaign data fields, matching the structure and field names exposed by the Settings Editor UI. This data is required input for the SavePromotion API — campaign attributes returned by GetSettings must be supplied back when creating or editing a promotion via API. Without this fix, promotion save operations would fail validation. |
| POG-3254 | FDO status now included in historical order data. FDO status (Pending / Processed / Closed) is now surfaced through the cloud API for back-office integrators. Previously, FDO status was available in the Historical Data Model (Order:v1.4) but was not returned by the GetOrders API, preventing integrators from determining the intended business date for a Future Delivery Order. This change wires the property end-to-end: the HD Worker now reads FutureOrderDetail.Status from incoming HDM messages and persists it to the JSONB Details column, legacy PosHistorical contracts have been updated, and the status is correctly deserialized and returned from the cloud API. Note: the Status field is optional (nullable) — orders without FDO data will return null, and existing integrations are unaffected. See AS1-3493 for the follow-on work to map FDO status through to the brink. externalapi HistoricalOrderFutureOrder model. |
| MPP-37 | CalculateOrder and SubmitOrder API enhancements. Both APIs now support percentage-based and fixed-amount discounts via discountPercentage and discountAmount fields, applied to the pretax subtotal. SubmitOrder has been extended with three additional capabilities: an employeeId field to associate orders with a specific employee (supporting tip handling, till management, and tip pooling); expanded payment metadata, including CardType, CardNumber (masked to last 4 digits), TransactionNumber, and TransactionIdentifier; and support for auto-added surcharges. Existing CalculateOrder and SubmitOrder functionality is unchanged. |
Version History
| Version | Date | Updates |
|---|---|---|
| 1.0 | 6/8/26 | Initial Release |
| 2.0 | 7/10/26 | Added API Build 0.2.145 section with AS1-3617, AS1-3495, AS1-3638; WSDL change table |