# How to add WhatsApp to QAD Adaptive ERP

> Source: https://netray.co/integrations/qad-whatsapp
> Publisher: Netray (netray.co), AI and integration engineering for ERP and manufacturing systems.
> Section: Integrations

## Short answer

Connect the WhatsApp Business Platform (Cloud API or a BSP) to QAD through a small middleware service. The middleware reads QAD data over the Progress database, QAD REST/web services or QXtend, sends approved template messages, and posts replies back as controlled QAD transactions. Opt-in, templates and human approval are the parts that decide success.

## System

QAD Adaptive ERP

## Capability

whatsapp

## Intro

QAD shops, many of them automotive, medical device and industrial manufacturers, run supplier and customer conversations that never touch the ERP: a buyer asks a supplier on the phone whether a PO line will ship Friday, a planner texts a driver about a dock appointment, a plant manager approves a purchase from a hallway. The answer ends up in someone's WhatsApp and never reaches the purchase order, the schedule or the shipper.

WhatsApp is attractive because suppliers in India, Mexico, Brazil, Southeast Asia and the Middle East already live in it, and email response times from small tier-2 vendors are poor. The goal is not a chatbot for its own sake. It is a structured, auditable channel where QAD events go out as templates and a handful of well-defined replies come back as transactions.

QAD Adaptive ERP has no WhatsApp feature of its own that you should rely on, so this is a build-or-buy integration. What you build depends on whether you run QAD Enterprise Edition on-premises, in a hosted environment, or on the QAD cloud, because that decides where the middleware can reach the database and the web services.

## Use Cases

### Supplier PO and release confirmations

**Description:** When a purchase order or scheduled order release is approved, send a template to the supplier contact with line, quantity and due date, and capture Confirm, Reschedule or Cannot supply as button replies.

### ASN and shipment delay alerts to customers

**Description:** Notify customer service contacts when a shipper is confirmed, or when a promise date moves because a work order slipped, so the customer hears it from you first.

### Purchase and expense approvals on the move

**Description:** Send a short approval summary to a manager, with Approve and Reject quick-reply buttons, and write the decision back against the QAD approval or requisition record.

### Shop floor and quality escalations

**Description:** Push a message to the quality lead when an inspection fails or a nonconformance is raised, with the item, lot and work order, so containment starts before the next shift.

### Inbound dock and driver coordination

**Description:** Message carriers a dock appointment and location, and let them reply with an ETA that the receiving team sees next to the expected PO receipt.

### Order status for regular customers

**Description:** Let known customer contacts send an order number and get back status and ship date, read from QAD sales order and shipper data, with no ERP login.

## System Surface

Progress OpenEdge database underneath QAD: tables such as po_mstr, pod_det, so_mstr, sod_det, wo_mstr, ld_det and tr_hist can be read through SQL-92 (ODBC/JDBC) or ABL. Read-only access is simple on-prem, but writing directly to these tables bypasses business logic and is not recommended.

QXtend (the QAD integration layer, historically QXtend Inbound and Outbound, now often called QAD Enterprise Platform integration services depending on version) accepts XML or JSON documents that run the standard QAD programs, so a posted receipt or order change goes through the same validation as a screen entry.

QAD REST and SOAP web services exposed by the QAD Enterprise Platform for newer Adaptive ERP releases. Exact service names and coverage differ by version, so inventory what your release publishes before designing flows.

Event triggers: QAD supports database and application triggers plus QXtend outbound events on some objects. Where an event is missing, a scheduled poll of a status or last-modified field is the reliable fallback.

Contact data lives in address and contact tables (ad_mstr and related), but WhatsApp opt-in status is not a standard QAD field. Plan a user-defined field or a side table for consent and the WhatsApp number in E.164 format.

QAD Adaptive UX and legacy UI do not matter to this integration: everything runs against the data and service layer, which keeps the ERP upgrade path clean.

## How It Works

### Pick the WhatsApp route

**Detail:** Choose the WhatsApp Business Platform Cloud API directly, or a business solution provider (BSP) that adds inboxes and billing. Register a business account, verify the business, and get a dedicated phone number. Do not use a personal number.

### Define the events and templates

**Detail:** List the 5 to 10 QAD events worth messaging, such as PO released, shipper confirmed, inspection failed. Write each as a template with variables (PO number, line, date) and submit it to Meta for approval. Business-initiated messages outside the 24-hour window must use templates.

### Capture consent and numbers

**Detail:** Add WhatsApp number and opt-in date to supplier, customer and employee records, in user-defined fields or a mapped table. Without logged opt-in you cannot legally or practically start conversations.

### Build the middleware

**Detail:** A small service on a server that can reach both QAD and the internet. It polls or receives QAD events, resolves the recipient, fills the template and calls the Cloud API. Keep an outbound message log keyed by QAD document number.

### Handle replies through a webhook

**Detail:** Expose an HTTPS webhook for WhatsApp, verify the signature, match the reply to the original message context, and classify it. Button replies map cleanly to actions; free text goes to a review queue.

### Write back through QAD logic

**Detail:** Turn an accepted reply into a QXtend or web service call, for example a changed due date on a PO line, rather than a table update. Anything that changes money or commitments waits for a named human approval.

### Monitor and tune

**Detail:** Track delivery, reads, template quality ratings and reply rates. Pause templates whose quality drops, and review unmatched replies weekly to refine the classifier.

