MCP App Store
by KeenEthics
Gluon ERP AI Assistant icon

Gluon ERP AI Assistant

By Gluon ERP

Get New App Alerts

Overview

Gluon ERP AI Assistant helps businesses access and understand their Gluon ERP data through natural language. Users can ask questions about sales, customers, receivables, account balances, inventory, orders, tenant details, subscription status, and other supported ERP information. The assistant uses secure authenticated access to retrieve live ERP data, then presents results in a clear business-friendly format such as KPI summaries, compact tables, customer profiles, trend views, rankings, and analytical observations. It is designed for managers, sales teams, finance teams, operations teams, and business owners who need quick answers from ERP data without navigating multiple reports. Gluon ERP AI Assistant is read-only. It does not create, update, delete, approve, post, cancel, or modify ERP records. When information is unavailable or requires a more specific selection, the assistant asks for clarification instead of guessing.

Tools

approve_approvals

ChatGPT
Approves one or several of the user's approvals, exactly as the Approvals screen does. A PENDING approval: the stage is approved, the approval becomes Approved when it was the last stage (otherwise it stays Pending for the next stage), and the linked document and voucher are updated. TWO STEPS: (1) call with confirm=false (default) to check every item - nothing is saved; (2) show the preview to the user and, only after they explicitly confirm, call again with the SAME items and confirm=true. Required: items (1 to 50), each with approvalId and approvalDetailId from get_approvals (status Pending); optional remarks and bulk per item. Items that cannot be approved (not your stage, already processed, forms that must be handled in the application) are reported and skipped; the others still go through. For an UPCOMING approval (an earlier stage is still pending) set bulk=true on the item: every pending stage up to the user's stage is approved at once and the user is saved as the approver on all of them. Notifications are saved for the creator and the next-stage approvers.

compare_customers

ChatGPT
Compares two or more customers (detailAccountIds, at most 20) across business metrics for a period. Use it for questions like compare ABC with XYZ, which customer purchased more, or compare their sales and outstanding. Optional fromDate/toDate (inclusive; toDate is also the reference date for Overdue and DaysSinceLastPurchase, default today) and metrics (default NetSales, OrderCount, AverageOrderValue, Collections, Outstanding, Overdue, Returns). Metrics: NetSales (CurrencyRate x Quantity plus tax), GrossSales (Quantity x CurrencyTradePrice), Quantity, InvoiceCount (invoices), OrderCount (sales orders), AverageOrderValue (NetSales / OrderCount), CollectionAmount (receipts allocated to the invoices of the period), Outstanding (invoice net of the period minus those receipts), Overdue (overdue amount from the account summary as of toDate), ReturnAmount (sales returns incl. tax), ReturnPercent (ReturnAmount / NetSales x 100), GrossProfit (batch quantity x (CurrencyRate minus CostPrice)), DaysSinceLastPurchase (days since the latest approved purchase invoice booked against the account as vendor). Returns customers (in the order requested), each with customerId, detailAccountId, customerName and one camelCase field per requested metric (netSales, orderCount, averageOrderValue, collectionAmount, outstanding, overdue, returnAmount ...). Describe measurable differences rather than declaring a better customer.

create_customer_receipt

ChatGPT
Creates a customer receipt (money received from a customer) with its cash/bank receipt voucher (CRV/BRV) and, when the Receipt approval process is on for the tenant, an approval request, exactly as the Receipt screen does. TWO STEPS: (1) call with confirm=false (default) to get a preview (receipt number, voucher number, whether approval is needed) - nothing is saved; (2) show the preview to the user and, only after they explicitly confirm, call again with the SAME arguments and confirm=true. Always send a requestKey (a new GUID per receipt) so a retry never creates a duplicate. Required: companyId, currencyId (tenant base currency only), customerDetailAccountId, stationId, amount (>0), paymentType (Cash, Transfer or Draft; PDC unsupported), depositAccountId (a Cash account for Cash, a Bank account for Transfer/Draft). Optional: remarks, manualReceiptNo, costCenterId, instrumentNo (cheque/transfer/draft number, must be new), instrumentDate, lineComment, depositComment, bankNameId, employeeId and invoiceId (a pending invoice to settle; the amount may not exceed its remaining amount). Discount and tax are not supported yet. PDC is not a receipt: use create_pdc. The receipt date is today. Get ids from get_receipt_form_options and search_customers.

