Services
Four capabilities, one kind of problem.
Everything we do is inside the software a business runs on: a process that still depends on people re-keying data, a tool that has to exist because nothing off the shelf does the job, or an ERP and the systems around it. Each engagement is a fixed scope and starts from a written assessment, described at the end of this page.
Business process automation and integration
Most of the cost in an operations team is in the gaps between systems: the export that is re-keyed into another tool, the check somebody does every morning, the message that has to be sent by hand. Automation is making those run on their own, reliably, with someone told when they do not.
We work with the interfaces businesses already have: ERP APIs, the Microsoft Graph API and SharePoint, S3 storage, email delivery services, telephony providers. Typical builds are a monitoring job that checks every site it covers each morning for a fresh backup and restores one weekly to prove the backup is usable, and a responder that sends callers service information after a missed call.
Verification is designed in, not added later. A job that runs silently is a job nobody trusts, so an automation we build reports what it did and what it could not do.
Typical engagements
- Integrating an ERP with Microsoft 365, storage, or another line-of-business system that currently exchanges data by export and re-key.
- Scheduled jobs that replace a manual daily or weekly check, with reports to the right people.
- Backup monitoring and restore verification across many sites.
- Telephony and messaging workflows, such as automated responses to missed calls.
- Replacing a fragile script or macro that moves data between two systems.
What you receive
- An integration or job that runs on a schedule and reports its own results.
- A dashboard or emailed report the team can read without a developer.
- Locking, logging and error handling so runs do not overlap or fail silently.
- Configuration documented so the next person can change it.
Custom internal software and legacy replacement
Some processes never fit a product. A scheduling board for contractors, a records tool for one department, an application the business bought years ago from a vendor who is now gone. The choice is usually between paying that vendor whatever they ask, or rebuilding the workflow on infrastructure the business already owns.
We rebuild on what is already there. When a business is being asked for a large sum to release code it assumed it owned, the alternative is usually to rebuild the workflow on infrastructure it already pays for: the Microsoft 365 tenant, the ERP, a server that is already running. A scheduling tool built on the Microsoft 365 data an office already uses, through the Graph API and SharePoint, means no second system to maintain and no new licence to buy.
Internal tools are built small, in Python and plain web interfaces, with the data model kept honest and the hosting kept simple. They are meant to be looked after by the business afterwards, not to become another orphaned system, so the handover is part of the build rather than an afterthought.
Typical engagements
- Replacing a vendor-built or legacy application that a security or infrastructure change has broken.
- A scheduling, records or tracking tool for one team, built on Microsoft 365 or a small web application.
- An internal dashboard over data that currently lives in several places.
- Recovering a business’s own data out of a system the vendor will not open.
What you receive
- An application the business owns outright, source included.
- Data recovered and migrated from the system being replaced.
- Hosting on infrastructure already paid for, wherever that is possible.
- A written handover: what it does, where it runs, how to change it.
ERP customisation and extension
An ERP out of the box models a generic business. Real ones have a material that appears in more bills of materials than anyone will edit by hand, an approval step the software does not know about, or a report the finance team rebuilds by hand every month. Customisation is closing that gap without breaking the upgrade path or the data underneath.
We build inside ERPNext itself: custom tools, bulk operations, validation rules and reports. Where a change touches records that production depends on, the tool creates new revisions rather than editing in place, tracks the result of every row, and leaves the old records where active work still needs them.
The starting point is usually a requirements document or a description of the manual process. We design the interface, the processing and the safeguards, and write the test procedure the tool is signed off against before it goes near live data.
Typical engagements
- A bulk operation the standard interface cannot do safely, such as replacing a material across dependent bills of materials.
- Workflow features: approvals, validations, status tracking built into the documents people already use.
- Reports and analysis that currently live in a spreadsheet next to the ERP.
- Fixing customisations that were left behind by a previous developer.
What you receive
- A feature built to the framework’s conventions, not around them.
- Row-level results and audit records for anything that changes data in bulk.
- A written test procedure covering the cases the tool has to get right, run before release.
- Written notes on what was built and where it lives.
ERP migration and implementation rescue
A migration is not a transfer of records. Items depend on units of measure, bills of materials depend on items, open orders depend on customers, suppliers and warehouses. Import order, mapping and validation decide whether the new system is usable on the first morning. We map the source data, write the transformers that turn it into what the destination expects, load it in dependency order, and check it against the source before anyone signs off.
Our delivered ERP work is on ERPNext, from cloud provisioning through to open-order import and go-live, including implementations inherited part-way through. The mapping, ordering and validation method carries to other destinations, and if a platform is outside what we can read, you hear that in the first reply.
Stalled implementations are the same work in a different order. We start by reading what has been loaded, what has been customised, and what was never finished, and we write that down before anything else is touched.
Typical engagements
- Legacy system to ERPNext migration, from data mapping through go-live.
- Taking over an inherited migration or implementation and completing it.
- Validating and correcting data that has already been imported.
- Open purchase order, sales order and manufacturing record migration ahead of cutover.
- Provisioning, configuring and looking after the hosting an ERP site runs on: cloud servers, backups, restore checks, upgrades.
What you receive
- Mapping and transformation rules, written down and reusable.
- Import tooling that can be re-run as source data changes before cutover.
- Validation against the source, with discrepancies listed rather than assumed away.
- A cutover plan and a go-live the operations team can work from on the first morning.
- Hosting set up and documented, with backups that are checked rather than assumed.
What we do not do
A short list, so you know quickly.
Some of this is work other firms do better; the rest would take attention from the engagements above. If your need is on this list, the first reply will say so and, where we can, point you to someone who does it well.
- Managed IT, helpdesk, network and server administration.
- Marketing websites.
- Staff augmentation or placing a developer in your team.
- Hourly work with the scope decided as it goes.
- Selecting and implementing a new ERP from nothing as the whole project.
- Anything that requires us on site.
The entry engagement
The Systems Assessment
Every engagement above starts here. The assessment is a fixed-scope investigation of one system, or of the process a new tool has to serve, ending in a written document that you own and can act on with or without us. It gives you a documented understanding of what you have and a practical plan you can use with any delivery partner. Reading a system properly takes a week or two of concentrated effort, so the price for the work is written after that, not before.
The document has the same shape in every engagement, which is what makes its scope fixed. It is written so that your own team, or another firm, could act on it without a handover.
- What the system does today
- Traced through the code, the jobs and the data, not assembled from what people remember it was built to do.
- What should change, ranked
- By consequence, not by ease of fixing. Named precisely: the job, the table, the interface.
- What it would take
- Options with the trade-offs stated, what has to be true before each part starts, and which parts you could do without us.
- What we would not touch
- The parts to leave alone and why, so the work stays as small as it can be.
- A fixed-scope quote, if there is work worth doing
- Written from what was found. Buying the assessment does not commit you to it.
Start here
Not sure which of these it is?
Most situations arrive as a symptom, not a category. Describe what is happening and the first reply will say which kind of work it is, or whether it is ours at all.