Skip to main content

Knowledge Base

Frequently asked questions about ERPStack

Everything you need to know about building custom B2B software with ERPStack — from costs and timelines to compliance and post-delivery support.

Quick answer: what this ERPStack FAQ covers

This page answers the most common questions about custom ERP development with ERPStack: pricing and cost, delivery timelines, the technology stack and architecture, compliance capabilities for SOC 2 Type II, HIPAA and GDPR, data migration from SAP or Oracle NetSuite, and post-delivery support and code ownership.

ERPStack in numbers

Project cost range
$25,000 – $250,000 (₹20 lakhs – ₹2 crores), fixed price per milestone
Typical delivery
6 – 24 weeks end to end, roughly 2 – 6 months
Discovery & Architecture
1 – 2 weeks, ending in a costed build plan
Sprint cadence
2-week sprints; first testable vertical slice around week 3
Free architecture audit
30 minutes, with the written brief delivered within 48 hours
Milestone One refund window
14 days from delivery, in full, under Terms of Service Section 6b
Payment terms
Net-30, counted from your acceptance of a milestone in staging
CI coverage gate
80% minimum test coverage before a branch can reach staging
Per-seat licence avoided
$37–$165 per user per month — ERPStack’s own observed list-price range across comparable mid-market SaaS suites, not a rate published by any single vendor
Encryption
AES-256 at rest, TLS 1.3 in transit
Core stack versions
Next.js 16, React 19, TypeScript 5.9, Tailwind CSS 4, Drizzle ORM on PostgreSQL
NetSuite migration
8 – 12 weeks, including a 4-week parallel run before cutover
Code and IP ownership
100% yours, licensed from the first commit and titled on final invoice
Certifications held by ERPStack
0. Systems are engineered to SOC 2 Type II, HIPAA, GDPR, PCI DSS and ISO 27001 control baselines; the audit is the client’s, under the client’s scope.

Go deeper on a theme: pricing and the 3-year TCO table, the custom ERP service, ERPStack vs Oracle NetSuite, the company fact sheet, the technical glossary and reference builds.

Pricing & Timeline

Category Quick Answer / TL;DR

What is the pricing model and timeline for custom ERP development?

Custom ERP projects cost between $25,000 and $250,000 using a fixed-cost milestone model with zero licensing fees. Complete implementation takes 6 to 24 weeks with real working software delivered in bi-weekly sprints.

How much does custom ERP development cost?

ERPStack custom ERP projects run from ₹20 lakhs to ₹2 crores ($25,000–$250,000 USD). Pricing is fixed-cost and milestone-based rather than hourly: a standard B2B operations build lands at $25,000–$60,000, a compliance or multi-tenant platform at $60,000–$150,000, and enterprise-scale infrastructure at $150,000–$250,000 and above. You pay per delivered and accepted milestone, so there is no open-ended cost and no per-seat licence stacked on top of the build.

How does ERPStack pricing work?

ERPStack uses a fixed-cost, milestone-based pricing model. Each project is divided into measurable milestones that are scoped and priced before any code is written, and payment is released only after you accept that milestone in a staging environment. Terms are Net-30 from acceptance. There is no hourly billing, no recurring licence fee and no per-seat charge, and you hold the source code, database schema and infrastructure definitions throughout.

What happens if the project scope changes?

Scope changes at ERPStack are handled through formal change orders, each carrying its own fixed price and written acceptance criteria agreed before the work starts. A change that adds 2 weeks of engineering is quoted as 2 weeks and invoiced on the same Net-30 terms as every other milestone, never folded quietly into a line you already approved. Nothing is billed retroactively, so budget control stays with you for the whole engagement, and a change that is not worth its price is simply declined.

How long does ERP implementation typically take with ERPStack?

ERPStack delivers working B2B software in 6 to 24 weeks. The engagement runs in four phases: Discovery and Architecture (1–2 weeks), foundation and infrastructure (about 1 week), agile delivery in 2-week sprints with real features testable from roughly week 3, and finally code handover and training. Comparable SAP S/4HANA or Oracle NetSuite implementations typically take 12 to 18 months, most of it before anyone sees working software.

Are there any hidden fees or post-delivery licensing costs?