create_expense

ChatGPT
Creates an expense (money paid out for an expense account) with its EX voucher and, when the Expense approval process is on for the tenant, an approval request, exactly as the Expense screen does. TWO STEPS: (1) call with confirm=false (default) to get a preview (expense number, voucher number, whether approval is needed) - nothing is saved; (2) show the preview to the user and, only after they explicitly confirm, call again with the SAME arguments and confirm=true. Always send a requestKey (a new GUID per expense) so a retry never creates a duplicate. Required: companyId, currencyId (tenant base currency only), expenseAccountId (an Expense account), stationId, amount (>0), paymentType (Cash or Bank), payFromAccountId (a Cash account for Cash, a Bank account for Bank). Optional: remarks, manualRefNo. The expense date is today. Get ids from get_expense_form_options.

create_pdc

ChatGPT
Creates a PDC (post-dated cheque received from a customer) and keeps it in a locker (PDC in hand), exactly as the PDC In Hand screen does. A PDC is NOT a receipt: no receipt or voucher is created, and no discount or tax is saved. TWO STEPS: (1) call with confirm=false (default) to get a preview (PDC number) - nothing is saved; (2) show the preview to the user and, only after they explicitly confirm, call again with the SAME arguments and confirm=true. Always send a requestKey (a new GUID per PDC) so a retry never creates a duplicate. Required: companyId, currencyId (tenant base currency only), customerDetailAccountId, stationId, bankNameId, lockerId, chequeType (CrossCheque, Guarentee, Open, Cash or Other), chequeNo (max 20 characters). Optional: chequeDate, amount, signatory (max 50), costCenterId, remarks. Get ids from get_pdc_form_options.

discover_report_capabilities

ChatGPT
Discover authorized sources and exact filters/fields/charts before authoring.

execute_saved_report

ChatGPT
Execute a saved report as the caller; recheck current data permissions and sharing. Routine UI refresh does not need this tool.

get_account_balance

ChatGPT
Returns the Gluon ERP balance of a customer, vendor, cash, bank or other detail account.

get_approval_details

ChatGPT
Shows one approval in detail. Give approvalId or approvalDetailId (from get_approvals). Returns the document (number, date, form, company, station, cost center, amount, creator), every approval stage in order (stage name, status, who approved or rejected, date, remarks), who can approve each stage (users and roles), and what the signed-in user can do: canActNow (approve/reject this stage now) or canBulk (an upcoming stage: approve/reject it together with the earlier pending stages using bulk=true). Use it when the user wants to look at ONE approval before deciding.

get_approvals

ChatGPT
Lists the signed-in user's approvals (all statuses when status is empty, or one status): Pending (waiting for the user now, can be approved or rejected), Approved (approved by the user), Rejected (rejected by the user) or Upcoming (will reach the user after earlier stages). Each row has approvalId and approvalDetailId (needed by approve_approvals / reject_approvals), document number and date, form, company, station, cost center, amount, stage and who created it. Filters: companyId, stationId, costCenterId, formId, docNo (one partial or several separated by spaces), dateFrom, dateTo, newestFirst. With no dates and no docNo it returns THIS MONTH's approvals; pass dateFrom/dateTo to see other periods. Optional status: leave it out to get every approval of the user (all rows, no paging).

get_current_tenant

ChatGPT
Returns the currently authenticated Gluon ERP tenant context.

get_current_user

ChatGPT
Returns the currently authenticated Gluon ERP user context.

get_customer_account_summary

ChatGPT
Returns a customer's financial position from approved ledger vouchers, using the same sources and formulas as the Sale and Recovery report. Pass customerId/detailAccountId (or customerName) for one customer; pass no customer to get every customer of the tenant (totals plus a customers list with each customer's figures). Optional fromDate/toDate; balances are as of toDate (default today). Fields: openingBalance (balance before fromDate; 0 when fromDate is omitted), sales, salesQuantity, salesReturns, salesReturnQuantity, collections (= cashReceipt + bankReceipt), cashReceipt, bankReceipt, otherDebit, otherCredit, adjustments (= otherDebit - otherCredit), currentBalance (balance as of toDate). totalOutstanding is the receivable (currentBalance when positive, else 0). overdueAmount is the part of the outstanding balance, attributed to the newest invoices first, that is past its invoice due date, plus any older brought-forward balance; notDueAmount = totalOutstanding - overdueAmount. lastInvoice {date, quantity, amount} and lastCollection {date, amount} are the latest approved sale and receipt on or before toDate (null when none).

