How Order Injection Works
Order Timing
When orders are injected depends on the fulfillment type and your configuration.ASAP Orders
Orders for immediate fulfillment are injected as soon as payment completes. The order appears in your POS right away.Pre-Orders / Scheduled Orders
For orders scheduled for a future time, injection timing depends on your settings:| Setting | Behaviour |
|---|---|
| Immediate injection | Order sent to POS right after payment |
| Delayed injection | Order sent X minutes before the requested time |
What’s Included in Orders
Each order sent to your POS contains:Order Details
- Unique order ID
- Order timestamp
- Requested fulfillment time
Items
- Product names and quantities
- Modifiers and customisations
- Item-level notes
- PLU/product codes (for linked integrations)
Customer Information
- Name
- Phone number
- Email address
Fulfillment Details
- Method (delivery, pickup, dine-in)
- Delivery address (if applicable)
- Table number (for dine-in)
- Special instructions
Payment
- Payment status (paid/pending)
- Payment method
- Tip amount (if applicable)
Error Handling
storekit is designed to handle POS communication failures gracefully.Automatic Retry
If the POS is temporarily unreachable:- storekit queues the order
- Retries automatically with exponential backoff
- Continues retrying until successful
- Order eventually appears in POS
Customer Experience
Orders always complete successfully for the customer, even if POS injection is delayed:- Payment is processed
- Customer receives confirmation
- Order appears in storekit dashboard
- You can manually enter the order if needed
Customers are never affected by temporary POS issues. Their order is confirmed and you’ll always have it in your storekit dashboard.
POS Connection Errors
If there’s a persistent connection issue, customers may see a message asking them to contact staff. This only happens in specific scenarios like pay-at-table where POS connectivity is critical.Order Modifications
Before POS Injection
If you need to modify an order before it’s sent to the POS:- Find the order in your storekit dashboard
- Make necessary changes
- The modified order is sent to the POS
After POS Injection
Once an order has been injected:- Changes in storekit don’t automatically update the POS
- Modify the order directly in your POS
- Process refunds through storekit if needed
Integration-Specific Behaviour
Different POS integrations handle orders slightly differently.Zonal
- Orders appear as online orders in Aztec
- Full modifier support
- Discounts from Zonal loyalty are recorded
- Order notes appear on tickets
Lightspeed K-Series
- Orders appear on your configured terminal
- Kitchen routing follows your Lightspeed setup
- Course assignments respected (if configured)
TISSL (PLU-based)
- Products matched by PLU codes
- Ensure all products have valid PLUs
- Unmatched items may cause order failures
Troubleshooting Order Injection
Orders Not Appearing in POS
- Check integration status: Verify the POS connection is active in Store Settings
- Check POS status: Ensure your POS terminal is online
- Review order in dashboard: Look for error messages on the order
- Check PLU codes: For manual linking integrations, verify PLUs are correct
- Check email notifications: If the order failed to sync, you’ll receive an email with error details
Delayed Orders
- Check your network connectivity
- Verify the POS API is responding
- Review any error messages in the dashboard
Missing Items or Modifiers
- Ensure all products are mapped correctly
- Check modifier PLU codes (for TISSL/manual linking)
- Verify products exist in the POS
Wrong Prices
- Check tax-inclusive vs tax-exclusive settings
- Verify prices match between systems
- Re-sync menu if using automatic sync
Best Practices
Test Before Going Live
Always test order injection thoroughly:- Place a test order with various items
- Include modifiers and special requests
- Verify everything appears correctly in the POS
- Test different fulfillment methods
Monitor Order Flow
- Regularly check that orders are flowing to POS
- Set up alerts for injection failures (if available)
- Review any failed orders promptly
Keep Systems in Sync
- Sync menus regularly if using pull integrations
- Update PLU codes when adding new items
- Test after making menu changes