No. ERPStack charges a fixed, one-time fee per development milestone and nothing after handover. Once a system is delivered you hold 100% of the source code, the PostgreSQL database and the Terraform infrastructure definitions, with zero recurring seat licences, no maintenance minimum and no mandatory support subscription. The only ongoing cost is the cloud bill in your own AWS or Microsoft Azure account, which you control and can optimise directly.

Do you charge for developer sandbox environments?

No. ERPStack configures unlimited local and staging sandbox environments for your developers using Docker, at no extra cost, because the entire stack runs from a repository you control. The 3 environments most teams need — local, staging and production — cost only the cloud resources they consume, so a team of 8 developers can run 8 isolated copies. Proprietary ERP vendors commonly meter environments and charge separately for each additional sandbox; a system you own has no such meter.

What payment terms do you support for custom projects?

ERPStack supports Net-30 terms tied strictly to milestone completion. An invoice is raised only after your technical team has reviewed, tested and signed off a working milestone in staging — never on a calendar date and never in advance. Milestone One, the Discovery and Architecture phase, is additionally refundable in full on written request within 14 days of delivery, under Section 6b of the ERPStack Terms of Service.

Technical Architecture

Category Quick Answer / TL;DR

What technology stack and architecture patterns does ERPStack use?

We build headless ERP systems using Next.js, TypeScript, PostgreSQL, and Drizzle ORM. We integrate legacy systems via the Strangler Fig pattern for a zero-downtime, progressive migration path.

What technology stack does ERPStack use?

The ERPStack core stack is Next.js 16 and React 19 with TypeScript 5.9 for full-stack development, PostgreSQL with Drizzle ORM for type-safe data access, Tailwind CSS 4 with shadcn/ui for the interface layer, and AWS or Microsoft Azure for infrastructure. Docker and Terraform define every environment as code, Vitest 4 and Playwright cover testing, and Sentry handles error monitoring. Strict TypeScript is enforced at compile time and CI requires 80%+ test coverage before a branch reaches staging.

Do you support legacy system integration?

Yes. ERPStack uses the Strangler Fig migration pattern to move off monolithic legacy systems — SAP, Oracle, legacy .NET or Java — without downtime. An API gateway routes each request either to the legacy system or to the new Next.js 16 services, so business logic is extracted 1 module at a time and can be reverted per module. Nothing is switched off until its replacement has run in parallel and reconciled.

Can you deploy to our existing cloud infrastructure?

Yes. ERPStack deploys into your own cloud accounts — AWS, Microsoft Azure or GCP — using Terraform, so every database, network, bucket and IAM role is version-controlled alongside the application code and 1 definition builds both staging and production without drift. You keep the billing relationship and the root credentials for the entire engagement. If we ever part ways, your systems keep running exactly as they are, with no dependency on ERPStack for hosting, keys or renewals.

How do you ensure data security?

ERPStack builds security into every layer: AES-256 encryption at rest and TLS 1.3 in transit, Semgrep SAST analysis on every pull request, OWASP ZAP dynamic tests in CI, Arcjet rate-limiting and bot protection at the edge, immutable audit trails with tamper-evident hashes, and RBAC backed by short-lived JWT sessions. Every one of those controls lives in the repository you own, so any of them can be re-verified independently.

What is headless ERP?

A headless ERP separates backend business logic and the database from the user interface, exposing everything through APIs. ERPStack builds every system headless-first, so 1 PostgreSQL-backed core can serve a web app, a mobile client, partner APIs and IoT devices simultaneously, and the React 19 front end can be redesigned without touching business rules. The practical benefit is that a redesign stops being a migration project.

What database technologies do you recommend for large datasets?

ERPStack recommends PostgreSQL with Drizzle ORM for transactional (OLTP) workloads and ClickHouse for high-volume analytics or log storage (OLAP). Separating the two stops analytical scans from contending with order entry and keeps interactive queries in the low milliseconds as row counts pass 100 million. Where the data is mostly time-series, TimescaleDB on the same PostgreSQL instance avoids operating a second database engine at all.

How do you handle real-time sync with third-party APIs?

ERPStack implements integrations as event-driven background workers on BullMQ or serverless queues rather than inline calls inside a request. Every integration point gets automatic retries with exponential backoff, rate-limit handling and a dead-letter queue, so a 30-minute outage at the far end delays a message instead of losing it. Webhook receivers are idempotent, so a duplicate delivery cannot post the same transaction into your database twice.

