scan vertical — beta

Scan it. Stock it.
Sync it.

ERPNext configured for scanning operations — goods receiving, stocktakes, bin-level moves. Every scan event flows through to your primary ERP as a service.

Barcode / RFID → ERPNext → Sage / SAP / Dynamics → Stock updated
<500ms
Scan to ERP
5+
ERP targets
GCP
Managed instance
ZAR
SA localised
Live Flow

From trigger to ERP update.

A scan event hits ERPNext, creates the correct stock document, then pushes the update downstream to your primary ERP — all in under a second.

01 — Trigger
Scan Event
Barcode reader
RFID antenna
Mobile scanner
Manual entry
SKU: 6009183742817
QTY: 48
BIN: WH-A3-R2
02 — Process
ERPNext
Stock Entry created
Bin qty updated
Serial/Batch tracked
Valuation applied
PRE-2026-00841
Status: Submitted
GL: Posted ✓
03 — Sync Out
Target ERP
Goods Receipt posted
Stock journal updated
Cost allocated
Audit trail written
GRN-SA-44821
ERP: Sage X3
Status: Posted ✓
Live simulation — click Play to run a scan event
scan-agent ~ idle
$
ERPNext Config

Pre-configured for scanning operations.

The scanning vertical is an opinionated ERPNext setup — only the modules you need, wired the way a scanning operation expects them.

S
Stock Module
ENABLED — core
  • ▸ Multi-warehouse with bin locations
  • ▸ FIFO / Moving Average valuation
  • ▸ Serial number + batch tracking
  • ▸ Projected qty forecasting
  • ▸ Reorder level alerts
P
Purchase / Receiving
ENABLED
  • ▸ Purchase Receipt (GRN) from scan
  • ▸ Auto-match supplier barcode → Item
  • ▸ Over/under receive tolerance
  • ▸ Quality Inspection on receive
  • ▸ GR/IR account posting
R
Stock Reconciliation
ENABLED
  • ▸ Cycle count by warehouse / zone
  • ▸ Variance detection + reporting
  • ▸ Manager approval before submit
  • ▸ GL adjustment on variance post
  • ▸ Audit trail per scan session
D
Delivery / Dispatch
ENABLED
  • ▸ Scan-to-pack delivery note
  • ▸ Sales Order fulfillment check
  • ▸ Outbound bin deduction on scan
  • ▸ Packing slip + shipping label
  • ▸ Short-ship alert to sales
I
Item Master
ENABLED — configured
  • ▸ Multiple barcodes per item (EAN, UPC, internal)
  • ▸ Supplier barcode mapping
  • ▸ Unit of measure conversion on scan
  • ▸ Image + spec sheet attached
  • ▸ Variants (colour, size, SKU)
A
AI + MCP Layer
INCLUDED
  • ▸ MCP server on every instance
  • ▸ Scan anomaly detection agent
  • ▸ Auto-reorder suggestion agent
  • ▸ Connect Claude / Cursor direct
  • ▸ Full audit log per agent action
// Key DocTypes in the scanning vertical
Inbound
Purchase Order
Purchase Receipt
Quality Inspection
Supplier → Item mapping
Internal
Stock Entry (Transfer)
Stock Reconciliation
Bin (location qty)
Serial / Batch No
Outbound
Delivery Note
Packing Slip
ERP Sync Log (custom)
Webhook → Target ERP
Outbound Integrations

Push to any ERP.

ERPNext is the operational layer. Your primary ERP stays the system of record. Every scan event that matters gets pushed downstream — in real-time or batched.

Sage X3
REST API + GraphQL
production-ready

Full GRN, stock transfer, and reconciliation push via Sage X3's REST API. Tested against Sage X3 v11/v12 on-premise and cloud.

▸Goods Receipt → GSTOCK site
▸Stock Journal for transfers
▸Variance report to Sage Insights
via: 2nth Sage AI connector
SAP Business One
Service Layer API
production-ready

SAP B1 Service Layer supports full inventory document creation. Goods Receipts, Inventory Transfers, and Cycle Counts sync in real-time.

▸GoodsReceipts → SAP B1
▸InventoryTransfer documents
▸InventoryCounting for stocktakes
via: SAP B1 Service Layer (v10+)
Dynamics 365
Dataverse API
beta

Dynamics 365 Finance & Supply Chain Management via Dataverse OData endpoints. Inventory journals, transfer orders, and count journals.

▸InventoryJournals (movement)
▸TransferOrders (bin moves)
▸CountingJournals (stocktake)
via: Dataverse REST API (OAuth2)
Sage 200 / Pastel
Sage 200 API / SDK
beta

Common in mid-market SA manufacturing. Sync GRNs and stock adjustments via Sage 200 Business Object API or direct SQL bridge.

