At Tines, Salesforce and NetSuite form our core finance and billing stack. But anyone using these tools will be familiar with the issues this set-up presents — it requires manual, time-consuming work to connect data across the two platforms.
Over the years, my team evaluated a bunch of solutions to this problem, including third-party tools and NetSuite’s own native offering. Quotes averaged at around $60,000 annually, with one vendor also proposing an implementation fee of around $60,000 on top of the annual sum.
We also had to factor in the ongoing cost of procuring one of these tools. Tines is growing fast, and we expected our ARR growth to push us into higher pricing tiers with these vendors, many of whom charge based on total deal value.
So we decided to build the tool ourselves with Tines 3B, our AI-native environment for building apps, agents, and automations, which, crucially, offers IT the ability to run and monitor that work securely. At the time, we didn't know exactly what it would cost us. We just knew the savings would be significant. In the end, it cost less than $1,000 in AI tokens to build and test, and virtually nothing in terms of AI tokens to run.
The cost savings are significant, for sure. But functionality matters even more to our team. The other solutions we evaluated simply couldn't do what we needed them to.
Our solution needed to handle revenue recognition under the accounting standard IFRS 15, a requirement most off-the-shelf products don't fully support. Because we built this app ourselves, we have full control to add new products or make updates whenever we need them — we're not reliant on anyone else's roadmap.
Building an integration between Salesforce and NetSuite was the first thing I thought about when our IT and security team rolled out Tines 3B. Built in a couple of hours and launched after a few rounds of testing and improvements, this robust revenue, billing, and compliance app now touches every single one of our company’s deals.
In my four years at Tines, I’ve built a bunch of workflows in our original product Tines Stories, so I'm fairly confident in my ability to solve problems with automation. Even so, the impact of this app has really surprised me.
Called 3Billing, the app is already:
Saving our team ∼$60K a year, with those savings increasing as our ARR grows
Helping us scale the team's output without adding additional headcount
Improving compliance (including IFRS 15) and audit-readiness
Peter's billing solution gives us control we wouldn't get from an off-the-shelf tool. Our order-to-cash process is now more efficient, auditable, and scalable — at a fraction of the cost of the alternatives we considered.
Niall Cowman, VP, Finance, Tines
I built the app to meet our exact requirements, something third-party solutions couldn't do. And when I need to make changes, I just push them live — no waiting on a vendor.
Peter Coleman, Director of Finance, Tines
I used to spend a lot of time manually creating sales orders and invoices. Now that this work is automated, I have more time to focus on the parts of my job that matter.
Mirela Halilovic, Revenue Specialist
The problem: manually bridging Salesforce and NetSuite, deal by deal
Historically, when an opportunity closed, we needed to manually input the information in NetSuite: create a customer, create a partner, create a sales order, and add all of the line items individually. We also needed to review every Closed Won deal from a revenue, billing, and compliance perspective.
NetSuite is a key part of our team's tech stack, but its limitations have forced us to find manual workarounds. That work has quickly added up for my team.
For example, a customer with a three-year deal and monthly billing — that’s 36 invoices we need to create manually, which takes at least 30 minutes. For years, we treated this as unavoidable muckwork, manual, repetitive, and, honestly, a little soul destroying. There's no benefit to humans performing these tasks, but for years, our entire team was doing it.
What once took up to 30 minutes per invoice is now spent on higher-value work that actually drives our team's goals forward, instead of forcing them to input the same data, deal after deal.
Current solutions in the market that solve this problem regularly charge five or six figures. These products often charge more as your revenue grows based on deal value, deal volume or number of seats.
Before Tines 3B, we had begrudgingly accepted variable SaaS pricing as an unavoidable reality.
While the POCs we ran with these vendors brought valuable capabilities to the table, we would still need additional resources to cover all our technical requirements. Even the solutions that came closest to our requirements could only solve the common cases. And these tools would only solve around 80% of edge cases, even after heavy implementation, leaving teams to handle the rest manually.
So, we had two options: keep grinding through manual work, or pay a premium for a solution that solved, at most, 80% of the problem and left us to handle the rest ourselves..
Tines 3B offered a much-needed alternative: build it ourselves, for a fraction of the cost, knowing that security and governance were taken care of by the platform.
The solution: a billing app integrating Salesforce and NetSuite
We started building this app in Tines Stories, long before Tines 3B was launched. The first iteration was built by our CEO, Eoin Hinchy. He was the only one with the relevant permissions, and he spent hours upon hours working on it. Needless to say, this was not the best use of the CEO’s time and — no offense Hinchy! — but because he isn’t hugely familiar with our process, the result wasn't a patch on what I've since built with Tines 3B.
When Tines 3B launched internally, I decided to start again and rebuild the app in Tines 3B. For a couple of weeks I jumped in and out of the project, building, iterating, and testing it. We started by pointing it at a sandbox environment for NetSuite instead of the live version until we were more comfortable connecting to our systems. Before going live, we stress-tested it against real data, running all of July's deals through the sandbox to make sure it held up.
Today, every deal is processed through the app from beginning to end, straight from Salesforce to NetSuite and ultimately to the customer. And I simply couldn’t have built it before Tines 3B.
Tines 3B makes the technical barrier to entry so low that building something like this becomes fast and genuinely appealing. It’s like our Product Manager Rosie Ellison says, how technical you are isn’t important. What’s important is how well you know your process.
The impact: cost savings, less manual work, tighter compliance
Cost savings and avoidance
There are some costs incurred with building an app like this with Tines 3B, but they're minimal compared to the cost of a third-party tool or NetSuite’s native option.
Here’s how it breaks down:
Build and test cost - building the 3Billing app incurred one-off AI token costs of less than $1,000
Run cost - because the workflow is deterministic, not AI-based, there are no run-time AI token costs
Maintenance costs - the cost of monitoring this workflow (the essential governance layer that allows IT and security to let us build with Tines 3B in the first place) is negligible
Future costs - if we add more features, we might incur another $100 here and there in AI token costs
In short, the 3Billing app cost less than $1,000 to build and will cost us almost nothing to run and maintain.
Crucially, unlike the other tools we explored, the cost of the app won’t change whether we process $100 or $1,000,000 in revenue.
This is the most powerful piece for me. A lot of providers charge based on the number of deals, the total value of deals or the number of seats. With 3Billing, this isn’t something we need to worry about.
Reducing manual work through 3Billing and other builds is allowing us to scale the finance team’s output without adding additional headcount.
Reclaimed time and reduced operational burden
We've reduced the time spent on this part of our billing process by about 75%. That time is now spent reviewing instead of inputting data, a more appropriate use of our team’s resources.
We're also saving more than one full-time employee's salary by not having to do this work manually. With 3B in place, I'm confident our current team can carry us through another stage of growth without adding headcount.
Improved controls and compliance
We haven't just made our process faster, we've made it more robust and controls-based, and reduced the risk of human error along the way.
Previously, our revenue operations team spent their time manually processing data, then correcting their own work.
Now, because the data arrives already in the format we need, that time is spent reviewing instead of processing, reducing the chance of mistakes creeping in, rather than catching them after the fact.
We've built in verifications at every step, so you can't proceed until you've verified any reconciling items. Every human change is also tracked in 3Billing’s audit log.
3Billing runs its own background checks — like validating standing Salesforce data — to catch discrepancies early. This includes edge cases unique to how we run our business, not just the standard issues, so we're only manually touching the truly unusual scenarios. And because we built it ourselves, when a new edge case comes up, we just update the app to handle it — there's no waiting on a vendor's roadmap.
This is especially useful during quarter-end, when CRM data tends to get messier and deal volume spikes. Where a lot of tools leave teams doing manual checks during these busier periods, 3Billing handles it automatically, no matter how many deals come through.
We also built the app to recognize revenue under the accounting standard IFRS 15, which is really powerful for us. It's a complex requirement, but getting it right is key to staying compliant and accurately reporting revenue. Very few vendors we evaluated offered this capability, and the one that did quoted us ~$120,000 (~$60,000 per year, plus a one-off implementation fee of ~$60,000) for a solution that may not have even worked for our use case.
Flexibility and scalability
As things change, 3Billing can change with us, because we’re building it for our use case, not relying on a third party’s roadmap.
Because we built the logic ourselves, edge cases aren't blockers. We just update the app and keep moving, instead of filing a ticket with a vendor and waiting.
I was recently asked what I’d do if I could have any billing tool on the market for free. Hands down, I’d still choose 3Billing.
If someone reading this wants to build something similar, my entry in the Tines 3B example gallery is a great place to start. I've built the core logic, the flow of data, the review process, and the audit logging using Salesforce and NetSuite — but the same concept applies if you're running other CRM or ERP platforms, which can easily be swapped in. It's a jumping-off point, rather than a one-size-fits-all solution.
What’s next?
3Billing is just one of several 3B builds my team is working on. We recently migrated a long-standing service procurement workflow to 3B.
We're also developing our team's approach to building with AI — we don't want to automate for the sake of it. That means staying deliberate about avoiding app sprawl and focusing on the use cases that deliver real business value.
Final thoughts
3Billing has shown us there's a valuable alternative to always reaching for a third-party solution first.
This is one of the most exciting parts about Tines 3B for me. You don't need a bigger budget, a flashy third-party tool, or more people in order to solve a really gnarly problem. You just need to understand your process and what needs to change.
