ERPNext
Keep ERPNext in step with your orders, stock and finance, with the right person approving every posting.
82 ways to read, 42 ways to write, each write switched on by you.
Quality checks
Built and tested with example responses.
- Ready to connect: doneEvery listed action is built in.
- Built and tested with example responses: doneEach action is built from the provider’s published API and tested against example responses, errors, rate limits and paging.
Connected, approved, proven.
The things teams do most with ERPNext, an example flow with a person in the loop, and what Nexra keeps as proof.
Top actions
- Create customerApproval by rule
- Create delivery noteApproval by rule
- List accountsRead
Example flow
- ERPNext · List accountsDone
- ERPNext · Create customerNeeds approval
- Nexra · Record the decision and result in the evidence chainProven
Example workflow. Routine runs go through on their own. Only a change your rules flag, such as one over a limit you set, waits for the right person, who sees the exact change and the rule before it reaches ERPNext.
What gets logged
- Whether it ran on its own or who approved it, and under which rule
- A fingerprint of the exact request sent to ERPNext
- ERPNext's reply: what it created or changed
- One entry in the evidence chain, linked to the one before
Try this in the sandbox
Run the whole flow with test data in your sandbox, then connect a Frappe Technologies test account before you go live.
For developers
Technical detail
ERPNext masters, sales, purchasing, stock, accounting, projects, HR, CRM and manufacturing records through the Frappe REST API, with draft-only writes.
Frappe Technologies API docs- Source actions
- 82
- Destination actions
- 42
- Data types
- 44
What you can map
Reads are always available. Writes are off until you switch them on for a connection, and governed writes follow your policies.
Accounts2
- Get accountSource
Reads one Account with child tables and custom fields.
- List accountsSourceIncremental
Lists ERPNext Account documents by modification time.
Addresses2
- Get addressSource
Reads one Address with child tables and custom fields.
- List addresssSourceIncremental
Lists ERPNext Address documents by modification time.
Bank transactions1
- List bank transactionsSourceIncremental
Lists imported bank statement lines (Bank Transaction) by modification time, with deposit, withdrawal and how much is already matched.
Batches2
- Get batchSource
Reads one Batch with child tables and custom fields.
- List batchsSourceIncremental
Lists ERPNext Batch documents by modification time.
Boms2
- Get bill of materialsSource
Reads one BOM with child tables and custom fields.
- List bill of materialssSourceIncremental
Lists ERPNext BOM documents by modification time.
Companies2
- Get companySource
Reads one Company with child tables and custom fields.
- List companysSourceIncremental
Lists ERPNext Company documents by modification time.
Contacts2
- Get contactSource
Reads one Contact with child tables and custom fields.
- List contactsSourceIncremental
Lists ERPNext Contact documents by modification time.
Cost centers2
- Get cost centerSource
Reads one Cost Center with child tables and custom fields.
- List cost centersSourceIncremental
Lists ERPNext Cost Center documents by modification time.
Credit notes1
- List credit notesSourceIncremental
Lists customer credit notes (ERPNext return Sales Invoices, is_return = 1) by modification time. Amounts are negative, as ERPNext stores returns.
Customer payments1
- List customer paymentsSourceIncremental
Lists payments received (Payment Entry with payment type Receive) by modification time.
Customers4
- Create customerDestinationNot retried automaticallyApproval before production
Creates a draft Customer. Submission and cancellation stay in ERPNext.
- Get customerSource
Reads one Customer with child tables and custom fields.
- List customersSourceIncremental
Lists ERPNext Customer documents by modification time.
- Update customerDestinationProvider duplicate protectionApproval before production
Updates fields of a Customer; submitted documents only accept fields allowed on submit.
Delivery notes4
- Create delivery noteDestinationNot retried automaticallyApproval before production
Creates a draft Delivery Note. Submission and cancellation stay in ERPNext.
- Get delivery noteSource
Reads one Delivery Note with child tables and custom fields.
- List delivery notesSourceIncremental
Lists ERPNext Delivery Note documents by modification time.
- Update delivery noteDestinationProvider duplicate protectionApproval before production
Updates fields of a Delivery Note; submitted documents only accept fields allowed on submit.
Documents4
- Create documentDestinationNot retried automaticallyApproval before production
Creates a draft document of an allow-listed DocType. docstatus is always 0 (draft); submission is not available.
- Get documentSource
Reads one document of an allow-listed DocType with child tables.
- List documents of a DocTypeSourceIncremental
Lists documents of an allow-listed DocType with all parent fields.
- Update documentDestinationProvider duplicate protectionApproval before production
Updates fields of a document of an allow-listed DocType (not Stock Entry). docstatus cannot be changed.
Employees4
- Create employeeDestinationNot retried automaticallyApproval before production
Creates a draft Employee. Submission and cancellation stay in ERPNext.
- Get employeeSource
Reads one Employee with child tables and custom fields.
- List employeesSourceIncremental
Lists ERPNext Employee documents by modification time.
- Update employeeDestinationProvider duplicate protectionApproval before production
Updates fields of a Employee; submitted documents only accept fields allowed on submit.
Gl entries2
- Get general ledger entrySource
Reads one GL Entry with child tables and custom fields.
- List general ledger entrysSourceIncremental
Lists ERPNext GL Entry documents by modification time.
Issues2
- Get issueSource
Reads one Issue with child tables and custom fields.
- List issuesSourceIncremental
Lists ERPNext Issue documents by modification time.
Item prices4
- Create item priceDestinationNot retried automaticallyApproval before production
Creates a draft Item Price. Submission and cancellation stay in ERPNext.
- Get item priceSource
Reads one Item Price with child tables and custom fields.
- List item pricesSourceIncremental
Lists ERPNext Item Price documents by modification time.
- Update item priceDestinationProvider duplicate protectionApproval before production
Updates fields of a Item Price; submitted documents only accept fields allowed on submit.
Items4
- Create itemDestinationNot retried automaticallyApproval before production
Creates a draft Item. Submission and cancellation stay in ERPNext.
- Get itemSource
Reads one Item with child tables and custom fields.
- List itemsSourceIncremental
Lists ERPNext Item documents by modification time.
- Update itemDestinationProvider duplicate protectionApproval before production
Updates fields of a Item; submitted documents only accept fields allowed on submit.
Journal entries3
- Create journal entryDestinationNot retried automaticallyApproval before production
Creates a draft Journal Entry (always saved as draft; never submitted). Submission and cancellation stay in ERPNext.
- Get journal entrySource
Reads one Journal Entry with child tables and custom fields.
- List journal entrysSourceIncremental
Lists ERPNext Journal Entry documents by modification time.
Leads4
- Create leadDestinationNot retried automaticallyApproval before production
Creates a draft Lead. Submission and cancellation stay in ERPNext.
- Get leadSource
Reads one Lead with child tables and custom fields.
- List leadsSourceIncremental
Lists ERPNext Lead documents by modification time.
- Update leadDestinationProvider duplicate protectionApproval before production
Updates fields of a Lead; submitted documents only accept fields allowed on submit.
Material requests4
- Create material requestDestinationNot retried automaticallyApproval before production
Creates a draft Material Request. Submission and cancellation stay in ERPNext.
- Get material requestSource
Reads one Material Request with child tables and custom fields.
- List material requestsSourceIncremental
Lists ERPNext Material Request documents by modification time.
- Update material requestDestinationProvider duplicate protectionApproval before production
Updates fields of a Material Request; submitted documents only accept fields allowed on submit.
Opportunities4
- Create opportunityDestinationNot retried automaticallyApproval before production
Creates a draft Opportunity. Submission and cancellation stay in ERPNext.
- Get opportunitySource
Reads one Opportunity with child tables and custom fields.
- List opportunitysSourceIncremental
Lists ERPNext Opportunity documents by modification time.
- Update opportunityDestinationProvider duplicate protectionApproval before production
Updates fields of a Opportunity; submitted documents only accept fields allowed on submit.
Payment entries2
- Get payment entrySource
Reads one Payment Entry with child tables and custom fields.
- List payment entrysSourceIncremental
Lists ERPNext Payment Entry documents by modification time.
Price lists2
- Get price listSource
Reads one Price List with child tables and custom fields.
- List price listsSourceIncremental
Lists ERPNext Price List documents by modification time.
Projects4
- Create projectDestinationNot retried automaticallyApproval before production
Creates a draft Project. Submission and cancellation stay in ERPNext.
- Get projectSource
Reads one Project with child tables and custom fields.
- List projectsSourceIncremental
Lists ERPNext Project documents by modification time.
- Update projectDestinationProvider duplicate protectionApproval before production
Updates fields of a Project; submitted documents only accept fields allowed on submit.
Purchase invoices4
- Create purchase invoiceDestinationNot retried automaticallyApproval before production
Creates a draft Purchase Invoice. Submission and cancellation stay in ERPNext.
- Get purchase invoiceSource
Reads one Purchase Invoice with child tables and custom fields.
- List purchase invoicesSourceIncremental
Lists ERPNext Purchase Invoice documents by modification time.
- Update purchase invoiceDestinationProvider duplicate protectionApproval before production
Updates fields of a Purchase Invoice; submitted documents only accept fields allowed on submit.
Purchase orders4
- Create purchase orderDestinationNot retried automaticallyApproval before production
Creates a draft Purchase Order. Submission and cancellation stay in ERPNext.
- Get purchase orderSource
Reads one Purchase Order with child tables and custom fields.
- List purchase ordersSourceIncremental
Lists ERPNext Purchase Order documents by modification time.
- Update purchase orderDestinationProvider duplicate protectionApproval before production
Updates fields of a Purchase Order; submitted documents only accept fields allowed on submit.
Purchase receipts4
- Create purchase receiptDestinationNot retried automaticallyApproval before production
Creates a draft Purchase Receipt. Submission and cancellation stay in ERPNext.
- Get purchase receiptSource
Reads one Purchase Receipt with child tables and custom fields.
- List purchase receiptsSourceIncremental
Lists ERPNext Purchase Receipt documents by modification time.
- Update purchase receiptDestinationProvider duplicate protectionApproval before production
Updates fields of a Purchase Receipt; submitted documents only accept fields allowed on submit.
Quotations4
- Create quotationDestinationNot retried automaticallyApproval before production
Creates a draft Quotation. Submission and cancellation stay in ERPNext.
- Get quotationSource
Reads one Quotation with child tables and custom fields.
- List quotationsSourceIncremental
Lists ERPNext Quotation documents by modification time.
- Update quotationDestinationProvider duplicate protectionApproval before production
Updates fields of a Quotation; submitted documents only accept fields allowed on submit.
Sales invoices4
- Create sales invoiceDestinationNot retried automaticallyApproval before production
Creates a draft Sales Invoice. Submission and cancellation stay in ERPNext.
- Get sales invoiceSource
Reads one Sales Invoice with child tables and custom fields.
- List sales invoicesSourceIncremental
Lists ERPNext Sales Invoice documents by modification time.
- Update sales invoiceDestinationProvider duplicate protectionApproval before production
Updates fields of a Sales Invoice; submitted documents only accept fields allowed on submit.
Sales orders4
- Create sales orderDestinationNot retried automaticallyApproval before production
Creates a draft Sales Order. Submission and cancellation stay in ERPNext.
- Get sales orderSource
Reads one Sales Order with child tables and custom fields.
- List sales ordersSourceIncremental
Lists ERPNext Sales Order documents by modification time.
- Update sales orderDestinationProvider duplicate protectionApproval before production
Updates fields of a Sales Order; submitted documents only accept fields allowed on submit.
Serial numbers2
- Get serial numberSource
Reads one Serial No with child tables and custom fields.
- List serial numbersSourceIncremental
Lists ERPNext Serial No documents by modification time.
Session1
- Get API userSource
Returns the user the API key belongs to (connection check).
Stock entries3
- Create stock entryDestinationNot retried automaticallyApproval before production
Creates a draft Stock Entry (always saved as draft; never submitted). Submission and cancellation stay in ERPNext.
- Get stock entrySource
Reads one Stock Entry with child tables and custom fields.
- List stock entrysSourceIncremental
Lists ERPNext Stock Entry documents by modification time.
Stock ledger entries2
- Get stock ledger entrySource
Reads one Stock Ledger Entry with child tables and custom fields.
- List stock ledger entrysSourceIncremental
Lists ERPNext Stock Ledger Entry documents by modification time.
Stock levels2
- Get stock levelSource
Reads one Bin with child tables and custom fields.
- List stock levelsSourceIncremental
Lists ERPNext Bin documents by modification time.
Supplier quotations4
- Create supplier quotationDestinationNot retried automaticallyApproval before production
Creates a draft Supplier Quotation. Submission and cancellation stay in ERPNext.
- Get supplier quotationSource
Reads one Supplier Quotation with child tables and custom fields.
- List supplier quotationsSourceIncremental
Lists ERPNext Supplier Quotation documents by modification time.
- Update supplier quotationDestinationProvider duplicate protectionApproval before production
Updates fields of a Supplier Quotation; submitted documents only accept fields allowed on submit.
Suppliers4
- Create supplierDestinationNot retried automaticallyApproval before production
Creates a draft Supplier. Submission and cancellation stay in ERPNext.
- Get supplierSource
Reads one Supplier with child tables and custom fields.
- List suppliersSourceIncremental
Lists ERPNext Supplier documents by modification time.
- Update supplierDestinationProvider duplicate protectionApproval before production
Updates fields of a Supplier; submitted documents only accept fields allowed on submit.
Tasks4
- Create taskDestinationNot retried automaticallyApproval before production
Creates a draft Task. Submission and cancellation stay in ERPNext.
- Get taskSource
Reads one Task with child tables and custom fields.
- List tasksSourceIncremental
Lists ERPNext Task documents by modification time.
- Update taskDestinationProvider duplicate protectionApproval before production
Updates fields of a Task; submitted documents only accept fields allowed on submit.
Timesheets4
- Create timesheetDestinationNot retried automaticallyApproval before production
Creates a draft Timesheet. Submission and cancellation stay in ERPNext.
- Get timesheetSource
Reads one Timesheet with child tables and custom fields.
- List timesheetsSourceIncremental
Lists ERPNext Timesheet documents by modification time.
- Update timesheetDestinationProvider duplicate protectionApproval before production
Updates fields of a Timesheet; submitted documents only accept fields allowed on submit.
Vendor credit notes1
- List vendor credit notesSourceIncremental
Lists supplier credit notes (ERPNext debit notes: return Purchase Invoices, is_return = 1) by modification time. Amounts are negative, as ERPNext stores returns.
Vendor payments1
- List vendor paymentsSourceIncremental
Lists payments made (Payment Entry with payment type Pay) by modification time.
Warehouses2
- Get warehouseSource
Reads one Warehouse with child tables and custom fields.
- List warehousesSourceIncremental
Lists ERPNext Warehouse documents by modification time.
Work orders2
- Get work orderSource
Reads one Work Order with child tables and custom fields.
- List work ordersSourceIncremental
Lists ERPNext Work Order documents by modification time.
Access and limits
- Authentication
- API key and API secret (token authentication)
- Plans and access
- Self-hosted ERPNext (v14+) or Frappe Cloud sites. Access follows the API user's roles and user permissions; document submission is left to ERPNext workflows.
- Test environment
- Use a Frappe Cloud trial site or a local bench site.
- Rate limits
- No default API limit; sites may configure rate limiting, and Frappe Cloud plans apply request quotas (HTTP 429).
- Pagination
- limit_start/limit_page_length (up to 500) ordered by modified ascending.
- Provider events
- ERPNext Webhook DocType (document events with optional HMAC signature). Flows run on demand, on a schedule, or when a scheduled check finds new or changed records.
Before you build a flow
- Writes never submit or cancel: docstatus is a reserved field that no input can set, added submittable DocTypes (Material Request, Supplier Quotation, Purchase Receipt, Journal Entry, Timesheet) are always created with docstatus 0, and the submit, cancel and amend methods are not called. Nothing is deleted.
- Filters are built only from validated values and sent JSON-encoded. DocTypes added in the deepening pass accept only named, pattern-checked equality filters (company, item, warehouse, account and similar), never email or phone filters, and are not reachable through the generic documents operations.
- Accounting, stock ledger, BOM, work order, issue, contact and address records are read only. Journal entries are draft-create only and are never posted.
- Only the allow-listed DocTypes are reachable; generic operations cannot address other DocTypes.
- Documents are created as drafts; submit, cancel, amend and delete are not implemented. Stock entries are create-only drafts and payment entries are read only.
- The modified filter compares Frappe's site-time-zone timestamps with the UTC wall-clock value you supply.
- List reads return parent fields only; child tables (items) come from single reads.
- ERPNext has no idempotency key for creates; uncertain creates are not repeated automatically.
- Reconciliation reads (credit_notes, vendor_credit_notes, customer_payments, vendor_payments, bank_transactions) are read only filtered views: credit notes are return invoices (is_return = 1) with negative amounts as ERPNext stores them, payments are Payment Entries split by payment type (Receive or Pay; internal transfers are excluded), and bank transactions are the statement lines imported or entered in ERPNext, not a live bank feed.
Developer reference
- Create the Frappe Technologies credentials described above with the narrowest permissions your flows need.
- In Nexra, open Connect, then Connections, then New connection, choose ERPNext, enter its settings and credentials, and tick only the write actions you need. Connection guide
- Test the connection, then use its actions as flow sources and destinations. Flow guide
Machine-readable detail: GET /api/public/connect/connectors/erpnext and the Connections API.