▸GRN posting via Business Objects
▸Inventory adjustment journals
▸Stock count variance push
via: Sage 200 .NET SDK / ODBC bridge
QuickBooks / Xero
OAuth2 REST API
stub

Light accounting sync — purchase bills from GRNs, journal entries for stock adjustments. No native inventory in QBO/Xero, so GL-only sync.

▸Purchase bill on goods receipt
▸Journal entry for stock movement
▸GL account mapping configurable
via: QBO API v3 / Xero API v2
Custom Webhook
Any API
bring your own

Any ERP with an API endpoint. Configure the payload shape in ERPNext's webhook settings — no code required for standard JSON/REST targets.

▸DocType event → webhook (e.g. on_submit)
▸Custom field mapping in ERPNext UI
▸Retry queue with delivery log
via: Frappe Webhooks (built-in)
How the sync works

ERPNext acts as the operational layer — fast, scan-optimised, always on. The target ERP is the financial system of record. The sync is one-way by default: ERPNext pushes confirmed transactions downstream.

Each integration runs as a Cloudflare Worker at the edge — auth, rate limiting, payload transformation, and retry logic — before the request ever hits the target ERP.

// Sync flow per scan event
scan → ERPNext
DocType event fires
on_submit hook called
→ webhook queued
// CF Worker (edge)
authenticate + rate-limit
transform payload
POST to target ERP
response logged
// on failure
retry queue (3x)
alert: erp-sync@client
Scan ERP as a Service

Managed. Hosted. Wired up.

2nth manages the ERPNext instance. You manage the scanning operation. No servers, no Frappe admins, no integration plumbing.

Starter
~R900/mo
Single warehouse. One ERP target. Up to 3 scanner devices.
  • ▸Dedicated ERPNext on GCP africa-south1
  • ▸Scanning vertical pre-configured
  • ▸1 outbound ERP integration
  • ▸Scale to zero when idle
  • −Multiple warehouse sites
  • −AI anomaly detection
Get Started
Most Popular
Operations
~R2,200/mo
Multi-site. Multiple ERP targets. Unlimited scanners.
  • ▸Everything in Starter
  • ▸Up to 5 warehouse sites
  • ▸Up to 2 ERP integrations
  • ▸AI anomaly detection agent
  • ▸Auto-reorder suggestion agent
  • ▸HA Cloud SQL + daily backups
Request Demo
Enterprise
Custom
Multiple client sites. White-label. SLA.
  • ▸Everything in Operations
  • ▸Unlimited ERP integrations
  • ▸Custom Frappe app for client workflow
  • ▸White-label under client domain
  • ▸Instance on GCP / AWS / Azure (your choice)
  • ▸Uptime SLA + Slack/phone support
Talk to Us

What 2nth manages vs what you do

2nth manages
  • ▸ ERPNext instance on GCP / AWS / Azure
  • ▸ Cloudflare DNS, WAF, Zero Trust access
  • ▸ Database backups and recovery
  • ▸ ERPNext upgrades and security patches
  • ▸ ERP integration connector maintenance
  • ▸ MCP server + AI agent layer
  • ▸ Webhook retry + delivery monitoring
You manage
  • ▸ Scanner devices and connectivity
  • ▸ Item master data (barcodes, UOM)
  • ▸ Warehouse locations and bin setup
  • ▸ Supplier and customer data
  • ▸ Approval workflows (stocktakes, GRNs)
  • ▸ Your primary ERP (Sage, SAP, etc.)
  • ▸ Day-to-day scanning operations
Get Your Scan Instance

Tell us your setup.
We'll wire it up.

Share your target ERP, warehouse structure, and scanner type. We'll spin up a pre-configured scan vertical instance and connect the outbound integration.

What happens next
1
We review your ERP target
We check integration status for your ERP (Sage X3, SAP B1, etc.) and confirm the connector is production-ready.
2
Instance spins up
ERPNext scan vertical deployed on GCP africa-south1 (or AWS/Azure on request). Warehouses, bins, and item master seeded.
3
Integration wired
Outbound connector configured, tested with a sample GRN scan, and handed over with MCP endpoint + API credentials.
4
You scan. It syncs.
Point your scanners at the ERPNext endpoint. Every confirmed transaction flows to your primary ERP automatically.
Typical timeline
Day 0 Request received
Day 1 Instance live + scoping call
Day 3–5 Integration connected + tested
Day 7 Live in production
Get Your Scan Instance

Ready to wire up your
scanning operation?

Tell us your target ERP and warehouse setup. We'll spin up a pre-configured scan vertical instance and get you scanning in under a week.

<1 week
From request to live
GCP/AWS
Your cloud choice
R0
When idle