Store
iRetail PRO store node 1.0.0-m1
← All documentation · Source: contracts openapi/store-v1.yaml at 8000474.
← iRetail PRO store node 1.0.0-m1
LocalizedText map of string
Text by language code; the organization's default language must be present.
BarcodeTemplate object
pattern required
|
string |
|
weight_unit
|
"kg" | "lb" |
|
weight_decimals
|
integer |
Store object
id required
|
string (uuid) |
|
code required
|
string |
|
name required
|
LocalizedText |
|
country required
|
string |
|
country_pack required
|
"none" | "us" |
The country pack whose rules the store follows (spec/COUNTRY_PACKS.md, data/country-packs.json); set when the store is made and never changed. |
currency required
|
string |
|
currency_exponent required
|
integer |
|
unit_system required
|
"metric" | "us_customary" |
|
tax_mode required
|
"exclusive" | "inclusive" |
|
timezone required
|
string |
|
receipt_language required
|
string |
|
hold_ttl_seconds required
|
integer |
|
cash_rounding_minor required
|
integer (int64) | null |
|
barcode_templates required
|
array of BarcodeTemplate |
|
register_share required
|
integer | null |
The registers the hub gives this store out of the license (spec/LICENSE.md); null without a share. |
network_enabled required
|
boolean | null |
The store's switch for the private network (spec/NETWORK.md); false keeps it out, null follows the organization. |
network_block required
|
integer | null |
The store's /24 block in the organization's subnet, set by the hub; null outside a chain. |
tax_by_category required
|
boolean |
Lines carry the tax codes that apply to their item's category (spec/TAX.md), not the item's own codes. |
profile required
|
StoreProfile |
|
pse_limits required
|
PseLimits |
|
expired_sale required
|
"refuse" | "approve" |
A unit a GS1 code shows expired is refused, or sold with a senior's approval for expired.sell (spec/BARCODES.md, GS1 codes). |
voids_allowed required
|
boolean |
Whether a receipt of the open shift may be voided; false where the country forbids voids, so a return is made instead (spec/FISCAL.md). |
expiry_run_at required
|
string |
The local time after which the day's expiry rules run, 05:00 by default (spec/PRICING.md, Expiry rules). |
check_hold_minutes required
|
integer |
How long a restaurant check's stock holds live after the check's last change or renewal, 240 by default (spec/RESTAURANT.md, Stock on a check). |
seated_long_minutes required
|
integer |
When a table counts as seated long on the floor, in whole minutes from its oldest open or billed check's opened_at, 90 by default (spec/RESTAURANT.md, The floor). |
service_charges required
|
array of ServiceCharge |
The store's service charges, in the order they apply; empty for none (spec/API.md, Service charges). |
back_office_updates required
|
"automatic" | "ask" |
Whether the store's back offices install a ready update by themselves at a safe moment after a 60-second countdown (automatic, the default) or ask the person (ask); a record from a hub before 1.1 reads as automatic (spec/RELEASES.md, Installing). Changing it needs release.manage beside the patch's own permission. |
public_profile
|
PublicProfile | null |
What the customer app shows of the store (spec/PUBLIC_API.md, Stores); null, the default, hides it. A record from a node or hub before 1.1 reads as null. |
min_app_versions required
|
MinAppVersions |
|
version required
|
integer (int64) |
MinAppVersions object
The oldest version of each app the store's node serves, set by a person: the only way to block an old version of an app. {}, the default, names no minimum. A request from an app below its minimum, or from a device of that app's kind that does not say its version, is refused 426 app_update_required, never an exempt operation; a minimum later than the release the node runs counts as that release. Read with store.read; changing it needs release.manage beside the patch's own permission and is audited (store.min_app_versions_changed). A version that does not parse is 400 bad_version, one later than the release the node runs (at the hub, the hub's) 422 invalid_min_app_version. A store record from an older hub without it reads as {} (spec/RELEASES.md, The store's minimum).
cashier
|
string |
The register's (and the handheld's and the kitchen display's) minimum. |
manager
|
string |
The back office's and the console's minimum. |
gateway
|
string |
The device gateway's minimum. |
PseLimits object
The store's pseudoephedrine limits (spec/PHARMACY.md), the federal ones by default.
daily_mg required
|
integer |
|
window_mg required
|
integer |
|
window_days required
|
integer |
StoreProfile "general" | "supermarket" | "grocery" | "pharmacy" | "coffee_shop" | "pizzeria" | "restaurant"
What kind of shop the store is; the apps' defaults follow it (spec/API.md, "Store profiles").
general · supermarket · grocery · pharmacy · coffee_shop · pizzeria · restaurant
ServiceChargeTax object | object
codes: the store's tax codes the charge carries, none for an untaxed charge, one at most in an inclusive store; follow_lines: each line's share is taxed as the line is (spec/RECEIPT_MATH.md, Service charges).
ServiceCharge object
One of a store's service charges (spec/API.md, Service charges); never a tip.
id required
|
string |
|
label required
|
ServiceChargeLabel |
|
rate_ppm required
|
integer |
|
min_covers required
|
integer | null |
The party size from which it applies to a check; null for every check and sale. |
order_types required
|
array of "dine_in" | "take_out" | "delivery" |
|
base required
|
"after_discounts" | "before_discounts" |
|
tax required
|
ServiceChargeTax |
|
to_staff_ppm required
|
integer |
The part the business pays its staff, printed and reported for payroll; the node moves no money. |
notice required
|
map of string |
The store's words by language code, up to 300 characters in each, on the pre-bill, the receipt and the guest menu; {} for none. |
ServiceChargeLabel map of string
What the bill, the receipt, the reports and the fiscal back end call a service charge, by language code; 1 to 40 characters in each.
PublicProfile object
visible required
|
boolean |
|
name required
|
LocalizedText |
|
address required
|
LocalizedText |
|
phone required
|
string | null |
|
latitude_e7 required
|
integer | null |
Degrees × 10^7; null with longitude_e7 for no position. |
longitude_e7 required
|
integer | null |
|
hours required
|
OpeningHours |
|
preorders required
|
PreorderSettings | null |
How the store takes preorders (spec/PREORDERS.md, Pickup windows), or null for not at all. |
low_stock_milli required
|
integer | null |
The storefront's low level for items without their own; null for 2000. |
OpeningHours array of object
Opening periods by ISO weekday (1 Monday) in the store's time zone; a day with none is closed, and a period whose closes is not after opens is refused (422 invalid_profile, field hours).
PreorderSettings object
spec/PREORDERS.md, Pickup windows; a field left out takes its default.
slot_minutes
|
15 | 30 | 60 | 120 |
|
lead_minutes
|
integer |
|
days_ahead
|
integer |
|
grace_minutes
|
integer |
|
max_lines
|
integer |
|
online_payment
|
boolean |