How to add WhatsApp to ECI E2 Shop System
Short answer
E2 Shop System has no native WhatsApp channel, so you add one with a small service that reads E2's SQL Server data, sends template messages through the WhatsApp Business Platform, and writes replies back through a reviewed path. Keep E2 itself on-prem and let only a thin relay touch the internet.
Most E2 Shop System customers are job shops and contract manufacturers with 10 to 150 users. The people who need answers fastest, a buyer waiting on a supplier, an owner on the road, a customer asking where their parts are, are rarely sitting in front of E2. They are on their phones, and in many shops and in export markets that means WhatsApp.
E2 is a Windows client application over a Microsoft SQL Server database, usually hosted on a server in the shop. That architecture is good news for messaging: the data is relational, easy to poll, and sits behind your firewall. The hard parts are not technical plumbing but WhatsApp's own rules: opt-in, approved templates, and the 24 hour customer service window.
This page walks through a practical design: what to send, how to read E2, how to receive replies, and where a human must stay in the loop before anything is written back to your job and order records.
What teams use it for
Customer order and job status
A customer messages a number and gets the current status of their sales order: in material, in machining, at outside processing, ready to ship. The answer is read from the order and job tables, not typed by a CSR.
Shipment and tracking alerts
When a shipper is posted in E2, send a template message with the packing slip number, carrier and tracking link to the customer's registered contact.
Supplier PO confirmations
Message the supplier contact when a PO is released or becomes past due. A reply with a promise date is captured and shown to the buyer, who accepts it into E2 manually.
Quote follow-up
Quotes unanswered after a set number of days trigger a polite template message with the quote number and a link to the PDF. Replies go to the estimator as a task, not into E2 automatically.
Outside processing tracking
Ask plating, heat treat or coating vendors for a ship date on open OSP operations and record the answer as a note on the job for the planner.
Owner and manager approvals
Send a short approval request for a large PO or a customer credit hold release. The manager replies Yes or No, and an authorised person completes the action in E2.
ECI E2 Shop System integration surface
- SQL Server database: current E2 releases store data in SQL Server (older versions used other engines). Order, job, shipper, purchase order and customer tables can be read with a read-only login. Exact table names vary by version, so inspect your schema first.
- E2 does not expose a single public REST API in every version. Check whether your release has an SDK, web service or integration module, and ask ECI support what is licensed for your site before building on it.
- Document output: shippers, POs and quotes can be printed to PDF or emailed from E2, which gives you a clean attachment source for WhatsApp document messages.
- Customer and vendor contact tables hold names, phone fields and sometimes email only. You will likely need a new, controlled mapping for WhatsApp numbers and opt-in status stored outside E2.
- Write-back: avoid direct INSERT or UPDATE against E2 tables. Prefer E2's own import tools, a supported integration module or a manual accept step, since validation lives in the application.
How it works
- 1
Set up the WhatsApp Business Platform
Create a Meta business account, verify the business, and register a number on the Cloud API directly or through a business solution provider. Use a dedicated number, not a personal one.
- 2
Build the opt-in register
Create a small table outside E2 with contact, phone in E.164 format, opt-in date, source and opt-out flag. Customers and suppliers must have agreed to receive messages from you.
- 3
Define and approve templates
Write templates for shipment notice, PO confirmation request, quote follow-up and status reply, with named variables. Meta reviews them, so submit early and keep wording plain.
- 4
Detect events in E2
A scheduled job with a read-only SQL login finds new shippers, newly released POs and past due lines, and records what it has already sent so nothing is duplicated.
- 5
Send through a relay
The relay runs in your DMZ or a small cloud function, holds the Meta token, and receives webhooks. E2 and the SQL Server never accept inbound internet traffic.
- 6
Handle replies
Incoming messages hit the webhook, are matched to a PO or order by number, and land in a review queue. Status questions can be answered automatically from read-only queries.
- 7
Post accepted changes
A buyer or CSR confirms a promise date or note in E2 by hand or through a supported import, so E2's own validation and audit trail still apply.
Example flows
Shipped order notice
Trigger: A shipper is posted for a sales order.
- The scheduled job finds the new shipper and its customer contact.
- It checks the opt-in register and the template list.
- The relay sends the shipment template with packing slip number and carrier.
- Delivery and read status are stored against the shipper number.
Result: The customer knows the parts are on the truck without anyone calling or emailing.
Past due PO chase
Trigger: A PO line passes its promise date with no receipt.
- The job lists past due lines grouped by vendor contact.
- One message per vendor lists the PO numbers and asks for a new date.
- The vendor replies with a date, which the relay parses and flags low confidence if unclear.
- The buyer sees the reply beside the PO in a review queue and updates E2.
Result: Buyers spend time on exceptions rather than phone calls, and E2 data stays buyer-verified.
Keeping data on-prem
E2 normally lives on a Windows server inside the shop, and that can stay exactly as it is. WhatsApp itself is a cloud service, so the design principle is one-way minimisation: the on-prem poller reads from SQL Server, composes only the fields the template needs, and pushes them out through a relay in your DMZ. Inbound webhooks terminate at the relay, which authenticates Meta's signature, and then place the message in a queue that your internal service pulls from. No inbound firewall rule to the SQL Server is needed. If customer drawings or pricing must never leave, restrict templates to order number, status and dates, and send documents only as secure links that require a login. For free-text understanding of replies, use a local open-weight model on a shop GPU rather than a hosted API.
Security checklist
- Use a read-only SQL Server login scoped to the specific tables needed, never the E2 application account or sa.
- Keep the Meta access token in a secrets store at the relay, rotate it, and verify webhook signatures on every inbound call.
- Log every outbound and inbound message with the E2 record number and timestamp for audit.
- Do not send pricing, margin or drawing attachments over WhatsApp; use authenticated links for sensitive documents.
- Honour opt-out keywords immediately and keep proof of consent for each recipient.
Ways to get it done
WhatsApp provider with scheduled E2 export
Effort: Days to a couple of weeks, with ongoing template management.
Small shops that only need shipment and status broadcasts and can export a daily or hourly CSV from E2.
In-house relay with SQL polling
Effort: Roughly three to six weeks including template approval and testing.
Shops with a developer or IT contractor comfortable with SQL Server and webhooks who want full control.
Partner build with Netray
Effort: Typically a scoped project of several weeks, delivered with an E2 domain partner.
Teams who also want reply understanding, approvals and a local model, with E2 kept on-prem.
Pitfalls
- !Sending free-form messages outside the 24 hour window is rejected; only approved templates work once the window closes.
- !Importing a customer contact list and messaging everyone without documented opt-in risks the number being blocked.
- !Polling without a sent-log leads to duplicate shipment notices every cycle.
- !Writing directly to E2 tables to record replies can bypass validations and corrupt records; use a review step.
- !Phone fields in E2 are free text, so numbers need cleaning and country code normalisation before use.
Frequently asked questions
Does ECI E2 Shop System support WhatsApp out of the box?
No native WhatsApp channel is known to exist in E2. You add it with an external service that reads E2 data and calls the WhatsApp Business Platform. Confirm with ECI whether a newer release offers any messaging integration before you build.
Can customers ask for order status by message?
Yes. A relay can match the sender's number to a customer, look up open orders with a read-only query, and reply from a template or within the 24 hour window. Answers should be limited to non-sensitive fields such as status and ship date.
Can WhatsApp replies update E2 automatically?
Technically yes, but it is better not to. Parse the reply, show it to the buyer or CSR, and have them accept it in E2 so validation and audit trails stay intact. Automatic write-back is reasonable only for low-risk notes.
Do we need to move E2 to the cloud?
No. E2 and SQL Server can remain on-prem. Only the relay that talks to Meta needs internet access, and it receives only the minimal fields required for each message template.
What does it cost to run?
Meta charges per conversation or per template message depending on category and country, plus any provider fee. For a small shop sending shipment and status messages the monthly cost is usually modest, but check current pricing before you commit.
Want WhatsApp working on your ECI E2 Shop System?
A free 30 minute assessment: we map the integration path for your version and setup, and where it should run.
Get a free assessment