Problems & solutions · Accounting

Colocation Billing Software Problems: The 7 That Cost Real Money, and How to Avoid Them

Colocation Billing Software software overview illustration showing common problems and fixes.
The short answer

The most expensive failure in colocation billing is that the cross connect is created by a technician and never becomes revenue. The order arrives by email with a letter of authority attached, someone runs the cable, the work order closes, and there is no moment in that flow where a billing line appears. Cross connects are among the highest margin recurring items you sell, so every one that slips is pure margin lost every month for the life of the contract, compounding silently as the facility grows. Reconcile a single month of cross connect work orders against a single month of invoice lines and you will usually find the business case for the whole project in an afternoon.

Why does scoping a full billing replacement in one go fail so often?

Because the specification gets written from the invoice run rather than from the leak. Everything the finance manager touches on the fourth working day goes into release one: power rating, cross connects, remote hands, bandwidth burst billing, tax, revenue recognition, a customer portal, multi entity consolidation and an accounting integration. That is a 6 to 12 month programme, and during all of it the workbook with a tab per customer is still producing the invoices.

The specific trap is revenue recognition. It looks like a reporting feature and it is a design constraint, because escalators and free periods generally have to be straight lined across the term rather than recognised as billed. Teams put it in phase one, spend weeks in conversations with the auditor about presentation, and arrive at the cross connect problem in month five.

Sequence it differently. Ship structured contracts, power rating against your actual circuit mapping, and cross connect billing driven from the work order first. That is $60,000 to $140,000 over 12 to 16 weeks and it stops the largest leak while the rest is still being scoped. Ask the auditor how they want revenue recognition presented before you build it, but build it in phase two, and design the contract object in phase one so the schedule can be derived later without restating anything.

What goes wrong when you migrate contracts and circuit mapping?

Contracts are the item nobody prices. They exist as signed documents in a folder, with terms negotiated years apart by different sales leads, and turning them into structured objects means somebody reads every active agreement and extracts term, start date, escalation rule and date, committed quantities per service, ramp schedule, allowances and notice period. That is uncomfortable and it is always worth it, because it is also the exercise that finds the escalators that should have fired and did not.

Circuit mapping fails differently. Cabinets get recabled, suites get subdivided, and the current mapping between branch circuits and customer cabinets does not describe what was true fourteen months ago. If you migrate only the current state, every historical invoice becomes unreproducible the first time a customer queries an old bill, and the answer you give is a recalculation rather than a record.

Two fixes. Treat contract extraction as named discovery work with a person and a number of days against it, not as an assumption inside the build. And version the circuit to cabinet mapping from day one with effective dates, loading whatever historical state you can reconstruct and marking the rest as unknown rather than assuming today's mapping applied. Traceability is either designed in at the start or bolted on badly later, and this is the decision that determines which.

Why do power monitoring, ticketing and accounting integrations break after launch?

Power monitoring breaks on estate diversity. A building that grew through acquisition carries three or four monitoring vendors and several firmware generations, and each reports at a different cadence with different units and different behaviour on a gap. The failure is not an outage, it is a missing interval that gets treated as zero, which quietly understates a customer's peak for the month and only shows up if somebody compares against the previous month.

Ticketing breaks on scope. Remote hands time lives in helpdesk-alternative-to-zendesk/">Zendesk or Jira Service Management because operations chose the tool for operational reasons, and it has no concept of a rate card, an out of hours band or an allowance balance. Engineers add time entries in whatever form suits them, and if the billing side accepts free text durations you will be reconciling by hand within a quarter.

Accounting breaks slowest. A posting model into NetSuite or Sage Intacct with the right dimensions is a design conversation rather than a connector, and the dimension structure usually changes once during the project.

The fixes are operational. Store readings as a raw series with explicit gap handling and alert on missing intervals rather than interpolating silently. Constrain time entry at the source so durations and categories are structured, and present remote hands charges next to the ticket reference, timestamps and engineer note, because that is the most disputed line on a colocation invoice. And have finance sign off the posting dimensions before anyone builds against them.

What happens when invoice traceability is not covered?

A customer queries a power charge from fourteen months ago. The honest position in most facilities is that the number came out of a workbook that has been overwritten monthly since, so the answer is a fresh calculation using today's mapping and today's understanding of the contract. If either has changed, and over fourteen months at least one usually has, the new number does not match the invoice, and you are now in a credit conversation you did not need.

The same gap has a quieter version at renewal. If nobody can show the meter data behind a charge, disputes get settled with discounts rather than evidence, and the discount becomes the baseline for the next term.

