Email automationAcumatica Agent view

How to automate inbound email in Acumatica

Short answer

Read the shared inbox through Acumatica's email processing or the Microsoft Graph and Gmail APIs, classify and extract each message with a model, and create draft sales orders, receipts or bills through the REST API. Confidence thresholds and a review queue keep wrong data out of the ledger.

Acumatica customers receive a surprising amount of business by email: customer purchase orders as PDFs, supplier order acknowledgements, RFQs, remittance advice and invoices. The standard fix is a data entry clerk, and the typical failure is a part number typed wrongly at 4 pm on a Friday.

Acumatica has a real email framework: system email accounts, an email activity record against contacts and cases, and processing rules that can create cases from inbound mail. That helps with support, but it will not read a purchase order attachment and make a sales order out of it.

A well-scoped automation reads the message, understands the document, matches it to master data, and presents a draft transaction for a person to confirm.

What teams use it for

Customer PO to sales order

A PDF or body text PO becomes a draft sales order with customer, ship-to, line items matched by customer part number and requested dates.

Supplier acknowledgement matching

Order acknowledgements are matched to open PO lines and promised-date differences are flagged for the buyer.

RFQ intake

An inbound request is turned into an opportunity or quote shell, with attachments filed to the record.

Vendor invoice by email

Invoices sent to an accounts payable address are extracted and drafted as bills, with PO matching.

Customer service replies

Order status questions get a suggested reply with live data, queued for an agent to send.

Acumatica integration surface

  • Email accounts and processing (under System, typically screens for System Email Accounts and Email Preferences): receive and send, attach inbound mail to contacts, cases and opportunities as activities.
  • Contract-based REST API: create SalesOrder, PurchaseReceipt, Bill and Opportunity records, add attachments through the files endpoints and read master data to match.
  • Customer part number cross reference and vendor item cross reference: the matching tables that make line item mapping reliable.
  • Generic Inquiries for open orders and open PO lines to match acknowledgements against.
  • Microsoft 365 or Google Workspace APIs for mailbox access when you want processing outside Acumatica's own mailbox handling.

How it works

  1. 1

    Separate the mailboxes

    Use distinct shared mailboxes such as orders@, ap@ and rfq@. Classification gets easier and so does routing and retention.

  2. 2

    Ingest and normalise

    Pull messages and attachments, convert PDFs and images to text, strip signatures and thread history, and keep the original untouched.

  3. 3

    Classify and extract

    A model decides the document type and extracts customer, PO number, lines, quantities, prices and dates into a fixed schema with a confidence for each field.

  4. 4

    Match to master data

    Resolve the sender to a customer by domain and contact, and lines to inventory IDs through cross references, with fuzzy match only as a suggestion.

  5. 5

    Create a draft

    Post the draft through the REST API, attach the source email and PDF, and mark the order as on hold or entered but unconfirmed so it cannot ship.

  6. 6

    Review and learn

    A reviewer sees the draft next to the source, corrects fields, and each correction feeds new cross references.

Example flows

Customer PO arrives as PDF

Trigger: An email with a PDF reaches the orders mailbox.

  1. The service classifies it as a purchase order and extracts header and lines.
  2. The sender domain maps to a customer and the ship-to is matched by address.
  3. Customer part numbers map to inventory IDs; two lines are unmatched.
  4. A draft sales order is created with a review flag and the PDF attached.
  5. The order desk fixes the two lines and releases the order.

Result: Data entry becomes a two-minute review, with the unmatched lines clearly highlighted.

Supplier acknowledgement with a new date

Trigger: A supplier replies with a revised ship date.

  1. The reply is linked to the open PO by PO number.
  2. The new date is extracted per line.
  3. Lines where the date moved by more than a threshold are flagged.
  4. The buyer sees a one-screen list and updates promise dates in Acumatica.

Result: Slipping lines are visible the day the supplier tells you, not at receiving.

Keeping data on-prem

Email content is some of the most sensitive data a manufacturer holds, including drawings, pricing and contract terms. For on-premises Acumatica, run the ingestion service and an open-weight extraction model on your own server, reading the mailbox through your Exchange or Graph tenant with a scoped app identity. Only the extracted fields travel to Acumatica. If you must use a hosted model, redact pricing and attachments and review your data processing terms first.

Security checklist

  • Restrict the mailbox app permission to the specific shared mailboxes, not the whole tenant.
  • Never auto-confirm a draft from an unknown sender; treat sender spoofing and invoice fraud as real threats.
  • Check bank detail changes in vendor emails by an out-of-band callback, never through automation.
  • Keep the original message and attachment with the document for audit.

Ways to get it done

Native email processing plus manual entry

Effort: Configuration only.

Support emails, cases and activity logging. Not an extraction tool.

Intelligent capture product or marketplace app

Effort: Days to weeks plus licence.

Standard vendor invoices where a packaged tool already supports Acumatica.

Custom pipeline or Netray build

Effort: Several weeks for one document type, then incremental.

Customer POs with odd formats, many cross references, or data that must stay on-prem.

Pitfalls

  • !Automating one-time PO formats first; start with your top five customers by volume.
  • !Missing customer part number cross references, which makes every line a fuzzy match.
  • !Replying-all threads that repeat an old PO and create duplicates; deduplicate on PO number and message ID.
  • !Letting the model invent a missing field instead of leaving it blank for review.
  • !Skipping the draft stage and posting directly to released orders.

Frequently asked questions

Can Acumatica create sales orders from emails by itself?

Acumatica can receive email into cases, activities and opportunities, but we are not aware of native extraction of order lines from PDF attachments. That step needs an extraction service or a marketplace capture app.

How accurate is automated PO extraction?

It depends on the template and the quality of the master data. Clean, machine-generated PDFs with maintained cross references go well, scans and free-form emails less so. That is why confidence scoring and a review queue are part of the design.

Should it post orders automatically?

Only after months of measured accuracy for a specific customer and with a value limit. Until then, create drafts that a person confirms. A wrongly posted order costs more than a few minutes of review.

What about invoice emails?

Acumatica offers invoice recognition capabilities in some editions and versions; check what your licence includes. For others, extract to a draft bill with PO matching and route exceptions to AP.

Does it work with Gmail and Microsoft 365?

Yes. Both provide APIs for shared mailbox access. Choose the API that matches your mail platform and use app-level credentials limited to the mailboxes involved.

Want Email automation working on your Acumatica?

A free 30 minute assessment: we map the integration path for your version and setup, and where it should run.

Get a free assessment