Custom ERP and integrations
You have an ERP. Why is part of the business still run in spreadsheets?
Orders are in one program, stock in another. Production is tracked separately, and reports need input from several people. We develop custom ERP systems and integrations that match the way your company works.
The problem
Where the program ends, the manual work begins.
An off-the-shelf system covers the core operations. What is specific to your business stays outside it: an unusual order, a production stage, different terms for a customer or a report that is missing.
The team finds a way. It adds a spreadsheet, sends a message, enters the information again. As the workload grows, it gets harder to tell what is current and what is coming.
Do you recognise any of these situations?
Stock in the store and in the warehouse does not match.
One order is entered into several programs.
Production is planned outside the ERP system.
For an up-to-date report you have to collect information from the departments.
An important part of the work depends on a spreadsheet maintained by one person.
An ERP that fits your work. Connections between your systems.
First we look at the processes and tools you use. We establish what works well, what is missing and where the exchange of information breaks. Then we define the right solution: an integration with the current system, additional functionality or a custom ERP.
Custom ERP
Orders, production, materials, stock, deliveries and invoicing in a system built around your processes. We develop the modules and rules the specific project needs.
Integrations with an existing ERP
We connect the ERP with an online store, CRM, warehouse software, carriers and other tools. We define which data is passed on, when it is updated and which system is its source.
Management reports
We prepare the views you need for orders, stock, production and other key figures. We agree where the data comes from and how it is calculated.
Checks and traceability
We define access rights, checks on entry and the handling of discrepancies. Important actions can be traced within the agreed scope.
Flows
What we sync
For each flow, we define the direction, the frequency and which system is the single source of truth for the data. The table shows the most common setup. The exact one is agreed after the audit.
Stock levels
Prices and promotions
Products and attributes
Orders
Customers
Invoices
Delivery statuses
Cash on delivery
“Real time” means the other system sends an event at the moment of the change. When it only supports periodic exports, the exchange runs on a schedule, and we say so upfront.
Systems
Which systems, and how
We connect ERP systems (including custom-built software), CRM, warehouse and fulfillment systems, online stores, accounting software, couriers and payment providers. We work through each system's documented interfaces. The choice depends on what the other side supports, not on our preferences.
01ERP
- ERP systems
- Custom software
02Sales
- Shopify
- CRM
03Logistics
- Warehouse and fulfillment
- Couriers
04Finance
- Accounting software
- Payment providers
REST and GraphQL API
the main method when the system offers it.
Webhooks
a notification at the moment of the event: a new order, a changed status, a returned product.
File exchange
CSV or XML over SFTP on a schedule, when the system has no API.
Middleware service
a separate layer that translates the fields and holds the queue and the log. That way one system can be replaced without rewriting the connection to the other.
The Bulgarian specifics. Cash on delivery changes the flow. The order is completed on delivery, and the money arrives from the courier later, so the integration carries these events too, not just order creation. Shopify does not issue Bulgarian invoices by default. This is handled through the accounting software or the shipping app. Since the euro was adopted, prices and documents are in EUR. If the ERP system keeps historical records in leva (BGN), the data map defines which field is read in which currency.
Reliability
An integration you can monitor
The project defines duplicate prevention, outage handling, retries, logs and error alerts. It also defines who resolves conflicting records.
Idempotency
Every operation carries a unique key. A notification received twice does not create a second order or a second invoice.
Queue and retries
If the ERP system does not respond, the operation waits in a queue and is resent once the connection is restored. No data is lost during an outage.
A log of every operation
What was sent, when, from which system and with what response.
Error alerts
The person responsible learns about the problem from an alert, not from a customer.
Manual confirmation on conflict
When the two systems disagree and the rule gives no clear answer, a person decides.
Periodic reconciliation
Stock levels and orders are compared across systems on a schedule to catch any missed event.
An integration does not fix bad data at the source. If the stock level in the warehouse is wrong, the store will show it just as wrong. That is why the data audit is the first step.
Process
Understand the processes first. Then build the system.
We look at the real work
Who takes the order, who processes it and what information is needed at each step?
We define the scope
We describe the functions, integrations, limits and how the finished work will be verified.
We develop in stages
We show working parts and settle the details with the people who will use them.
We prepare the rollout
We test real cases and agree data transfer, training and support.
An example from our work · Demonstration project
ERP for manufacturing and distribution
A demonstration project with modules for production, stock, orders and financial operations. It shows how related activities can be organised in one system.
Explore the project →Security
Security and access
Least privilege
Every access has the minimum permissions needed for the specific flow. A connection that reads orders cannot change prices.
The keys are in your name
Tokens and keys are issued to your accounts and stored encrypted, outside the code.
Encrypted connection
Data travels only over an encrypted connection.
Only the personal data needed
Only the personal data needed to fulfill the order is transferred, in line with GDPR.
Your data stays with you
The data stays in your systems. The log keeps records of the operations and is cleared after an agreed period.
Experience
What we connect