Compliance

Category Quick Answer / TL;DR

Does ERPStack support regulatory compliance standards like SOC2, HIPAA, and GDPR?

Yes. We build systems with built-in controls engineered to meet SOC 2 Type II, HIPAA (including FHIR v4 APIs), and GDPR requirements, featuring data encryption at rest, secure VPC networks, and immutable audit logs.

Do you build SOC 2 Type II compliant systems?

Yes, with one distinction worth stating plainly: ERPStack holds no certification of its own and issues no attestation. It engineers your system so that your SOC 2 Type II audit — your auditor, your scope — has real evidence to examine: continuous system auditing, immutable log retention, RBAC, and automated evidence collection wired into Vanta or Drata. Those controls sit in the codebase from the first commit rather than being retrofitted before an audit window.

Can you build HIPAA-compliant healthcare software?

Yes. ERPStack engineers healthcare systems against HIPAA and HITRUST CSF control baselines: FHIR v4 API integration, AES-256 encryption of ePHI at rest, short-lived JWT sessions for shared clinical workstations, trigger-based immutable audit trails designed to satisfy FDA 21 CFR Part 11, and databases with no public IP inside an isolated VPC. The assessment itself belongs to the covered entity and its chosen assessor; ERPStack supplies the architecture and the evidence trail.

How do you handle GDPR and data residency requirements?

ERPStack pins deployments to named cloud regions — eu-west-2 for UK data, eu-central-1 for the EU — so records never leave the jurisdiction you chose. Each tenant gets schema-level isolation in PostgreSQL, subject access requests are served by an automated exporter, and erasure runs as a programmatic purge across database rows, S3 objects and cache layers, returning a deletion certificate. GDPR duties remain yours as controller; the system is built so you can discharge them.

What security checks are performed on the codebase?

Every pull request in an ERPStack repository passes the same gate before it can merge: Semgrep SAST static analysis, a dependency vulnerability audit, type checking under strict TypeScript, the full Vitest and Playwright suites at 80%+ coverage, and an OWASP ZAP dynamic scan against the preview deployment. The pipeline is defined in GitHub Actions inside the repository you own, so you can read exactly what runs and change it after handover.

Do you support Single Sign-On (SSO) and Multi-Factor Authentication?

Yes. ERPStack integrates SSO over SAML, OIDC and OAuth against providers such as Okta and Microsoft Entra ID, so access follows the identity directory you already run and deprovisioning takes effect the moment someone leaves. Multi-factor authentication is supported through TOTP apps, SMS or FIDO2 hardware security keys, and can be required per role: 1 administrator account can be forced through MFA while a read-only portal user is not.

How are data access audits recorded for compliance purposes?

ERPStack writes tamper-evident, append-only audit tables directly in PostgreSQL. Every read, write or change to sensitive data inserts an immutable row recording the actor, the timestamp, the source IP address and the exact fields that changed, chained with a cryptographic hash so a silent edit becomes detectable. Because those tables live in your own database, evidence for a SOC 2 or HIPAA assessment is a query rather than a vendor support ticket.

Do you sign Business Associate Agreements (BAA) for HIPAA compliance?

Yes. Where ERPStack will handle Protected Health Information, a Business Associate Agreement is signed before any access is granted, as HIPAA requires of a business associate. ERPStack also routinely executes a mutual non-disclosure agreement before inspecting system telemetry, so your workflows, database exports and credentials are covered from day 1 of discovery rather than only from the moment a Statement of Work is countersigned.

Migration

Category Quick Answer / TL;DR

How does ERPStack migrate data from legacy platforms like SAP or NetSuite?

Migrations typically take 8 to 12 weeks. We extract data via APIs or Change Data Capture (CDC), map it to PostgreSQL schemas, and run parallel runs to validate all records before cutover.

How long does a migration from NetSuite to ERPStack take?

A NetSuite migration onto an ERPStack system typically takes 8 to 12 weeks. Records are extracted through the NetSuite APIs, mapped into normalised PostgreSQL schemas, and then both systems run in parallel for around 4 weeks while reports are reconciled line by line. Cutover happens only once the parallel run matches, which is precisely what makes the switch itself uneventful rather than a weekend of firefighting.

