advance_warranty_claim
ChatGPTMoves an existing warranty claim to a later status, with the technician's diagnosis or a repair estimate. delivered closes it for good; ready and delivered text the customer when warranty SMS is on. rejected and refunded need a manager PIN in the app.
close_shift
ChatGPTEnds a branch's open cash-drawer session against the cash counted out and records the variance. A closed drawer cannot be reopened, and a count off by more than Tk 1 is refused — that close needs a manager.
create_product
ChatGPTWrites one new product row in the business's own catalog. Prices are in paisa (minor units).
create_product_image_upload
ChatGPTMints one single-use browser link, valid 30 minutes, that attaches a single image of up to 5 MB as a product’s main photo. An earlier photo from this same flow is deleted; one the owner added in the app moves to position 2 and is kept. Nothing is written until that file arrives.
create_purchase_order
ChatGPTWrites a DRAFT purchase order and its lines. It is never transmitted to the supplier and commits no money; sending stays behind maker-checker approval.
create_sale
ChatGPTWrites one sale: invoice and receipt number, stock decrement, payment; the business resolves lot and price. May SMS the customer a receipt (if on); on khata, alerts the owner's linked Telegram (default on) and SMSes the customer (if on). Voidable 24 h via void_sale; no refunds.
create_supplier
ChatGPTWrites one new supplier record, including payment terms and any opening balance.
get_cash_position
ChatGPTMoney actually received over a date range, split by payment method — the daily-close figure.
get_cashier_performance
ChatGPTPer-cashier sale count, revenue, discount given and voids over a date range.
get_customer_dues
ChatGPTThe receivables board: customers who owe the shop, biggest first, with the exact shop-wide total owed. With q, the matching customers and what each owes.
get_dead_stock
ChatGPTProducts with no sales in the lookback window, and the capital tied up in each one.
get_expense_summary
ChatGPTOperating spend over a date range, totalled and broken down by expense category.
get_inventory_valuation
ChatGPTCurrent stock value at cost and at retail, with per-category subtotals and a shop-wide total.
get_inventory_velocity
ChatGPTSell-through rate per product: units sold per day, and estimated days of stock remaining at that rate.
get_low_stock_items
ChatGPTProducts at or below their reorder level, with current stock on hand and the reorder point.
get_product_image_upload
ChatGPTThe most recent photo-upload link’s state for one product — awaiting_upload, uploaded, failed (sent but not stored, so nothing changed), expired or never_requested — plus the shop’s own photos in order with their photo_id, and whether it shows a shared-catalog picture instead.
get_profit_summary
ChatGPTGross profit (revenue minus cost of goods sold) over a date range. With a group_by dimension it returns the same figures broken down by that dimension instead of a single total.
get_reorder_suggestions
ChatGPTSuggested purchase quantities per product, derived from recent sales velocity, current stock and reorder level.
get_sale
ChatGPTOne invoice in full: header totals, payment method and every line item on it.
get_sales_summary
ChatGPTCompleted-sale count and revenue totals (subtotal, discount, VAT, total) for a date range, for the signed-in business's own data only. Voided, refunded and pending sales are excluded.
get_sales_trend
ChatGPTRevenue and sale count bucketed over time (by day, week or month) across a date range.
get_shift_status
ChatGPTWhether a cash drawer (POS shift) is open at a branch, how long, who opened it, and the cash the close-out would expect in it: float + cash sales + khata + deposits − approved cash drops − expenses paid from the till. A drawer open for days was abandoned, not worked.
get_shop_profile
ChatGPTThe signed-in business's own storefront details: name, address, working hours, contact channels, BIN/TIN, storefront URL, theme and plan.
get_suppliers
ChatGPTThe supplier directory, and — for owner, admin, regional-manager and pharmacist callers — accounts payable per supplier, shop-wide totals and aging buckets; other roles receive the directory alone. Also the source of a supplier_id for a purchase order.
get_top_products
ChatGPTBest-selling items over a date range, ranked by quantity sold or by revenue, capped at 50 rows.
get_warranty_claims
ChatGPTWarranty and RMA claims: the claim board, one claim's detail with its audited event timeline, view=summary for desk-health aggregates, or view=unit for a serial/IMEI coverage check.
get_wastage
ChatGPTStock written off over the last N days (max 366), in units: totals by kind (damaged, and other wastage such as stolen or lost), entry counts, and the most-wasted products. No money value. Items written off by weight add entries but no units.
hand_over_warranty_claim
ChatGPTRecords that the customer collected the device and closes the warranty claim for good: no reopen, advance or note after it.
list_products
ChatGPTProducts in the business's own catalog, optionally narrowed by free-text q, barcode or sku, with the matching total count.
list_sales
ChatGPTRecent sales newest-first, header rows only, cursor-paginated, with voided ones flagged. get_sale with a sale_id gives one sale line by line.
log_expense
ChatGPTWrites one operating-expense row: amount in paisa, category, date and an optional note.
logout
ChatGPTRevokes EVERY assistant connection the signed-in operator holds to this business, not only the calling one: any other ChatGPT, Claude or connected app they signed in from stops too, on every brand. Other operators and counter devices are unaffected.
lookup_customer
ChatGPTOne customer's profile, khata (on-account) balance, loyalty position, lifetime spend, recent invoices and usual items.
open_shift
ChatGPTStarts a branch's cash-drawer session with the cash counted into it; every later variance is measured against that float. One drawer per branch: a branch with one already open is refused.
open_warranty_claim
ChatGPTBooks a device in as a NEW warranty claim by serial or IMEI, with the fault in the customer's words, adding the customer by phone if new. A device with a claim already open is refused. Returns the new claim number.
receive_stock
ChatGPTWrites a new pooled stock batch: quantity, unit cost, and optional batch number and expiry date. The stock becomes sellable immediately.
receive_unit
ChatGPTWrites one serialized unit into stock, identified by its IMEI or serial number.
receive_warranty_repaired
ChatGPTRecords that the supplier repaired the customer's OWN device and returned it with the same serial or IMEI; a different device is refused. A new unit in its place is receive_warranty_replacement instead.
receive_warranty_replacement
ChatGPTRecords the DIFFERENT unit a supplier sent in place of a claimed device, by its serial or IMEI, and whether its warranty continues or starts fresh. The same device, repaired, is receive_warranty_repaired instead.
receive_warranty_supplier_restock
ChatGPTPuts the supplier's unit for a warranty claim onto the shop's shelf as sellable stock — the tail of a claim already settled from the shop's own stock — identified by serial or IMEI.
record_customer_payment
ChatGPTRecords money a customer handed over, against their khata (on-account) balance, and reduces what they owe. It moves no money at any payment gateway. Paying past zero is refused unless allow_advance is set. Only cash completes; other tenders need a reference it cannot take.
remove_product_photo
ChatGPTRemoves one photo from a MODEL's gallery and permanently deletes its file, addressed by photo_id — never an individual serialized unit's photo.
reorder_product_photos
ChatGPTRewrites the order of a MODEL's photos, main photo first, listing every current photo_id once — never an individual serialized unit's photos. A gallery edited elsewhere is reported, not overwritten.
search_catalog
ChatGPTSearches the SHARED reference catalog, which is not the business's own stock, so a new product can be linked to a canonical entry.
search_help
ChatGPTThe published in-app user manual for this business's vertical — how the app works and how to do things in it. Product documentation only: no sales, stock, customer or staff data. A slug returns one article in full, in English and Bangla; otherwise matching titles.
send_warranty_claim_to_supplier
ChatGPTRecords that a warranty claim's device went to a supplier for repair or replacement: the supplier, its RMA number, and when the device is due back.
set_primary_product_photo
ChatGPTMakes one of a MODEL's existing photos the main one, addressed by the photo_id the status tool lists — never an individual serialized unit's photo. No file is uploaded or deleted.
update_product
ChatGPTOverwrites fields of an EXISTING product (name, prices, missing cost, location, reorder level, status, listing, barcode, category, MRP, description, key features, FAQ, specifications). Listed products and prices are public: storefront, marketplace if joined, linked Meta catalog.
void_sale
ChatGPTCancels one sale within 24 hours of it being rung up: the stock returns to its branch, the payments are reversed and any amount on a khata is credited back. The invoice number is kept. Older sales need a refund, which is not on this server.
create_product
Claudecreate_purchase_order
Claudecreate_supplier
Claudeget_cash_position
Claudeget_cashier_performance
Claudeget_dead_stock
Claudeget_expense_summary
Claudeget_inventory_valuation
Claudeget_inventory_velocity
Claudeget_low_stock_items
Claudeget_profit_summary
Claudeget_reorder_suggestions
Claudeget_sale
Claudeget_sales_summary
Claudeget_sales_trend
Claudeget_shop_profile
Claudeget_suppliers
Claudeget_top_products
Claudeget_warranty_claims
Claudeget_wastage
Claudelist_products
Claudelog_expense
Claudelogout
Claudelookup_customer
Claudemanage_warranty_claim
Claudereceive_stock
Claudereceive_unit
Clauderecord_customer_payment
Claudesearch_catalog
Claudeupdate_product
Claude