(a) iVendNext endpoints your app calls
Part 1 of 4 · What you can use: API endpoints, record types, fields and screens
Every API endpoint your service calls on a retailer's iVendNext: the record calls, the iVendNext methods, the event feed and reports. Built from api/openapi.yaml and api/README.md.
Back: the overviewNext: (b) Endpoints iVendNext calls on your service
Records: read and write any record type
Every record call is the same few addresses for every record type, /api/resource/⟨Record Type⟩. The calls the samples make, each with its parameters and answers on the API reference; every record type with its fields on its own page (all record types).
| Call | Address | What it does | Record type |
|---|---|---|---|
GET |
/api/resource/Sales%20Invoice |
List booked sales — the reconciliation pull filters on modified after a watermark |
Sales Invoice |
GET |
/api/resource/Sales%20Invoice/{name} |
Read one sale with its lines | Sales Invoice |
GET |
/api/resource/POS%20Invoice |
List till sales (POS Invoices) | POS Invoice |
GET |
/api/resource/POS%20Invoice/{name} |
Read one till sale with its lines | POS Invoice |
GET |
/api/resource/Item |
List items — e.g. fields=["name","item_group"] and a name in [...] filter |
Item |
GET |
/api/resource/Item/{name} |
Read one item | Item |
GET |
/api/resource/Customer |
List customers | Customer |
GET |
/api/resource/Warehouse |
List stores and stock locations (warehouses) | Warehouse |
GET |
/api/resource/Serial%20No |
List serial numbers — e.g. by item_code or status |
Serial No |
GET |
/api/resource/Serial%20No/{name} |
Read one serial number | Serial No |
GET |
/api/resource/Serial%20and%20Batch%20Bundle/{name} |
Read the serial numbers a sale or stock line moved (its entries) |
Serial and Batch Bundle |
GET |
/api/resource/Stock%20Entry |
List stock movements | Stock Entry |
POST |
/api/resource/Stock%20Entry |
Create a stock movement — with docstatus 1 it is created and booked in one call |
Stock Entry |
GET |
/api/resource/Stock%20Entry/{name} |
Read one stock movement — its lines name the Serial and Batch Bundle that holds their serials | Stock Entry |
POST |
/api/v2/document/Stock%20Entry/{name}/method/submit/ |
Book (submit) a draft stock movement — the two-step alternative | Stock Entry |
GET |
/api/resource/Comment |
List comments on a record — how a service finds its own earlier comment | Comment |
POST |
/api/resource/Comment |
Write a comment on a record — visible to staff on that record in iVendNext Desk | Comment |
GET |
/api/resource/POS%20Profile |
List till profiles and the selling warehouse each sells from | POS Profile |
GET |
/api/resource/POS%20Profile/{name} |
Read one till profile — its warehouse is where a till sale takes stock from |
POS Profile |
GET |
/api/resource/Bin |
Read stock balances (iVendNext's own figures) — actual_qty per item and warehouse |
Bin |
GET |
/api/resource/{record_type} |
List records of a type the partner's manifest installed (e.g. PP BLN Item In Bin) |
any record type |
POST |
/api/resource/{record_type} |
Create a record of a manifest-installed type | any record type |
GET |
/api/resource/{record_type}/{name} |
Read one record of a manifest-installed type, with its child rows | any record type |
PUT |
/api/resource/{record_type}/{name} |
Change fields on one record — a child table sent here replaces its rows, so send the existing rows too | any record type |
iVendNext methods
Calls other than records, each POST (or GET to read) to /api/method/ivendnext_mpos.api.v1.⟨name⟩: the engine's own functions under iVendNext names, with the same rights and answers. The list and what to watch for: api/README.md. From is the first POS build that has the method; the first list is every build with the partner API.
| Method | From | What it does |
|---|---|---|
scan_barcode |
the first list | Find the item a barcode, serial number or lot number belongs to, as the till's scan finds it. |
get_item_details |
the first list | Price one line as the shop prices it: the item's rate, discounts and taxes for a customer, price list, store and quantity. |
price_check |
the first list | Both in one call: the scan, then the price of what it found (nothing found: no price). |
apply_workflow |
the first list | Move a record to its workflow's next state, as a user pressing the workflow's button, with that user's rights. |
submit |
the first list | Submit (book) a saved draft record. A till sale at a register with a partner's check in scope is refused here: book it from a till. |
bulk_update |
the first list | Change several records in one call, each with the caller's rights. |
get_count |
the first list | Count the records of a type that match your filters, without reading them. |
get_password |
the first list | Read a password field of a record. Only a user with System Manager may: your app's own user is refused. |
get_docinfo |
the first list | A record's comments, attachments, assignments and change history, as its page in Desk shows them. |
add_comment |
the first list | Write a comment on a record, shown on its page in Desk. |
generate_keys |
the first list | Make a new API key and secret for a user. The retailer's administrator uses it to give a user a key; it replaces the old secret. |
get_logged_user |
the first list | The user your call runs as: check whose key you hold. |
get_versions |
the first list | The versions of the apps installed on the site, to check a feature's build before you use it. |
get_role_permissions |
the first list | Read the rights each role has on a record type. |
add_role_permission |
the first list | Add a role's row of rights on a record type. |
update_role_permission |
the first list | Change one right of a role's row on a record type. |
reset_role_permissions |
the first list | Put a record type's rights back to the product's own. |
run_report |
POS 2.0.0.654 | Run one of the retailer's reports by name, with its filters (report_name, filters), and read its columns and rows as Desk shows them. Watch for: a call that names another user reads as that user, and a report the retailer switched off is refused. |
prepare_report |
POS 2.0.0.654 | Queue a background run of a prepared report (such as Stock Balance); it answers the run's record name (a Prepared Report), which you read when it is done. Watch for: it checks no right. |
get_gift_card_status |
POS 2.0.0.654 | One gift card's status as the till reads it, by its number (gift_card_no): its balance, whether it has expired, whether a payment has used it. A Gift Card record names no customer: find a customer's cards in your own records. |
material_request_to_stock_entry |
POS 2.0.0.654 | A stock movement built from a submitted request for goods, as Desk's Create menu builds it, unsaved: you save it. |
sales_order_to_delivery_note |
POS 2.0.0.654 | A delivery note built from a submitted order, as Desk's Create menu builds it, unsaved: you save it. |
sales_order_to_sales_invoice |
POS 2.0.0.654 | A sale built from a submitted order, as Desk's Create menu builds it, unsaved: you save it. |
get_batch_qty |
POS 2.0.0.654 | A lot's quantity in a store, or a store's lots of an item with stock. |
payer_coverage |
POS 2.1.0.666 | On a draft Sales Invoice in Desk: the customer's covers, then what one cover pays, sealed into the invoice. |
payer_bill_back |
POS 2.1.0.666 | Bill a claim the payer rejected back to the customer; it answers the journal booked, once per sale, claim and reason. |
check_open |
POS 2.1.0.667 | Open a check at a place, or a tab or pre-order named by its label; it answers the check at version 1. |
check_add_lines |
POS 2.1.0.667 | Add lines to an open check, with no price: the shop prices the check when the table pays at a till. |
check_change_line |
POS 2.1.0.667 | Change an unsent line nobody is paying, such as its quantity, choices or note (your own lines, or any line with the right to change any). |
check_remove_line |
POS 2.1.0.667 | Remove a line not yet sent to the kitchen and that nobody is paying. |
check_move |
POS 2.1.0.667 | Move a check to another place, or to a tab's label. |
check_move_lines |
POS 2.1.0.667 | Move some lines to another check. |
check_merge |
POS 2.1.0.667 | Merge a check into another. |
check_split_line |
POS 2.1.0.667 | Split part of a line's quantity off. |
check_transfer_server |
POS 2.1.0.667 | Hand a check to another server, at a shift's handover. |
check_edit |
POS 2.1.0.667 | Change a check's covers, label, suggested customer or service mode (the mode only until a line has gone to the kitchen). |
check_close |
POS 2.1.0.667 | Close a check with no open line. |
check_mark_sent |
POS 2.1.0.667 | Send: the unsent lines (or the named ones) go to their kitchens on the till's kitchen tickets. |
check_void_line |
POS 2.1.0.667 | Void a whole line the kitchen already has (the kitchen's manager right); a VOID ticket tells the kitchen to stop. |
check_comp_line |
POS 2.1.0.667 | Take a line off the check free (the Manager preset's right); it is never on the sale. |
check_get |
POS 2.1.0.667 | Read one check with its lines; locks nothing. |
floor_status |
POS 2.1.0.667 | The store's sections, places with their status (free, seated, ordered, paying) and tabs. |
check_preview |
POS 2.1.0.667 | The shop's own price of the open lines at your register, computed when asked, never stored. |
check_claim |
POS 2.1.0.667 | A till's own, when a check is paid. Refused to your app whatever it is granted. |
check_release |
POS 2.1.0.667 | A till's own, when a check is paid. Refused to your app whatever it is granted. |
check_note_pending |
POS 2.1.0.667 | A till's own, when a check is paid. Refused to your app whatever it is granted. |
check_clear_pending |
POS 2.1.0.667 | A till's own, when a check is paid. Refused to your app whatever it is granted. |
check_break_claim |
POS 2.1.0.667 | A till's own: end another till's payment of a check. Refused to your app whatever it is granted. |
check_print |
POS 2.1.0.667 | A till's own: the printed check for the table. Refused to your app whatever it is granted. |
station_tickets |
POS 2.1.0.669 | A kitchen station's board now (every station's when none is named): tickets sent in the last 12 hours not yet bumped, and 30 minutes of bumped ones to recall. |
station_ticket_move |
POS 2.1.0.669 | Move one ticket one step, new to started to ready to bumped; the same step again answers already. |
item_availability |
POS 2.1.0.669 | A store's items that carry a sold-out or hours rule (or the one you name), available now or not and why. |
set_item_availability |
POS 2.1.0.669 | Mark an item sold out at one store (until a time or until cleared), clear it, or set the hours it is sold; not fenced to your user's stores. |
sales_order_to_kitchen |
POS 2.1.0.675 | Sends a submitted Sales Order's lines to the kitchen's stations: only what the kitchen does not have yet. |
item_names |
POS 2.1.0.675 | Each item's name in a language you name: a guest-ordering page shows the guest's language. |
The event feed and the other calls your app makes
| Address | What it does | More |
|---|---|---|
/api/method/ivendnext_mpos.api.feed.events |
The event feed: your app's oldest events not yet done, oldest first. | details |
/api/method/ivendnext_mpos.api.feed.done |
The event feed: mark up to 500 of your events done. | details |
/api/method/ivendnext_mpos.api.feed.failed |
The event feed: mark one event failed, with your note; it comes back on the next read. | details |
/api/method/ivendnext_mpos.api.page.submit |
A partner page's answer: your server posts the cashier's choice, signed, and the till applies it. | details |
/api/method/ivendnext_pay_remote.api.callback |
A payment connector's callback: the result of a payment your connector started. | details |
Reports and reading many records at once
- The retailer's own reports:
run_reportandprepare_reportabove; what to watch for: reading the retailer's reports. - Many records in one call (sale lines, totals and groups): read many records at once.
- Signing in: every call carries
Authorization: token ⟨api key⟩:⟨api secret⟩and runs as your app's own user (security and the handshake).
Back: the overviewNext: (b) Endpoints iVendNext calls on your service