Moneta ERP and Shopify for Stivo
We are preparing the connection between the Moneta warehouse system and Stivo's online store. We wrote the technical specification for the ERP vendor: stock levels, prices and new items come from Moneta, orders and invoice details go into it within 5 minutes, and the waybill number is returned to the order so the email to the customer can go out. In-store POS sales also reduce stock and are included in the reconciliation. Descriptions and photos stay in Shopify, because they were written for search engines. Before launch, we organized the catalog: type and brand for all 329 products and 29 automated categories that the ERP can maintain through a single field. Next comes a review of the item numbers, because that is how the two systems match records. This case covers preparation and specification; implementation is a separate stage.
Explore the Stivo project →
EU delivery from a warehouse in Slovakia
Zones by country using the warehouse rate plus VAT, and separate markets, including ones with a different currency.
View the project →Questions
Questions before we start
Do we have to replace our current ERP?
Not necessarily. First we check whether the need can be met with an integration or additional functionality.
Can you connect our system?
That depends on the available APIs, documentation, licences and access. We review them before defining the scope.
What does development cost?
The price depends on the processes, modules, integrations and the data work required. We propose a specific scope and budget once the task is clear.
Is this only for Shopify?
No. The project depends on your company's systems and available interfaces. Shopify is one platform we work with.
How long does an ERP integration take?
It depends on the number of systems and flows, on whether the other system has an API, and on the state of the data. A one-way stock connection is a different project from a two-way connection for orders, invoices and customers. After the audit, you get a written plan with the scope and timeline for each flow.
What if our ERP system has no API?
Many systems can export and import files on a schedule, for example CSV or XML over SFTP. Another option is read-only access to the database, or a middleware service that translates the data. If the system only allows manual export, we say so upfront, because that kind of connection cannot be reliably automated.
Can updates happen in real time?
When the systems support suitable events and interfaces. Otherwise, we agree a schedule.
What happens if the ERP system or the store goes down?
Operations that did not go through stay in a queue and are resent once the connection is restored. Every operation has a unique key, so resending does not create a duplicate order or invoice. The person responsible gets an alert, and the periodic reconciliation catches any events that were missed.
Who owns the integration and the code?
We recommend that the apps and access keys be registered to your accounts, not ours. That way, access to your data does not depend on us. Rights to the code and documentation, and how they are handed over, are agreed in writing before the start.
Does the integration work with cash on delivery and couriers?
Yes. We work with stores where a cash-on-delivery provider shows live courier rates in its own window, and we have connected Shopify to a fulfillment warehouse that pulls orders automatically. The scope also covers the events after the order: waybill, delivery status and the amount received from the courier.
Do we need Shopify Plus for an ERP integration?
Not necessarily. The Admin API and webhooks are available on all Shopify plans. Plus offers higher API rate limits, built-in B2B functionality and more options for checkout customization. Whether you need them depends on your operational volume and on whether the integration has to change the checkout.
Where does your current system fall short?
Tell us what you use, what you do outside the program and which data you transfer by hand. We will discuss whether you need an integration, an additional function or a custom ERP.