Where and when
Address reference, IANA timezone, preferred days and windows, ranked fallbacks, preparation lead time, and review deadline.
Preferences define when to prepare, what tradeoffs are acceptable, how much may be spent, and how the user wants to be notified. Every order records the exact version it used.
Address reference, IANA timezone, preferred days and windows, ranked fallbacks, preparation lead time, and review deadline.
Target amount, hard maximum, price increase limit, size tolerance, global substitution default, and excluded categories.
Preview, assisted, approval-required, or future autopilot mode; pause; vacation; approval expiration; reconnect policy.
Cart-ready message, authentication request, exception alert, review reminder, delivery reminder, and selected channels.
interface HouseholdPreferences {
householdId: string;
timezone: string;
delivery: {
addressRef: string;
rankedWindows: DeliveryWindowPreference[];
allowFallbackDay: boolean;
};
basket: {
targetAmountCents?: number;
hardMaximumCents: number;
maximumPriceIncreasePercent: number;
defaultSubstitutionPolicy: SubstitutionPolicy;
};
automation: {
mode: 'preview' | 'assisted' | 'approval-required';
prepareLeadHours: number;
approvalExpiresMinutes: number;
};
version: number;
}
| Setting | Validation | Failure behavior |
|---|---|---|
| Timezone | Valid IANA identifier | Cannot enable schedule |
| Hard maximum | Positive USD amount and compatible with policy | Inline correction required |
| Delivery windows | At least one ranked allowed window | Schedule remains draft |
| Automation mode | Consent and release gate allow selected mode | Downgrade to available mode |
| Address reference | Belongs to connected retailer context | Reconnect or reselect |