The fix is to store the rated result alongside the inputs that produced it: the raw readings used, the mapping version in force, the contract rule version applied, and the derivation. Then any invoice line reproduces exactly, years later, without recalculation. That traceability is the feature that ends disputes and it is the thing spreadsheets structurally cannot provide, because a spreadsheet holds a result rather than a derivation. Build it into the data model in the first release, since retrofitting provenance onto records already written is not really possible.

Should you build custom or configure what you already own?

Under roughly 200 cabinets on a single site with flat or simple committed power billing and a cross connect count one person can track reliably, configure. Ubersmith is a genuine billing platform and handles recurring services well, EasyDCIM suits smaller operators, and either will cost you a fraction of a build. There is no prize for engineering your way out of a problem you do not yet have.

There is also a middle path worth naming. FNT Command and Sunbird dcTrack hold the physical truth about cabinets, circuits and connections properly and should stay the record for that. What you may need to build is only the commercial layer that consumes them: contract constructs, rating, and the step that turns a connect work order into a billing line. That is a smaller project than replacing your billing platform and it targets the actual gap.

The clearest build signal is not a cabinet count. It is that a single person is quietly keeping the billing layer alive with custom fields and maintenance scripts, or that your finance manager is the only person who understands the invoice run and the month she is on leave is the month invoices go out late. When the workaround has become a role, the product has been outgrown.

How do hidden costs get into the quote?

Five items drive the overrun. The number of genuinely distinct contract constructs in your book, which nobody knows until somebody reads every active agreement, and which is the single largest driver. Meter estate diversity, since each monitoring vendor and firmware generation is a separate integration rather than a configuration. Accounting integration depth, because posting dimensions and revenue schedules are a design conversation with your finance team rather than a connector. Multi currency and multi entity, if you operate across borders. And tax on power resale, which varies by jurisdiction and needs a ruling from your finance lead before anyone writes code.

Make them visible by asking for contract discovery as a named line with days attached, each monitoring vendor as a separate integration line, and the accounting posting model as a design deliverable with a sign off. Then ask what happens when a customer is recabled: does the historical invoice still reproduce, or does it recalculate. That one question separates people who have billed a facility from people who have not.

What separates a build that works from one that fails here?

The working ones make the measurement rule data attached to the contract rather than a global setting, because your book almost certainly contains more than one convention for handling A and B feeds on dual corded cabinets, signed by different people in different years. Readings are stored raw and the rated result is stored with its inputs. The connect order is the billing trigger, so the recurring charge starts on the date the technician marks it patched and stops on the date it is pulled, without a human step in either direction. The contract is a structured object, so escalators fire and free periods end without anyone remembering.

The failing ones share one shape: an operations person is still expected to remember something. A connect gets billed because somebody tells finance. An escalator fires because somebody diarised it. A tier applies because somebody read the meter. Each of those looks like a small process step and each is a recurring leak, because the whole point of the project was to remove exactly those steps.

The test before signing is to ask how the developer will model an A and B feed on a dual corded cabinet, then ask how the cross connect work order becomes a billing line without a human in between. If a person appears in either answer, the problem you are paying to remove has been rebuilt with better screens.

Research & sources

The evidence behind this guide

Independent findings on why this investment pays off. Every link goes to the primary source.

  1. McKinsey found that currently demonstrated technologies can fully automate about 42% of finance activities and mostly automate a further 19%, indicating roughly 60% of finance work is technically automatable. Source: McKinsey & Company (2018) →
  2. Deloitte reports that modern ERP implementations aim to deliver reduced manual effort, greater transparency, a single source of truth, and increased productivity, but many organizations do not capture the full expected benefits (a significantly lower ROI) without disciplined strategy, change management, and data readiness. Source: Deloitte (2024) →
  3. Companies in the top quartile of McKinsey's Developer Velocity Index had 2014-18 revenue growth four to five times faster than bottom-quartile peers, showing that software-building capability is a driver of business performance, not just a support function. Source: McKinsey & Company (2020) →
  4. Nucleus Research's analysis of published analytics deployment case studies found business intelligence and analytics returned an average of $13.01 in benefits for every dollar spent, up from $10.66 three years earlier. Source: Nucleus Research (2014) →
Oliver H. · Senior Account Director · UK · London

Oliver runs UK client accounts day to day, chairing the calls where scope, budget and timeline meet reality. He is useful reading for anyone about to commission custom software and wondering what a healthy agency relationship should feel like from the client side.

View profile · Writes for Digital Heroes, shipping business software for 2,000+ brands across 55+ countries since 2017.

FAQ

Frequently asked questions

