How to add Slack to Sage 100
Short answer
Sage 100 has no built-in Slack support. A small Slack app on a server near Sage can read orders and stock over ODBC or SQL, answer slash commands, post alerts, and send interactive approvals that are applied through the Business Object Interface once a person confirms.
Slack tends to show up in Sage 100 companies through the sales, ecommerce and operations teams rather than accounting. They want quick answers: is this item in stock, did that order ship, who put this on hold. Today that means interrupting someone with Sage open.
A Slack app turns those interruptions into a command in a channel. Because Slack handles identity, threads and mobile notifications well, it works as a lightweight front door to a system whose own interface is a Windows desktop client.
The design question is how much to let Slack do. Reads are easy and valuable. Writes into a classic ERP need a deliberate gate, which Slack's interactive messages can provide.
What teams use it for
Slash command stock check
Typing /stock ABC-100 returns on-hand, committed and on-order by warehouse, from the item warehouse data, visible only to the requester.
Order lookup for support
/order 004512 returns header status, customer, ship date and lines so support can answer without Sage access.
Daily exceptions digest
Each morning, a channel gets late shipments, orders on hold and POs past due, with links to a read-only report view.
Backorder release notices
When a receipt satisfies backorders, the account owner is notified in a thread tied to the customer's channel.
Approval of price overrides
A rep asks for a price exception; a manager approves with a button, and the change is staged for entry through BOI.
Sage 100 integration surface
- ODBC driver and SQL: read-only lookups against tables such as CI_Item, IM_ItemWarehouse, SO_SalesOrderHeader and AR_Customer. Table and field names vary by module and release; verify in your data dictionary.
- Business Object Interface (COM): the controlled way to create or update records. Needs a Windows host with the Sage client components.
- Sage 100 Premium on SQL Server: lets you use read replicas or reporting views so Slack queries do not affect data entry.
- Business Alerts and Visual Integrator: event and scheduled export triggers, helpful for pushing alerts without polling.
- Optionally, Sage Intelligence or Crystal reports as the source for digest content if your teams already trust those numbers.
How it works
- 1
Create the Slack app
Define slash commands, interactivity and the bot scopes you need. Use Socket Mode if you do not want to expose an inbound URL from the Sage network.
- 2
Build a lookup layer over Sage
Write a few parameterised queries or views, for item, order and customer. Never accept raw SQL from Slack.
- 3
Map Slack users to Sage users
Match by email and decide roles: who may see cost, who may see customer balances, who may request changes.
- 4
Format responses as Block Kit
Return compact tables and a link to the full record. Use ephemeral responses for sensitive data.
- 5
Add interactive approvals
Send a message with Approve and Reject; the callback carries a request ID, checks the approver and state, and queues the BOI action.
- 6
Monitor and rate-limit
Log commands, cap query frequency, and alert on failed ODBC connections so the bot never just goes quiet.
Example flows
Stock check from the floor
Trigger: A rep types /stock WIDGET-7 in a sales channel.
- The app checks the Slack user is mapped and allowed.
- It queries on-hand, committed and on-order by warehouse.
- It replies privately with the numbers and the next expected receipt.
Result: The rep quotes a ship date in seconds without calling purchasing.
Price override approval
Trigger: A rep submits an exception through a Slack workflow form.
- The app posts the order, list price and requested price to the sales manager.
- The manager taps Approve with a reason.
- The request is staged and a clerk or BOI job applies the line price.
- The thread records who approved.
Result: Exceptions are approved quickly and leave a trail beyond a chat message.
Keeping data on-prem
If Sage 100 stays on your own server, run the Slack app there in Socket Mode so the connection is outbound only. Slack will see the text you post, so choose what appears in channels: item numbers and statuses are usually fine, customer financials usually are not. For a fully private assistant that answers free-form questions, run an open-weight model on your own hardware and have it generate queries against approved views, then return results to Slack as short summaries. Keep the full result sets on your network and link to an internal page instead.
Security checklist
- Use ephemeral messages for anything sensitive and keep channels free of cost, margin and balance data.
- Verify Slack request signatures and handle token rotation.
- Limit the bot's Sage login to read-only for lookups, with BOI actions run under a separate narrow account.
- Map approvers by verified email and keep an allow list in your own store.
- Retain command logs for audit and for spotting scraping attempts.
Ways to get it done
Slack workflow builder plus scheduled exports
Effort: Days.
Digest-style alerts using Visual Integrator output and no interactive lookups.
Custom Slack app on your own host
Effort: Two to five weeks.
Teams wanting slash commands and approvals, with a developer able to handle COM interop.
Partner implementation including an on-prem AI layer
Effort: Several weeks for a scoped pilot.
You want natural-language questions with guardrails and no cloud AI exposure.
Pitfalls
- !Slash commands that time out because the ODBC query is slow; Slack expects an acknowledgement within a few seconds, so reply fast and follow up.
- !Exposing customer pricing in public channels.
- !Mapping Slack users by display name instead of verified email.
- !Running Business Object Interface calls from an unattended session with a license that is already in use, causing seat conflicts.
- !No fallback when Sage is in a backup or period-close state and tables are locked.
Frequently asked questions
Is there a Sage 100 Slack integration out of the box?
Not in the standard product. Third-party tools may exist for your release, so check the Sage ecosystem, but the common approach is a custom or partner-built Slack app that reads Sage via ODBC or SQL and writes through the Business Object Interface.
Can Slack update orders in Sage 100?
It can trigger updates, but best practice is to stage and confirm. A manager's button tap queues the change, and a BOI call applies it after checks, so a mistaken click cannot silently alter an order.
Does the Sage server have to be reachable from Slack?
Not if you use Socket Mode, which opens an outbound connection from your host. That keeps the Sage network closed to inbound traffic from the internet.
Will lookups slow down Sage for users?
They can on Standard or Advanced, where the data is file-based. Cache common lookups, restrict heavy queries, and on Premium consider querying a SQL Server replica or reporting view.
Can an AI answer free-form questions in Slack?
Yes, if it is limited to approved views and the asker's permissions. Run the model privately if you do not want ERP data sent to a hosted AI service.
Want Slack working on your Sage 100?
A free 30 minute assessment: we map the integration path for your version and setup, and where it should run.
Get a free assessmentTry it here, free
Sage 100 to Cloud Migration Assessment
A 10-question readiness score for companies on Sage 100 deciding when and how to move to a cloud ERP, with recommendations by result band.
New to Sage X3 and Sage 100? Start with the Sage X3 and Sage 100 guide and toolkit.
Keep exploring
Free tools
- Sage 100 to Cloud Migration AssessmentA 10-question readiness score for companies on Sage 100 deciding when and how to move to a cloud ERP, with recommendations by result band.
- Sage 100 and Sage 300 Private AI Layer Blueprint GeneratorGenerate an architecture plan for a private AI assistant on on-prem Sage 100 or Sage 300: reporting copy or ODBC extract, Web API or BOI, retrieval, local GPU model and audit.
- Sage 100 Business Object Interface (BOI) Sales Order Script GeneratorProduces a working PowerShell script that logs in to Sage 100 through BOI, creates a sales order with one line and reports Sage's own error message on failure.
ERP fixes and how-tos
- How to Add AI to Sage 100 and Sage 300 On-PremPrivate AI architecture for on-prem Sage 100 and Sage 300: ODBC or SQL extracts, Sage 300 Web API, Sage 100 BOI, local GPU model, permissions and audit log.
- How to Add User Defined Fields (UDFs) in Sage 100How to add a user defined field in Sage 100 with Custom Office, place it on a panel, and expose it to reports, ODBC and imports, with the usual UDF pitfalls.
- Fix Sage 100 SOTAMAS90 ODBC Connection ErrorsFix Sage 100 ODBC failures on the SOTAMAS90 DSN: 32-bit versus 64-bit driver mismatch, wrong company code, path rights, and external access security.
AI on your ERP
- AI for Sage 100 Small Manufacturers: Practical Answers From Work Orders, BOMs and InventoryPractical AI for small manufacturers on Sage 100: ask about work orders, BOMs, stock and shortages in plain English via ODBC or SQL, kept on a small server.
- AI for Sage 100, Grounded in Your MAS90/200 DataPut AI on Sage 100 and the Sage 100 Manufacturing (MRP) data set without sending data to a public model. Private LLMs and agents grounded in your MAS90/200 tables.
Integrations
- How to add Slack to Sage X3Add Slack to Sage X3: alerts from X3 events, slash commands for lookups and interactive approval messages that call X3 web services. On-prem notes included.
- How to add WhatsApp to Sage 100How to connect WhatsApp to Sage 100 (formerly MAS 90/200): order status, shipment alerts and approvals via the Business Object Interface, ODBC and the Cloud API.