get_customer_activity_status

ChatGPT
Finds customers by account and purchase activity across many customers (or all customers of the tenant). Optional status: Active or Inactive (the customer account's Active flag); New (account created from fromDate, default the first day of the toDate month, to toDate); Reactivated (latest purchase followed a gap of at least inactivityDays); Dormant (no purchase for at least twice inactivityDays); NoRecentPurchase (no purchase for inactivityDays up to twice that); RecentPurchase (purchase within inactivityDays); NeverPurchased (no approved sale at all). Omit status to list every customer with both statuses. To find customers who have not purchased in N days, set inactivityDays to N and call NoRecentPurchase and Dormant (and NeverPurchased if wanted). Optional inactivityDays (default 60), toDate (as-of, default today), fromDate, salesPersonIds, areaIds, cityIds. Returns totalCount and customers with customerId (the customer record id), customerName, customerCode, salesPerson, lastPurchaseDate, daysSinceLastPurchase, salesLast90Days (approved sales invoice totals in the 90 days to toDate), activityStatus (account flag) and purchaseActivityStatus. Visit, route, region and channel data are not available.

get_customer_activity_summary

ChatGPT
Returns customer activity as of dateRange. All four latest dates search all history through that date, including activity older than 30 days. Only Last30Days totals use 30 calendar days ending on dateRange. Supply exactly one of detailAccountId/customerName. Invoice means purchase invoice, not sales invoice. Active/Inactive is the current account flag. Not a fully historical snapshot.

get_customer_collections

ChatGPT
Returns customer payment/recovery history: a summary (collectionCount, totalCollected, averageCollection) and the collections, newest first. Use it for questions like when a customer last paid, how much they paid this month, recovery history, or which invoices a collection settled. Pass detailAccountIds for specific customers; pass NO customer to get every customer of the tenant. Optional fromDate/toDate (inclusive) and paymentMethod (Cash, Bank or Other). A collection is an approved receipt (collectionType Receipt) or an approved cash/bank voucher that credits the customer and belongs to no receipt (collectionType Voucher). Each row has detailAccountId, customerName, collectionId, collectionNo, date, amount, paymentMethod, referenceNo, allocatedAmount, unallocatedAmount (the amount still available to adjust against invoices, as in the Invoice and Advance Adjustment screen) and allocatedInvoices (the invoices or vouchers a receipt settled directly: documentType, invoiceNo, allocatedAmount).

get_customer_deliveries

ChatGPT
Returns all matching delivery masters without pagination. Resolve names with search_customers and pass detailAccountIds (DetailAccounts.Id). Filters: DC date, orderIds, paymentStatus. Quantity is actual delivered quantity. amount, paidAmount and outstandingAmount are the full totals of distinct linked invoices, calculated as in get_customer_invoices. recoveredAmount is an alias for paidAmount. Shared invoice totals repeat on each linked delivery; do not sum delivery rows as unique receivables. Invoice links use DCDetailId. Missing order links do not prevent invoice valuation; missing invoice links return null amount/outstanding/status. A lone fromDate is an upper cutoff; dates filter deliveries, not payments.

get_customer_delivery_status

ChatGPT
Returns order fulfillment totals and pending delivery value. Resolve customer names with search_customers and pass detailAccountIds. No pagination. Cancelled orders are excluded. Closed orders retain actual quantities but have zero pending value. Delivery quantities use the reference order-status formula and may exceed ordered quantities. Date filters select order dates, not an as-of delivery snapshot. A lone fromDate is an upper cutoff.

get_customer_invoice_details

ChatGPT
Returns one invoice with items and collections for one invoiceId (SalesInfos.Id, as returned by get_customer_invoices) or exact invoiceNo. Both supplied must match; ambiguous invoiceNo requires invoiceId. invoice: gross (CurrencyTradePrice Quantity), discount (gross minus amount), taxAmount, net (CurrencyRate Quantity plus line taxes), paidAmount (sum of NewReceiptDetails.CurrencyGrossAmount by SaleInfoId), outstandingAmount, paymentStatus (Unpaid, Partially Paid, Paid). Same formulas as get_customer_invoices. items: one row per invoice line; lineTotal is gross for the invoiced quantity; orderedQuantity/deliveredQuantity/remainingQuantity belong to the linked sales-order line (null when the line has no order link) and are not limited to this invoice. collections: receipts allocated to this invoice, one row per receipt voucher. Missing invoice returns invoice=null, items=[], collections=[].

get_customer_invoices

ChatGPT
Returns summary and all matching invoices without pagination. Resolve customer names with search_customers and pass detailAccountIds (DetailAccounts.Id, never Customers.Id). Invoice amount is the previous sales net formula: CurrencyRate * Quantity plus line taxes. paidAmount sums NewReceiptDetails.CurrencyGrossAmount by SaleInfoId; outstandingAmount is amount minus paidAmount. Status is Unpaid, Partially Paid or Paid. Payments are current, not restricted to the invoice date range. A lone fromDate is an inclusive upper cutoff. overdueOnly requires outstanding > 0 and DueDate before the current SQL Server date.

get_customer_order_details

ChatGPT
Returns order and items for one orderId or exact orderNo. Both supplied must match; ambiguous orderNo requires orderId. Includes gross, line discount, net, ordered/delivered/remaining quantities. Missing order returns order=null and items=[]. Closed status does not imply full delivery.

get_customer_order_status

ChatGPT
Returns Gluon ERP customer sales order status including ordered, delivered, invoiced, returned and pending quantities.

get_customer_orders

ChatGPT
Returns summary and all customer order rows without pagination. Resolve customer names with search_customers and pass detailAccountIds (DetailAccounts.Id, never Customers.Id). Net amounts include detail taxes. Status is the master status with Close overriding IsClosed=true. Filters apply to OrderDate; delivery quantities are current, using the reference order-status formula. A lone fromDate is an upper cutoff.

get_customer_product_sales

ChatGPT
Returns totalSales and all matching products with quantity, net salesAmount, contribution percent, invoiceCount and lastPurchaseDate. Filters: account IDs, dates, product/category IDs; selectable sort. Net sales uses CurrencyRate * Quantity plus CurrencyTaxAmount. No pagination. Omitted filters include all matching tenant data. detailAccountIds are ledger IDs; never pass Customers.Id. A lone fromDate is an upper cutoff.

get_customer_profile_details

ChatGPT
Returns detailed Gluon ERP customer profile information.

get_customer_rankings

ChatGPT
Ranks the customers of the tenant by a business metric. Use it for top or bottom customers by sales, highest outstanding, most returns or highest collection. Required metric; optional fromDate/toDate (inclusive; toDate is also the reference date for Overdue and DaysSinceLastPurchase, default today), direction (Top or Bottom), cityIds, areaIds, productIds and limit (for example 10; omitted = every customer). productIds limits the sales, quantity, profit, order, invoice and return metrics to those products; it does not apply to Outstanding, Overdue or CollectionAmount. Metrics: NetSales (CurrencyRate x Quantity plus tax), GrossSales (Quantity x CurrencyTradePrice), Quantity, InvoiceCount (invoices), OrderCount (sales orders), AverageOrderValue (NetSales / OrderCount), CollectionAmount (receipts allocated to the invoices of the period), Outstanding (invoice net of the period minus those receipts), Overdue (overdue amount from the account summary as of toDate), ReturnAmount (sales returns incl. tax), ReturnPercent (ReturnAmount / NetSales x 100), GrossProfit (batch quantity x (CurrencyRate minus CostPrice)), DaysSinceLastPurchase (days since the latest approved purchase invoice booked against the account as vendor). Returns metric, total (the sum over all customers; overall average or percent for AverageOrderValue and ReturnPercent; null for DaysSinceLastPurchase) and rankings with rank, customerId (customer record id), detailAccountId, customerName, customerCode, value and contributionPercent (share of total; null for non-additive metrics).

get_customer_receivable_aging

ChatGPT
Returns outstanding receivables grouped into aging buckets plus totalOutstanding, using the same outstanding amounts as get_customer_receivables. Use it for questions like how old the receivables are or how much is overdue. Pass customerIds/customerId/customerName for specific customers; pass NO customer to get every customer of the tenant. Optional asOfDate (default today). Without agingTemplateId or agingTemplateName the default buckets are used: Current (not yet overdue, due today included), 1-30, 31-60, 61-90 and 90+ days overdue. With a template (see list_receivable_aging_templates) the buckets are that template's day ranges measured in days overdue, preceded by Current for documents not yet due; a bucket 'Outside template ranges' appears only if the template leaves a gap. Each bucket has label, fromDays, toDays (null when open ended) and amount; zero buckets are included. Bucket amounts add up to totalOutstanding unless template ranges overlap.

get_customer_receivables

ChatGPT
Returns the outstanding receivable documents (unpaid and partially paid invoices and customer debit vouchers) and their total, using the same rules as the Invoice Wise Receivables report. Use it for questions like what a customer still owes, which invoices are unpaid, or all outstanding documents. Pass customerIds/customerId/customerName for specific customers; pass NO customer to get every customer of the tenant (do not ask the user for a customer first). Optional asOfDate (default today). Each receivable has detailAccountId, customerName, documentType (Invoice or Voucher), invoiceNo, invoiceDate, dueDate, invoiceAmount, receivedAmount (receipts plus invoice adjustments and sales returns, never more than the invoice amount), outstandingAmount, daysOutstanding (asOfDate minus invoice date), daysOverdue (0 when not yet overdue) and status (Not Due, Due Today or Overdue). Only documents with more than 1 outstanding are listed. totalOutstanding is the sum of outstandingAmount.

get_customer_sales_details

ChatGPT
Returns totalCount, totalAmount and all matching invoice rows, including gross/net amounts and product/invoice/customer discounts. One row per invoice, not product line. Net amount is CurrencyRate * Quantity plus CurrencyTaxAmount. Filters: account IDs, dates, product/category IDs and exact documentNo. No pagination. Omitted filters include all matching tenant data. detailAccountIds are ledger IDs; never pass Customers.Id. A lone fromDate is an upper cutoff.

get_customer_sales_returns

ChatGPT
Returns summary and all matching sales returns without pagination. Resolve names with search_customers and pass detailAccountIds (DetailAccounts.Id). Filters: return date and productIds. Each return has returnId, returnNo, date, invoiceNo (original invoice(s) from the return lines' invoice links; comma-separated if several, null if unlinked), quantity and amount. Return amount is net: SalePrice Quantity (or, when that is null or <= 0, Quantity TradePrice minus DiscountAmount) plus line TaxAmount. productIds counts only matching return lines. summary: returnCount, returnQuantity, returnAmount (exactly the rows returned) and returnPercentOfSales = returnAmount / net sales 100 over the same customers, dates and products, where net sales uses CurrencyRate Quantity plus CurrencyTaxAmount as in get_customer_invoices; null when there are no sales. A lone fromDate is an upper cutoff.

get_customer_sales_trend

ChatGPT
Returns metric, groupBy, total, average, change percentages, trend points, highestPeriod and lowestPeriod. Filters: account IDs and dates. Metrics: NetSales, GrossSales, Quantity, InvoiceCount; groups: Day, Week, Month, Quarter, Year. Optional comparison to the preceding equal number of calendar days. No product/category filters. No pagination. Omitted filters include all matching tenant data. detailAccountIds are ledger IDs; never pass Customers.Id. A lone fromDate is an upper cutoff.

get_customer_statement

ChatGPT
Returns a ledger-style customer statement for a date range from approved ledger vouchers: customerName, openingBalance (before fromDate), totalDebit, totalCredit, closingBalance (opening + debit - credit) and all transactions in date order with date, documentNo, documentType, description, debit, credit and runningBalance. Pass customerId/detailAccountId (or customerName) for one customer; pass no customer to get every customer of the tenant (totals are summed, each transaction carries detailAccountId and customerName, runningBalance is per customer). fromDate defaults to 30 days before toDate and toDate to today. No pagination.

get_customer_summary

ChatGPT
Returns a compact Gluon ERP customer summary.

get_expense_form_options

ChatGPT
Lists the choices needed to create an expense: companies (companyId), currencies (currencyId) with baseCurrencyId, stations (stationId), expense accounts (accountId), Cash/Bank pay-from accounts (accountId, accountType) and payment types. Call it before create_expense to look up ids by name.

get_inventory_product_details

ChatGPT
Shows one product in full. Give productId (from get_inventory_products) or a barcode. Returns the product (title, alias, code, oldCode, remarks, department / category / subCategory / type / unit / brand / make / nature / origin / dependent unit with ids and names, sellPrice and purchasePrice (taken from the valid rate list with the latest expiry date, otherwise the product's own price; see sellPriceSource / purchasePriceSource), minimumSalePrice, factor, factorRate, isService, isSaleAble, isActive, isSerialEnable, isBatchWise, expiryDays, hsCode, fbrHsCode) plus barcodes, supportingUnits (group, unit, dependent unit, factor, factorRate, isChangeable), taxDetails, salePrices (every sale rate list of the product: ratelistName, companyName, stationName, expiryDate, salePrice, discount, netRate) and purchasePrices (every purchase rate list: ratelistName, companyName, stationName, vendorName, expiryDate, purchasePrice, discount, netRate). A rate list without an expiry date is invalid; expired rate lists are left out unless includeExpired = true; a missing rate-list price is taken from the product's own price and a missing netRate is price minus discount. Missing values come back empty.

get_inventory_product_prices

ChatGPT
Returns the stored prices of one product (productId required) exactly as the application methods do: purchasePrice, salePrice, saleTradePrice, tradePrice, minimumSalePrice (only tenant 1 has one; other tenants show 0) and awaitedSalePrice. Use priceType (PurchasePrice, SalePrice, SaleTradePrice, TradePrice, MinimumSalePrice, AwaitedSalePrice) to get just one; leave it out for all six. purchasePrice / salePrice come from the valid (not expired, with an expiry date) rate list with the latest expiry date, otherwise from the product itself (priceSources shows which). Also returns salePrices and purchasePrices: every sale / purchase rate list of the product (company, station, vendor, expiryDate, price, discount, netRate); expired rate lists only when includeExpired = true. With priceType only the matching rate lists are returned.

get_inventory_products

ChatGPT
Lists the tenant's product catalogue (product definitions) with optional filters. Filters: keyword (title, code, old code, alias, tags), title, code, department, type, category, subCategory (each can be an id or part of the name), sellPrice, purchasePrice, status (Active / Inactive / All) or activeInactive. Each product has id, title, alias, code, oldCode, department, category, subCategory, type, unit (id and name), sellPrice and purchasePrice (from the product, or from the sale / purchase rate list when the product has none - see sellPriceSource), isActive, isSaleAble, isService, brand, make, nature and origin (id and name). Missing values come back empty. All matching products are returned (no paging) with totalCount, the number of products found.

get_inventory_receiving

ChatGPT
Answers 'what stock was received' and 'show receiving against transfer'. Give id for one receiving, or search with receivingNo, transferNo, date (one day) or fromDate / toDate, remarks, stockTransferRemarks, fromWarehouse / toWarehouse (part of the warehouse name), createdBy (part of the user name). With no id and no filter the current month is returned. Returns 'receivings', each with header (id, manualReceivingNumber, receivingNo, receivingDate, receivingRemarks, stockTransferId, transferNo, stockTransferRemarks, companyId, stationId, costCenterId, voucherId, createdBy, fromWarehouse, toWarehouse), 'stockReceivingDetails' (transferNo, product, fromWarehouse, toWarehouse, qty, remainingQty, rate, costPortion, description, serialNo, unit fields, uomName, detail) and 'stockReceivingExpenseDetails' (account, amount, comments), plus totalCount. No paging.

get_inventory_reorder

ChatGPT
Answers which products need to be reordered: products whose current stock is below the reorder point. Filters: typeIds (reorder level types), productIds, productDepartmentIds, productTypeIds, productCategoryIds, warehouseIds, companyIds, stationIds, costCenterIds; summary = true gives one row per product instead of per warehouse. Returns 'reorder' (productCode, product, warehouse, reorderPoint, currentStock, stockRequired, maxStock, unit, uom, allWarehouseStock) and totalCount. No paging.

get_inventory_stock

ChatGPT
Returns the tenant's stock records for a date range (default: the current month; both dates are included). Filters: costCenterIds, fromDate, toDate, productIds, warehouseIds, docNo (part of the document number). Each record has id, productId, productName, docNo, date, rate, quantity, amount, details, type (In / Out), serialNo, warehouseId, warehouseName, reference, detailAccountId, detailAccountTitle, costCenterId, costCentersName. 'balances' gives, per product and warehouse found, quantityIn, quantityOut, balanceQuantity and balanceAmount (In minus Out, all history up to the end date). With only the tenant you get all stock records of the current month. No paging.

get_inventory_stock_aging

ChatGPT
Answers how old the stock is (e.g. 'show stock older than 30 days'). Needs templateId (the aging template whose day ranges are the buckets, e.g. [0-30], [31-60]); tillDate defaults to today. Filters: costCenterIds, companyIds, stationIds, productDeptIds, productTypeIds, productIds, warehouseIds. Only products with balance above zero are returned, asset departments are excluded. Returns 'warehouses' (level W: warehouseName, balance, last30DaysConsumption, agingSummary) each with 'products' (level P: productId, productCode, productTitle, productType, deptTitle, stockIn, stockOut, balance, last30DaysConsumption, ages [productId, warehouseId, quantity, age], agingSummary), plus overall totalBalance and agingSummary, totalCount. No paging.

get_inventory_stock_analysis

ChatGPT
Answers how much was purchased, sold and consumed, and what the opening and closing stock is, per product, for a date range (default: the current month; both dates included). Filters: fromDate, toDate, productIds, productDepartmentIds, productTypeIds, productCategoryIds, warehouseIds. Returns 'analysis' (one row per product: productName, productCode, unitName, departmentName, categoryName, subCategoryName, productType, warehouseName, openingQty, openingRate, grnQuantity (purchase receipts, also shown as purchaseQuantity), purchaseReturnQuantity, saleQuantity, saleInvoiceReturnQuantity, stockTransferQuantity, excessStockAdjustmentQuantity, shortStockAdjustmentQuantity, stockReceivingQuantity, prdQuantity, consumptionQuantity, issuanceQuantity, issuanceReturnQuantity, otherTransfer, totalConsumption, avgPerDay, closingQty, closingRate, daysLeft, stockoutOn) and totalCount. No paging.

get_inventory_stock_movements

ChatGPT
Answers what happened to a product and shows stock coming in, going out and transferred, for a date range (default: the current month; both dates included). Filters: fromDate, toDate, productIds, warehouseIds. Returns 'movements' (stock ledger lines: docNo, date, productId, productName, rate, quantity, amount, details, type In / Out, serialNo, warehouseId, warehouseName, reference) and 'transfers' (the stock transfer movement report, one line per transfer batch: docNo, docDate, rDocNos, fromWarehouse, toWarehouse, productCode, productName, brandName, uom, serial, tQty, rQty, balance, costPrice, amount, receivedAmount, status Closed / Pending, manualTransferNumber, manualReceivingNumber, receivingDate). No paging.

get_inventory_summary

ChatGPT
Returns compact Gluon ERP inventory totals and top products.

get_inventory_transfers

ChatGPT
Answers 'show stock transfers' and 'what was transferred from warehouse A to warehouse B'. Give id for one transfer, or search with docNo, date (one day) or fromDate / toDate, storeDemand, reason, manualTransferNumber, fromWarehouse / toWarehouse (part of the warehouse name), createdBy (part of the user name), remarks; pendingReceivingOnly = true lists transfers still waiting to be received. With no id and no filter the current month is returned. Returns 'transfers', each with header (id, transferType, manualTransferNumber, docNo, tenantId, date, reason, companyId, stationId, costCenterId, voucherId, remarks, additionalDetails, driverName, vehicleNo, createdBy, fromWarehouse, toWarehouse, storeDemand, hasReceiving) and 'details' (fromWarehouseId / Name, toWarehouseId / Name, productId, product, qty, availableQuantity in the from warehouse, rate, amount, serialNo, unitId, dependentUnitId, factor, remarks, uomName, receivedQty, remainingQty), plus totalCount. No paging.

get_inventory_valuation

ChatGPT
Answers what the value of the inventory is, per department account, compared with the finance (journal) balance of that account. tillDate defaults to today; optional departmentIds. Returns 'valuation' (departmentAccount, departmentName, stockValue, openDC, openGRN, finalStockValue, financeValue, differenceValue) and totals. No paging.

get_outstanding_receivables

ChatGPT
Returns Gluon ERP aging and outstanding receivable information.

get_pdc_form_options

ChatGPT
Lists the choices needed to create a PDC (post-dated cheque): companies (companyId), currencies (currencyId) with baseCurrencyId, stations (stationId), bank names (bankNameId), active lockers (lockerId), cost centers (costCenterId) and cheque types. Call it before create_pdc to look up ids by name. Use search_customers to find the customer detailAccountId.

get_receipt_form_options

ChatGPT
Lists the choices needed to create a customer receipt: companies (companyId), currencies (currencyId) with baseCurrencyId, stations (stationId), Cash/Bank deposit accounts (accountId, accountType) and payment types. Set includeBanks / includeEmployees / includeInvoices (invoices need companyId, currencyId, customerDetailAccountId) only when the user wants a bank, employee or invoice. Call it before create_customer_receipt to look up ids by name. Use search_customers to find the customer detailAccountId.

get_recent_sales_invoices

ChatGPT
Returns paged recent Gluon ERP sales invoices with PII minimization.

get_sales_details

ChatGPT
Returns paged Gluon ERP sales invoice and detail rows with optional filters, pagination and aggregate output.

get_sales_summary

ChatGPT
Returns compact Gluon ERP sales totals for a date range and optional sales filters.

get_saved_report

ChatGPT
Retrieve the authorized saved definition and its Angular viewer link.

get_subscription_status

ChatGPT
Returns the authenticated Gluon ERP tenant subscription status.

list_receivable_aging_templates

ChatGPT
Lists configured Gluon ERP receivable aging templates.

list_saved_reports

ChatGPT
List bounded metadata of caller-owned or shared reports.

preview_report_definition

ChatGPT
Preview at most 25 authorized rows for a ViewerDefinition; no save.

reject_approvals

ChatGPT
Rejects one or several of the user's approvals, exactly as the Approvals screen does: the stage and the approval become Rejected and the linked document and voucher are updated. TWO STEPS: (1) call with confirm=false (default) to check every item - nothing is saved; (2) show the preview to the user and, only after they explicitly confirm, call again with the SAME items and confirm=true. Required: items (1 to 50), each with approvalId and approvalDetailId from get_approvals (status Pending); optional remarks (worth asking the user for a reason) and bulk per item. Items that cannot be rejected are reported and skipped; the others still go through. For an UPCOMING approval set bulk=true on the item: every pending stage up to the user's stage is rejected at once. The creator is notified.

resolve_sales_filter

ChatGPT
Resolves Gluon ERP sales filter names such as customer, company, station, cost center, product, employee, manager or warehouse into tenant-safe IDs.

save_report_definition

ChatGPT
Create a private saved report or replace an owned report's current definition, and return its Angular viewer link. Supply definition; omit reportId to create. Updating replaces the saved report configuration and requires reportId and the latest concurrencyToken. Only create or update the report the user requested. Changes report definitions only, never ERP business records. Return the link so subsequent filtering, customization, refresh and reopening require no ChatGPT prompts.

search_customers

ChatGPT
Primary customer resolution tool: use when the user provides a name/code without a verified ID. Supports title search, exact customer IDs/codes, salesperson IDs, city/area IDs or names and Active/InActive status. Filters combine with AND; list values with OR. Returns totalCount and all matching customers. Ask which customer when multiple matches exist. customerId means Customers.Id; use detailAccountId for ledger reports. Does not support region/territory/channel or salesperson-name filters.

validate_report_definition

ChatGPT
Validate a ViewerDefinition and current field permissions without querying rows or saving.

Capabilities

Writes

Example Prompts

Click any prompt to copy it.

Similar Apps