How do you migrate data from legacy SAP systems?

ERPStack migrates off SAP with the Strangler Fig pattern rather than a big-bang replacement. An API gateway sends selected modules — inventory first, typically — to new Next.js services while everything else keeps running on SAP, and Debezium change-data-capture keeps the two stores continuously replicated. SAP is then decommissioned 1 module at a time, so at no point does the business depend on a single irreversible 48-hour cutover date.

Will our operations experience downtime during cutover?

No. ERPStack runs delta synchronisation in parallel right up to the switch, then moves DNS during an agreed off-peak window, usually a weekend. Because the new system has already been serving reconciled data alongside the old one, going live is a routing change rather than a restore, and planned downtime is 0 minutes. A documented rollback path stays available throughout the window, so the decision remains reversible until you confirm it.

How do you map custom legacy database fields to the new system?

During Discovery, ERPStack runs schema analysis across the legacy database to inventory every custom field — including the ones nobody documented — and produces a written field-by-field mapping for your team to approve. Automated migration scripts then validate, transform and load that data into clean relational PostgreSQL tables, reporting 100% of rejected rows rather than silently dropping them. The mapping document ships with the system as part of handover.

What happens to historical transaction history during migration?

Historical transactions are preserved rather than discarded. ERPStack archives them either in cold object storage such as AWS S3 or in a dedicated read-only schema on the same PostgreSQL instance, indexed for reporting. Audit and year-on-year reports still run across 100% of the history while live production tables stay small enough to keep day-to-day queries fast. You keep the archive because you own the database holding it.

How do you train our internal staff on the new ERP interface?

ERPStack delivers role-specific written documentation into your own knowledge base, a library of short screen-recorded walkthroughs, and 3 live interactive workshops for administrators and department leads before go-live. Training material is written against the system you actually received rather than a generic product manual, and because it lives in your repository your team can keep editing it as the system changes after handover.

Can we migrate only one module first instead of the entire system?

Yes, and ERPStack recommends it. A modular migration replaces a low-risk area first — CRM contact management or billing, usually — which proves the integration, the deployment pipeline and the training approach on something recoverable. Core ledger accounting and anything with a statutory reporting deadline moves last, once the pattern is established. Each module is its own fixed-price milestone, so you can stop after any 1 of them.

Comparison vs Competitors

Category Quick Answer / TL;DR

Why choose custom ERP over SAP, NetSuite, or Dynamics 365?

Custom ERP provides 100% intellectual property ownership, zero recurring seat licenses, and fits your exact business workflows without sandbox or code limitations, saving mid-market teams thousands annually.

Is custom ERP better than SAP or NetSuite?

It depends on fit, and ERPStack will say so directly. If your processes match SAP S/4HANA or Oracle NetSuite closely enough to run near-standard, the packaged suite is the cheaper answer. Custom wins where workflows are genuinely specific, where per-seat licensing — observed at $37–$165 per user per month across comparable mid-market suites — compounds with headcount, or where owning the intellectual property matters. A custom build also reaches production in 6–24 weeks rather than 12–18 months.

What are the benefits of custom software vs off-the-shelf ERP?

Custom software maps to the process you already run, where off-the-shelf asks you to change the process to match the product. With ERPStack you hold 100% of the source code and IP, so there is no vendor lock-in and no per-seat licence at the $37–$165 per user per month observed across comparable mid-market suites. Controls for SOC 2 Type II, HIPAA or GDPR are designed into the schema from the first commit instead of bought later as an add-on module.

How does ERPStack compare to low-code tools like Zoho Creator?

Zoho Creator gets you moving quickly, but the result is tied to Deluge scripting and a proprietary datastore, so the exit cost grows with the system. ERPStack delivers a standard React 19 and Next.js 16 codebase on PostgreSQL that any competent developer can read, with no record caps, no per-seat fee and no runtime execution charge. The trade-off is real: low-code is faster for a simple form, owned code is cheaper once logic gets complicated.

Can ERPStack replace Microsoft Dynamics 365?

Yes. Microsoft Dynamics 365 ties data to the Azure Dataverse and adds PowerApps licences and storage overage charges as usage grows. ERPStack replaces it with an open-standard React 19 and Next.js 16 system on PostgreSQL that you own, removing the recurring licence line entirely. Migration follows the Strangler Fig pattern, so Dynamics keeps serving whatever has not moved yet and the switch stays incremental rather than a single cutover date.

