Build
You know what you are building. This page is the way from a placed need to a working app: the ladder, the recipe and sample for the rung, your sandbox, and the tests that let it ship.
The ways in, simplest first
| Rung | Way in | What it is | Your code runs | Recipe |
|---|---|---|---|---|
| 1 | Configure | pricing, promotions, coupons, sale details, line details, till keys and layouts, receipt formats (label layouts printed from the till are an extension point), workflows, numbering, permissions, reports, notifications — set in iVendNext Desk | nowhere | 4. Configure first |
| 2 | Outside app | your service reads and writes records over the API and reacts to the event feed; any language | your server or the customer's | Building a connected app · 5. Outside apps and the event feed |
| 3 | Till key | the cashier taps a key; the till calls your HTTPS service; you answer with a message or sale details | your server | A till key · 6. Till keys |
| 4 | Manifest | your own record types, fields, print formats, notifications and workspaces, declared as data and installed by the shop's administrator, checked by our code | nowhere: it is data; a print format is a template the server runs when it prints | Shipping your own data in a manifest · 7. Manifests |
| 5 | Sandboxed function | a compiled WebAssembly function at a published extension point that offers one (the check before payment and pricing do); the same answer on the server and on an offline till | inside a sandbox we run | 8. Sandboxed functions · the Wasm kit |
| 6 | Compose doors, then request | If no single door fits, compose doors before you ask for one. An outside app with a document check, a Desk button that asks for inputs, a partner page opened from a button, a capture at the scan, save rules and configuration combine to meet most needs. A composition with its limit stated (a separate screen, a tap, seconds of delay) is the answer to give, never a workaround to hide. Request an extension point only when no composition meets the customer's outcome, and say in the request which compositions you tried and why each falls short. | — | 9. The extension-point catalogue |
Combine rungs. A real project is usually several (and rung 6 is the same idea for one need: combine the doors you have before you ask for another): a manifest for the records, configuration for the screens and approvals, an outside service for the logic, a till key for the cashier. Chapter 15 shows the combinations by customer size.
Where to go next
- The recipes — one recipe for each job, with its steps and commands.
- The samples — small working examples, each with its tests: copy the nearest one.
- Your sandbox — request a sandbox: your own hosted shop to build and test on.
- The extension points — chapter 9 lists each one, and how to ask for a new one.
- Testing and release — chapter 14: the release gate in the customer's own CI.
- Not sure the need is placed? Look it up in the needs catalogue first.