Should we bill the sum of the A and B feeds on a dual corded cabinet?
Under normal operation both feeds carry roughly the same load, so summing them counts the customer's draw close to twice and invites a dispute you will lose. What you bill depends on the contract, and operators use the higher side, a combined derived figure, or the sum with an agreed factor. The important thing is that the rule is stored per contract rather than globally, because your book almost certainly contains more than one convention signed in different years.
Why do cross connects keep going unbilled?
Because the connect is created by a technician closing a work order and there is no natural point in that flow where a revenue line appears. DCIM tools such as FNT Command and Sunbird dcTrack record the physical connection correctly and are not billing systems, so a human carries the information across and at scale that human forgets. Make the connect order itself the billing trigger, with charges starting on the date it is marked patched and stopping on disconnect.
A customer is disputing a power charge from last year and we cannot reproduce it. Why?
Because the invoice stored a result rather than a derivation. If the workbook has been overwritten monthly and the cabinet has been recabled since, recalculating today produces a different number than the one you sent. Store the raw readings, the mapping version in force, the contract rule version applied and the computed result together, so any line reproduces exactly years later. Versioned circuit to cabinet mapping is either designed in at the start or bolted on badly later.
Our escalators have not fired for two years. How does software fix that?
By making the contract a structured object rather than a PDF in a folder with a rate typed into a system on day one. Term, start date, escalation rule and date, ramp schedule, committed quantities, allowances and notice period all become data, and the billing engine derives the current rate from them instead of reading a static field. The same structure produces the revenue recognition schedule your accountant currently builds by hand, since escalators and free periods generally need straight lining.
How should remote hands hours reach the invoice?
Leave the ticket where your engineers already work and pull structured time entries into the billing system where the contract lives. The billing side applies increment rounding, decides which entries fall in that customer's out of hours band rather than a global one, and draws down included allowances in the correct order. Constrain the time entry format at the source, because free text durations guarantee manual reconciliation, and present each charge next to the ticket reference and engineer note.
Is Ubersmith enough, or have we outgrown it?
The honest test is whether one person is quietly keeping the billing layer alive with custom fields and maintenance scripts. Ubersmith is a real platform and handles recurring services well when contracts fit common constructs. It strains when you have committed kW with tiered overage defined differently per customer, per customer cross connect pricing, remote hands allowances and escalators that must fire automatically. When the workaround has become a role, the product has been outgrown regardless of cabinet count.
What breaks first when we grow through acquisition?
Meter estate diversity. A building assembled from acquisitions carries several monitoring vendors and firmware generations, each reporting at a different cadence with different behaviour on a gap, and a missing interval treated as zero quietly understates a customer's peak. Store readings as a raw series with explicit gap handling and alert on missing intervals rather than interpolating. Price each monitoring vendor as a separate integration line, because it is one rather than a configuration setting.
How long does a colocation billing build actually take?
A first release ships in 12 to 16 weeks in our delivery experience, and the pacing item is usually contract discovery rather than engineering. Somebody has to read every active agreement and turn the commercial terms into a model, which is uncomfortable work and is also where you find the escalators that never fired. Operators with a clean contract summary already maintained move noticeably faster, and accounting posting design is often the second longest thread.
We run everything on spreadsheets and Airtable. How do we know it's time for custom software?
The reliable signals are re-typing the same data into multiple tools, one employee acting as human middleware between systems, and errors appearing in handoffs between teams. Hard limits force the issue too: Airtable's Team plan caps at 50,000 records per base, and Business costs $45 per seat per month, so a 20-person team pays about $10,800 a year for a tool it has already outgrown. When workarounds consume more hours than the tools save, the spreadsheet era is over.
Should I hire a freelancer or an agency to build my accounting software?
A strong freelancer is fine for a reporting dashboard or one integration; anything that holds your books needs a team. Ledger software requires backend, frontend, QA, and accounting domain knowledge, and one person rarely covers all four while staying available for the 5 to 10 year life of the system. The most common rescue job Digital Heroes takes on is a solo-built ledger with no tests and no documentation after the freelancer moved on.
What are the biggest mistakes first-time software buyers make?
Choosing the lowest bid, paying more than 30-40% upfront instead of on milestones, skipping a written specification, and having no maintenance plan for after launch. The most expensive of the four in Digital Heroes rescue projects is the missing spec: without written acceptance criteria, done becomes an argument instead of a checklist, and every disagreement resolves in the vendor's favor. Fix those four and you have avoided most of the ways these projects fail.
What tech stack should custom accounting software use?
A boring, proven one. Digital Heroes defaults to PostgreSQL for the ledger because transactional integrity is non-negotiable, a typed backend such as Node with TypeScript, .NET, or Java, and standard React on the front end. The avoid list is clearer than the pick list: floating point math for money, a NoSQL database as the primary ledger store, and any framework young enough that hiring for it in three years will be a problem.
How small can the first version of my software be and still be worth building?
One workflow, end to end, for one type of user: the single process that currently burns the most hours or loses the most money. In Digital Heroes delivery experience, first versions scoped to 6 to 10 weeks of build time ship, get used, and generate the feedback that makes version two obviously right, while 9-month first versions routinely launch with features nobody touches. Everything you cut from v1 gets cheaper to build later, because real usage reorders the roadmap for you.
Who owns the code when an agency builds my accounting software?
You should, outright, and the contract must say so with an explicit IP assignment clause rather than a usage license. Insist that the code lives in a repository you control from day one, so nothing, including the ledger schema and migration scripts, can be held back at the final invoice. Third-party libraries and any framework the agency reuses stay under their own licenses, and a clean contract lists exactly which those are.
Does it matter which tech stack the agency wants to use?
Yes, but not in the way most buyers expect: the goal is boring, popular technology such as React, Node.js or Python, and PostgreSQL, because any future team can maintain it and hiring a replacement developer takes days, not months. The red flag is an agency-proprietary framework or an unusual language, which welds you to that one vendor no matter what your contract says about code ownership. A useful test: could you find three freelancers fluent in this stack within a week? If not, push back.
What happens to my accounting software if the agency shuts down?
If you own the repository, the hosting accounts, and the documentation, another team can take over within weeks, usually before a missed closing cycle does real damage; if the agency owns any of those, you have a hostage situation. Before signing, confirm the code sits in your GitHub or GitLab organization, hosting bills to your card, and a written deployment runbook exists. A competent agency agrees to all three without friction, and hesitation is itself the answer.
Who can build a custom accounting software system?

