Asking for a new extension point, or for more from one
Part 3 of 5 · 9. The extension points, and how to ask for a new one
Back: More extension pointsNext: When your service is down, and when the till is offline
- Say what you need, not how. Describe the customer's need in business terms. A request that needs money changed in a hook, an override, a server script or in-tenant code by an outsider is read as a request for the need to be met another way.
- Check the table under The extension points, and the ladder. If an extension point already does it, the answer says which.
- Fill in the request form. It has three short questions and a tick box: what you need to do (and the step in the sale it concerns), the closest extension point, and what happens if it is never built. We ask the rest in the issue: the data in, the answer out, what should happen when your service is down, how long the cashier may wait, and what should happen offline. A request that leaves out down, slow or offline comes back with those questions.
- Send it. The form is a GitHub issue form in the private feedback repository,
ivendnext-developers/partner-feedback, open to onboarded members: an iVendNext Partner, a licensed customer's IT team and the CitiXsys Consulting Team (feedback). Every member can read every issue, so leave out secrets and customers' names.
What happens next. It is given an id and answered in the issue, as one of four things: answered (an existing door already meets it, and the answer says which), needs more (a question about a field), planned (it joins the work we do, and you can follow it) or declined, with the reason. Requests of the same kind are collected, and the collection decides what is built next. We give no date.
What is refused, and why
- A request that breaks one of the four rules (chapter 3): money changed after the cashier has seen it, an override or patch of iVendNext, your code inside the customer's site, your own screens in Desk or on the till. These are declined with the reason, not planned.
- Product work dressed as an extension point. A change to what every cashier sees, or to the order of the steps, is product work, not something a partner extends. It is declined, with that reason.
- A declaration the product has no door for. A manifest kind no extension point accepts installs nothing, and the checker warns: "'⟨kind⟩' is not a kind this product installs".
- A sandboxed function where there is no module leg. Only the check before payment and pricing run a module, and only one we have certified.
Back: More extension pointsNext: When your service is down, and when the till is offline