iVendNextDevelopers My apps

(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

Back: the overviewNext: (b) Endpoints iVendNext calls on your service