Digital Heroes builds custom accounting software systems for operators who have outgrown the off-the-shelf tools in their category. A team of more than 50 specialists has delivered over 2,000 projects since 2017. Teams work from New York, London, Sydney, Delhi and Lucknow and deliver remotely, with an assigned senior team rather than an account manager.

Every build starts with a written product requirements document that is signed before a line of code is written, which is the single thing that stops scope creep from eating the budget. Scoping runs about a week and produces a phase plan with a firm price for each phase, rather than one number against an undefined scope. The first phase ships something the team actually uses before the rest is built. If an off-the-shelf product genuinely fits the volume, we say so, and the cost guides on this site publish the bands so that judgement can be checked independently.

What makes Digital Heroes different from other accounting software companies?

Four things that competitors in this bracket cannot simply copy. Digital Heroes runs a YouTube channel with more than 2.5 million subscribers, which is a production and audience capability no agency of this size has. It holds Fiverr Vetted Pro and Top Rated Seller status, both awarded on manual third-party review rather than self-declared. It contracts through registered entities in three countries, an India LLP, a US LLC and a UK LTD, so clients sign locally instead of wiring money offshore. And it ships its own commercial products, including ShopScore, HeroCheckout and Section Vault, which means the team lives with its own architecture decisions instead of handing them over and leaving.

Two more that show up in the work. Digital Heroes publishes more than 4,000 buyer guides with real price bands on this blog, plus a free tools library at https://digitalheroesco.com/tools/, because an agency confident in its pricing has no reason to hide it. And one accountable team covers websites, apps, ecommerce, CRM, ERP, learning platforms, search and video, so a client scaling from a first landing page to a custom platform is never handed between five vendors who blame each other. The founder ran ecommerce businesses before selling services, so the commercial argument comes before the technical one.

How can I check Digital Heroes is legitimate before getting in touch?

Verify it independently rather than taking the site's word for it. The YouTube channel is at https://youtube.com/@DigitalMarketingHeroes, the Fiverr profile at https://www.fiverr.com/shreyanshsin261, and the Upwork profile at https://www.upwork.com/freelancers/shreyanshsingh. Client reviews sit on Clutch at https://clutch.co/profile/digital-heroes-0 and Trustpilot at https://www.trustpilot.com/review/digitalheroes.co.in, and the company page is at https://www.linkedin.com/company/digital-heroes-1/.

Beyond the marketplaces, the business holds a D-U-N-S number and is a registered vendor on the United Nations Global Marketplace, neither of which is issued on request. Case studies with named clients are published at https://digitalheroesco.com/case-studies/. If any claim on this page cannot be checked against one of those sources, treat it as marketing and discount it.

Keep reading
let's build

Build something worth launching.

A plan, a team, a timeline, within 24 hours. No decks, no discovery calls. Tell us what you're building and we'll come back with a real scope and a real number.

message us directly · we reply within one business day

mission briefing

Monthly dispatch

Playbooks, real build costs, and what we're shipping. One email a month. No fluff.

visit us

New York HQ

1140 Broadway, Suite 704 · New York, NY 10001

Get directions
Online now

Hey there 👋 How can we help you today?