## Example Flows

### Supplier confirms a scheduled release

**Trigger:** A buyer approves a new release on a QAD scheduled order.

**Steps:**

- Middleware sees the release status change and reads supplier, item, quantity and dates.
- It sends the approved template to the supplier contact with Confirm and Reschedule buttons.
- The supplier taps Reschedule and sends a new date in the follow-up message.
- The reply is parsed, shown to the buyer with the old and new date, and approved.
- On approval the middleware posts the date change through QXtend.

**Result:** The schedule in QAD reflects the supplier's real commitment and the buyer touched it once.

### Failed inspection alert

**Trigger:** A receiving or in-process inspection is recorded as failed for a lot.

**Steps:**

- Middleware reads item, lot, location and linked PO or work order.
- It messages the quality lead and the supervisor on duty with a Containment started button.
- A tap records acknowledgement time in the middleware log.
- The lead replies with a note that is attached to an incident record for follow-up.

**Result:** Acknowledgement time is measurable and the incident record has the story from the first minute.

### Customer order status request

**Trigger:** A registered customer contact messages an order number.

**Steps:**

- Middleware checks the sender number against the consented contact list.
- It reads the sales order lines and latest shipper status from QAD.
- It replies with line status and expected ship date, and offers a human handoff.

**Result:** Routine status calls drop, and the customer service team handles only the exceptions.

## On Prem

WhatsApp itself is a cloud service, so the architecture question is how little QAD data leaves your network. Keep the middleware inside your network or DMZ, make only outbound HTTPS calls to the Cloud API, and let inbound webhooks land on a small reverse proxy that forwards to the middleware. Send template variables only (PO number, date), not full records. If you want AI to read free-text replies, run an open-weight model locally so supplier messages are not sent to a public API. The Progress database stays on its own network segment, reached with a read-only account.

## Security

- Use a read-only database account for lookups and route all writes through QXtend or web services under a dedicated integration user with limited roles.
- Verify WhatsApp webhook signatures, restrict the endpoint by IP where possible and rate-limit it.
- Store tokens in a secrets manager and rotate them. Never place them in QAD user-defined fields.
- Match inbound senders against the consented number list and ignore unknown senders for any action beyond a generic reply.
- Log every outbound and inbound message with QAD document reference for audit, and set a retention period that matches your quality and contract rules.

## Options

### BSP or marketplace connector plus a small QAD adapter

**Fit:** You want inbox, templates and billing handled by a vendor and only need a few outbound alerts. Confirm that the vendor can reach your QAD environment.

**Effort:** 2 to 4 weeks for a handful of alerts

### In-house middleware on the Cloud API

**Fit:** You have developers who know QAD ABL or QXtend and want full control of flows and data placement.

**Effort:** 4 to 8 weeks including template approval and testing

### Partner build with Netray

**Fit:** You want two-way flows with reply classification, approvals and an on-prem model for free-text replies, with QAD-side work done by your QAD consultants.

**Effort:** Scoped after discovery; a first flow can be live in weeks

## Pitfalls

- Starting conversations without logged consent, which gets numbers blocked and quality ratings lowered.
- Template wording that is rejected by Meta, so draft with real variable examples and keep marketing language out.
- Writing replies straight to Progress tables, which skips validation and can corrupt PO or schedule data.
- Ignoring the 24-hour window, so a reply that arrives late cannot be answered with free text.
- Using a personal or shared number, which cannot be moved cleanly to the API later.

## Faq

### Does QAD Adaptive ERP have a built-in WhatsApp feature?

**Answer:** Not as a standard feature that you should plan around. The usual route is middleware that reads QAD data, sends messages through the WhatsApp Business Platform and writes accepted replies back through QXtend or web services. Check your release notes and any QAD Marketplace listings in case a vendor connector exists for your version.

### Can we use WhatsApp with an on-premises QAD installation?

**Answer:** Yes. The middleware sits in your network, reads QAD locally, and makes outbound HTTPS calls to WhatsApp. Only the inbound webhook needs to be reachable from the internet, normally through a reverse proxy. The database itself never needs to be exposed outside.

### How do replies update QAD safely?

**Answer:** Button replies are mapped to named actions. The middleware then calls a QXtend document or web service so QAD runs its normal validation. Changes that affect price, quantity or commitments are shown to a buyer for approval first, and all of it is logged against the QAD document.

### Do suppliers need to install anything?

**Answer:** No. They use regular WhatsApp on their phones. They must have opted in, and your templates must be approved. That makes it practical for small suppliers who will never use an EDI or portal link.

### What does it cost to run?

**Answer:** Meta charges per message by category and country, and a BSP may add a platform fee. Alerts are usually inexpensive compared with the staff time they save, but check current pricing for your countries because the model changes. The larger cost is the build and the template governance.

## Search terms

qad whatsapp integration, whatsapp for qad adaptive erp, qad whatsapp api, send whatsapp from qad, qad supplier whatsapp confirmation, qad purchase order whatsapp, qad erp whatsapp notifications, qad qxtend whatsapp, whatsapp business api manufacturing erp, qad shipment alerts whatsapp

---
Talk to an engineer: https://netray.co/contact?intent=erp_ai | Machine catalog: https://netray.co/agent/catalog.json