How does ERPStack compare to Odoo Enterprise?

Odoo Enterprise is a capable suite, but advanced apps sit behind a subscription and real customisation means committing to its Python framework and data model. ERPStack builds a headless, API-first system in TypeScript 5.9 that you own outright, giving you direct control of the schema, the interface and the hosting. Odoo is the better answer when its standard modules already fit; ERPStack is the better answer when the workarounds keep growing.

Why is per-seat licensing expensive for business systems?

Per-seat pricing charges for access rather than for value, so cost scales with everyone who touches the system — including partners, field staff and portal users who each use it for minutes a week. At the $37–$165 per user per month ERPStack observes across comparable mid-market suites, a 150-seat deployment costs $66,600 to $297,000 a year before a single customisation. An ERPStack system you own carries unlimited users, so headcount growth moves your cloud bill, not your licence.

Process

Category Quick Answer / TL;DR

What is the development methodology and source code ownership model at ERPStack?

We operate in bi-weekly agile sprints with an initial 1–2 week Discovery phase. Clients retain 100% source code ownership from day one, with optional maintenance and SLA retainers available post-launch.

How long does it take to build a custom ERP?

A typical ERPStack project runs 6 to 24 weeks, driven mainly by module count, integration count and compliance scope. Discovery and Architecture takes 1–2 weeks and ends in a costed build plan; delivery then proceeds in 2-week sprints, each producing a vertical slice you can use in staging, so real features are testable from about week 3. Payments follow those milestones, which keeps the schedule and the invoice aligned.

Do you offer a free architecture audit?

Yes. ERPStack offers a free 30-minute architecture audit with a senior engineer, with no commitment and no obligation to proceed. In the call we map your current stack, integrations and compliance obligations against the architecture we would recommend, and within 48 hours you receive a written brief covering the risks we found and the order we would fix them in. The brief is yours to keep and to hand to any vendor.

What is the difference between ERP and CRM?

An ERP system runs the operational core — inventory, manufacturing, finance, procurement and HR — as one consistent record across the organisation. A CRM runs the customer-facing edge: pipeline, quotes, support tickets and marketing. The two overlap at the order, which is where badly integrated systems usually break. ERPStack builds either or both as custom systems over 1 PostgreSQL database, so the order never has to be reconciled between 2 vendors.

Who owns the source code after delivery?

You do. From the first commit ERPStack grants a perpetual, irrevocable, royalty-free licence covering the source code, database schema and infrastructure-as-code, and full legal title assigns automatically once the final milestone invoice clears. That pairing is what makes "100% ownership from day one" enforceable rather than a slogan, and you hold administrative repository access throughout. Optional source code escrow is available where procurement requires it.

What ongoing support do you provide?

After handover ERPStack offers optional maintenance agreements covering security patching, dependency upgrades, performance monitoring, feature sprints and 24/7 incident response under an SLA. They are genuinely optional: the system runs on standard React, Next.js and PostgreSQL with no ERPStack-hosted component anywhere in it, so you can move support in-house or to another firm at any renewal without touching the architecture or re-platforming.

Do we need a dedicated engineering team to maintain ERPStack?

No. An ERPStack system is ordinary TypeScript 5.9 on React 19, Next.js 16, Node.js 20 and PostgreSQL, deployed through Terraform — the stack a general web team already knows, not a proprietary language with a small hiring pool. 1 competent developer can keep a departmental system healthy. If you would rather not staff it, an optional SLA retainer covers deployments and patching and can be started or stopped independently of the build.

What happens if we want to add a feature after the project is complete?

You own the repository, so you have 3 options and ERPStack is only 1 of them: hire any React or Next.js developer, task your internal team, or commission another fixed-price milestone from us. No partner certification, marketplace approval or runtime licence stands between you and a change. Most clients mix the two — routine changes internally, larger architectural work with the team that designed the schema.

Still have questions?

Schedule a free 30-minute architecture audit with a senior ERPStack engineer.

Book Free Architecture Audit →

Explore Custom ERP Solutions by Location, Industry, and Alternatives

Global Architectures