---
title: "Automate ERPNext from Email with BOTS4.me"
url: https://bots4.me/erpnext-automation/
canonical: https://bots4.me/erpnext-automation/
language: en
updated: 2026-10-30
---

# Automate ERPNext from Email with BOTS4.me

ERPNext automation bots read emails and create orders, confirmations and payments in ERPNext 15 and 16. First month free.

# Automate ERPNext from Email: Orders, Supplier Confirmations and Payments

Written by [Adam Petras](https://bots4.me/about-us/), Founder & CEO, TreeLab OÜ · Published 2026-10-29 · Updated 2026-10-29

Three bots that read your mailbox and write the documents ERPNext 15 and 16 expect

Customer orders, supplier confirmations and bank notifications all arrive by email, and in most ERPNext companies a person turns each of them into a document by hand. This guide explains how three BOTS4.me bots take over that work: **Mail2ERP** creates Quotations and Sales Orders from customer emails, **Supplier2ERP** writes confirmed quantities, prices and dates back onto your Purchase Orders, and **Pay2ERP** records incoming payments against the right Sales Invoices.

Everything runs through the standard Frappe REST API with an API key and secret, on ERPNext versions 15 and 16. Every bot starts in Demo Mode, and the first month is a free Discovery month.

    🤖 The bots for this job Mail2ERP, Supplier2ERP and Pay2ERP for ERPNext First month free · No card needed   [🚀 Start your free Discovery month](https://bots4.me/bots/) [Mail2ERP product page](https://bots4.me/product/mail2erp/)

## 🎯 Where ERPNext Companies Still Type by Hand

ERPNext is very good at what happens after a document exists: pricing rules, stock reservations, deliveries, invoices and the general ledger all follow from a correct Sales Order or Purchase Order. The weak spot is the step before that. Most documents start life as an email from somebody outside your company, and ERPNext cannot read those emails for you.

- **Customer orders and RFQs** arrive as PDF, Excel or scanned attachments, each customer with its own layout. Someone opens every email and keys the items, quantities and references into a Quotation or Sales Order.
- **Supplier order confirmations** come back with changed quantities, new prices or a later delivery date. Someone compares them line by line with your Purchase Order and updates it, or the differences are simply missed.
- **Incoming payments** show up as bank notifications or statement files. Someone finds the right Sales Invoice for each payment and books a Payment Entry, often an hour or two every day.

None of this work needs judgement most of the time, but all of it needs care, because a wrong quantity or a payment booked against the wrong invoice causes problems weeks later. That is the kind of work the three bots below take over.

## 🤖 Which BOTS4.me Bots Work with ERPNext

Every ERP app of BOTS4.me runs on ERPNext 15 and 16. This page focuses on the three that turn email into ERPNext documents. The table shows what each one reads and what it writes.

| Bot | Reads | Writes in ERPNext |
| --- | --- | --- |
| Mail2ERP | Customer emails: orders and requests for quotation, in the email text and in PDF, Excel, Word, CSV, HTML, image and scanned attachments | A draft Quotation for an inquiry; a submitted Sales Order for a firm order; the original files attached to the document |
| Supplier2ERP | Supplier order confirmations and delivery notices from senders on your supplier list | Confirmed quantities, prices and delivery dates on the matching Purchase Order |
| Pay2ERP | Bank notification emails, bank statement files, bank or payment-provider connections, or ERPNext's own Bank Transactions | One submitted Payment Entry per paid Sales Invoice, and the bank transaction reconciled when it came from ERPNext |

AutoERP (confirm, ship and invoice tagged orders), AutoCASH (payment reminders), Bill2ERP (supplier bills as draft purchase invoices), AutoSTOCK and AutoPURCHASE run on ERPNext too. One ERPNext connection serves all of them, so starting another bot later needs no new integration work.

## 📧 Mail2ERP: Customer Emails to Quotations and Sales Orders

    📧

Customer email arrives

  →  🔍

RFQ or order?

  →  💾

Quotation or Sales Order in ERPNext

  →  ✅

Email filed to PROCESSED

Mail2ERP reads your sales mailbox and decides for every email whether it is a request for quotation, a firm order or neither. Several independent signals vote on that decision, and a manual correction from you always wins. It then reads the product lines from the email text and every attachment, with no templates, and matches each code against your ERPNext items.

### What it creates in ERPNext

- **Inquiry → draft Quotation.** Your sales team reviews it, adjusts it and sends it as usual.
- **Firm order → Sales Order, submitted.** Mail2ERP creates the order as a draft first and then submits it, so ERPNext's own pricing and status logic runs exactly as it does for an order entered by a person.
- **Reply to your quotation → Sales Order.** With RFQ Detection switched on, a customer reply that names one of your quotation numbers and asks you to go ahead turns that Quotation into a submitted Sales Order.
- **Files and context:** the customer's original attachments are attached to the document, and the email text is added as a comment, so anyone opening the Quotation or Sales Order sees where it came from.
- **No double entry:** when the integration user may add custom fields, Mail2ERP marks every document it creates with the source email, so the same order forwarded twice or sent to two addresses is created once.

### What it never does

Mail2ERP never creates a customer or an item in ERPNext. The sender must belong to an existing customer, and every line must match an item in your catalog. A line whose quantity cannot be read with confidence is skipped rather than guessed, and you get an email asking you to add it by hand. With Smart Multi-Code Matching, lines can also be matched by vendor codes, barcodes, manufacturer part numbers and your customers' own item codes, which ERPNext stores as customer item codes.

## 📦 Supplier2ERP: Confirmations Written onto Your Purchase Orders

Supplier2ERP is the mirror image of Mail2ERP on the purchasing side. It reads the confirmations and delivery notices your suppliers send and writes what they confirmed onto the matching ERPNext Purchase Order.

- **Only senders you taught it.** Supplier2ERP reads mail from senders on your supplier list. You add a supplier by dropping one of their emails into the _AutoSPAM/SUPPLIER folder; while the list is still empty, nothing is filtered out.
- **Finding the right order.** When the email names your Purchase Order number, that number wins. When it does not, Supplier2ERP compares the product codes in the email with your open Purchase Orders for that supplier. If two orders fit equally well, nothing is written and you get a report.
- **Checks before any write:** the data must be plausible, and the number of differing lines, any single price difference and any single quantity difference must stay inside the limits you set. If one check fails, you get a report instead of an update.
- **How ERPNext is updated:** a draft Purchase Order is saved with the new values. A submitted Purchase Order is changed through ERPNext's own Update Items function, with the full list of lines, and a confirmed date also becomes the expected delivery date. Closed, completed and cancelled orders are left alone.
- **Your rules stay in charge:** automatic quantity and price updates each have their own switch. A supplier who confirms exactly what you ordered is logged as confirmed, with nothing to change.

Processed confirmations move to the _Supplier2ERP/PROCESSED folder of your mailbox; anything that needs a person stays unread in your INBOX.

## 💶 Pay2ERP: Incoming Payments Booked Against the Right Invoices

Pay2ERP reads incoming payments, works out which of your open Sales Invoices each one settles and records the payment in ERPNext. It works only with incoming money; outgoing payments are ignored.

### Where the payments come from

- **Bank emails:** the notifications or statements your bank already sends. Structured files such as MT940, MT942, CAMT.053, BAI2 and OFX are read entry by entry; other emails are read from their text.
- **Bank and payment connections:** for example Revolut, Wise, Qonto, Mercury, Stripe, PayPal or Square.
- **ERPNext Bank Transactions:** the incoming, not yet reconciled transactions of the ERPNext bank accounts you pick.

### How a payment is matched and booked

Pay2ERP first looks for an invoice reference and the amount together. When the payment carries no usable reference, it looks up the payer among the company names it has learned and checks which combination of that customer's open invoices adds up to the amount. Every successful match teaches it something, which is why the second month needs far less attention than the first.

For each paid invoice it creates and submits one Payment Entry through ERPNext's own mapping, never paying more than is still open. When the payment came from an ERPNext Bank Transaction, the transaction is reconciled with those entries. Payments it cannot match are listed in a separate email with the original message attached, so they can be booked by hand.

## ⚙️ Step-by-Step Setup for ERPNext

- **Step 1 — Start your free Discovery month:** sign in at [bots4.me/bots](https://bots4.me/bots/) and click **Start free Discovery month** on the card of the bot you want, for example Mail2ERP. No card is needed.
- **Step 2 — Create an integration user in ERPNext:** under Users, create a user such as "BOTS4.me Integration" with the roles Sales User, Purchase User, Stock User, Accounts User, Sales Master Manager and Purchase Master Manager. Without the two Master Manager roles, ERPNext hides prices from the API.
- **Step 3 — Generate the API key and secret:** open the user, go to the **Settings** tab → **API Access** → **Generate Keys**. Copy the API secret, which is shown only once, and the API key.
- **Step 4 — Connect ERPNext at bots4.me:** in Settings → the bot → Access Manager → **Add Destination** → ERP → ERPNext, enter your ERPNext site URL, the API key and the API secret. The full walkthrough is in [Getting Connected](https://bots4.me/guide-getting-connected/).
- **Step 5 — Connect your mailbox:** Gmail and Microsoft 365 connect with Secure Quick Connect; other providers connect over IMAP with an app password. For Mail2ERP and Supplier2ERP you can also connect no mailbox at all: add the BOTS4.me Mailbox as a source and forward emails to it.
- **Step 6 — Read the Demo reports, then go LIVE:** each bot starts in Demo Mode and emails you what it would have written. When the reports look right, set Mode to LIVE on the Control tab.

### 🔐 One connection for every bot

The same ERPNext connection is used by every BOTS4.me app you start. Your API key and secret are encrypted the moment you save them, and the bots can only do what the roles of the integration user allow.

## 🧪 Demo Mode and Emails the Bots Cannot Handle

Every bot starts in Demo Mode. It reads your real emails and your real ERPNext data and emails you a report of exactly what it would have created or changed, but writes nothing. LIVE unlocks after the first Demo report. You can see how this works in general on the [Demo Mode](https://bots4.me/demo/) page, or click through the [live dashboard demo](https://bots4.me/bots_demo/) with sample data first.

### What happens to unclear emails

- **Nothing disappears:** an email a bot could not process stays unread in your INBOX. Imported emails move to the bot's PROCESSED folder.
- **Every decision is logged** in the dashboard's Logs tab and in the LOGS folder of your mailbox, with the reason, for example a sender who is not a customer in ERPNext or an item code that does not exist. See [the mailbox LOGS guide](https://bots4.me/guide-logs/).
- **Correct Mail2ERP with folders:** drag an email into _Mail2ERP/QUOTATION or _Mail2ERP/ORDERS to retry it as a quotation or an order, or into _Mail2ERP/SKIP to skip that kind of email in future. The correction is remembered for that sender.
- **Unmatched payments** are emailed to you with the original bank message, and supplier confirmations outside your limits stay in the INBOX until someone reviews them.

## 📅 The Free Discovery Month and the Free Plan

The first month of each bot is a free Discovery month with no card needed. Switches marked **Discovery** on the Control tab are included in that month and start switched off, so you decide what to try.

### 📅 When the Discovery month ends

Each bot continues on the free plan by itself with a small monthly allowance: about five orders or RFQs a month for Mail2ERP, about five supplier documents for Supplier2ERP and about ten payments for Pay2ERP. When the allowance is used, new items wait until next month or until you choose a plan, and an item already started always finishes. Nothing written to ERPNext is undone. The plans are listed on each product page.

## ❓ Frequently Asked Questions

### Which ERPNext versions does BOTS4.me support?

ERPNext 15 and 16. Older versions are not supported. The connection uses the standard Frappe REST API, so no custom app has to be installed in ERPNext.

### Does Mail2ERP create a Quotation or a Sales Order in ERPNext?

It depends on the email. A request for quotation becomes a draft Quotation. A firm customer order becomes a Sales Order, which Mail2ERP then submits. When a customer replies to one of your quotations and asks you to go ahead, RFQ Detection turns that quotation into a submitted Sales Order.

### Will Mail2ERP create new customers or items in ERPNext?

No. The customer must already exist in ERPNext, and every line must match an item in your catalog. Emails that cannot be imported stay unread in your INBOX, and the log says why, so you can add the missing customer or item and retry.

### How does ERPNext authentication work?

With an API key and an API secret generated for an ERPNext user (User → Settings → API Access → Generate Keys). OAuth is not offered for ERPNext. We recommend a dedicated integration user with the roles Sales User, Purchase User, Stock User, Accounts User, Sales Master Manager and Purchase Master Manager.

### Can Supplier2ERP change a Purchase Order that is already submitted?

Yes. A draft Purchase Order is simply saved. A submitted one is changed through ERPNext's own Update Items function with the full list of lines, and a confirmed delivery date is also written to the expected delivery date. Closed, completed and cancelled orders are never changed.

### Can Pay2ERP use the bank transactions I already import into ERPNext?

Yes. Pay2ERP can read incoming, not yet reconciled Bank Transactions of the bank accounts you choose, match each one to invoices and reconcile it. It can also read bank notification emails, bank statement files such as MT940 or CAMT.053, or a bank or payment-provider connection.

### What happens after the free Discovery month?

Each bot continues on the free plan by itself with a small monthly allowance, for Mail2ERP about five orders or RFQs a month. When it is used up, new items wait until the next month or until you choose a plan. Nothing that was already written to ERPNext is undone.

## 📚 Related Reading

- **Products:** [Mail2ERP](https://bots4.me/product/mail2erp/), [Supplier2ERP](https://bots4.me/product/supplier2erp/) and [Pay2ERP](https://bots4.me/product/pay2erp/).
- **Guides:** [Mail2ERP Guide](https://bots4.me/mail2erp-guide/), [Supplier2ERP Guide](https://bots4.me/supplier2erp-guide/), [Pay2ERP Guide](https://bots4.me/pay2erp-guide/) and [Getting Connected](https://bots4.me/guide-getting-connected/).
- **Another open-source ERP:** [Automate Dolibarr: Email Orders, Invoicing and Payment Reminders](https://bots4.me/dolibarr-automation/).
- **Comparing approaches:** [Parseur, Docparser or Nanonets vs Mail2ERP for ERP Order Entry](https://bots4.me/email-order-parsers-vs-erp-automation/).
- **Other ERPs:** [Business Central](https://bots4.me/import-email-orders-into-business-central/), [SAP Business One](https://bots4.me/import-email-orders-into-sap-business-one/), [Zoho Inventory and Zoho Books](https://bots4.me/import-email-orders-into-zoho-inventory/) and [Odoo](https://bots4.me/import-email-orders-into-odoo/).
- **Background:** [Understanding ERP and CRM Systems](https://bots4.me/understanding-erps-crms/) and the real numbers in [the IMP Kontakt case study](https://bots4.me/case-study-imp-kontakt/).

## Let ERPNext Fill Itself from Your Mailbox

Connect your mailbox and ERPNext with one API key pair, watch each bot work in Demo Mode, and switch to LIVE only when the reports look right. The first month is a free Discovery month, with no card needed.

  [🚀 Start your free Discovery month](https://bots4.me/bots/) [📖 Mail2ERP product page](https://bots4.me/product/mail2erp/) [💬 Talk to us](https://bots4.me/contact/)

More than one process to automate, or an ERP that is not on our list? [We build it for you: book a free call →](https://bots4.me/custom-solutions/)

## Frequently asked questions

### How do BOTS4.me bots connect to ERPNext?

BOTS4.me uses the Frappe REST API with an API key and secret to connect securely to ERPNext versions 15 and 16. Each bot operates through a single authentication setup, allowing Mail2ERP, Supplier2ERP, and Pay2ERP to work together seamlessly.

### Can BOTS4.me bots handle supplier confirmations in ERPNext?

Yes, Supplier2ERP reads supplier order confirmations from emails and updates the corresponding Purchase Orders in ERPNext with confirmed quantities, prices, and delivery dates. This eliminates manual data entry and reduces errors.

### What happens to unclear emails during ERPNext automation?

Emails that cannot be processed automatically are flagged in Demo Mode. BOTS4.me provides clear feedback on why an email was not processed, allowing users to review and correct the issue before switching to full automation.

### Does BOTS4.me support ERPNext versions older than 15?

No, BOTS4.me supports only ERPNext versions 15 and 16. The bots are designed to work with the Frappe REST API available in these versions, ensuring compatibility and stability.

