Appearance
1. The deal: scope, team and price
Back to the case study · Next: 2. Setting up the partner's company
In March 2026, Klipvallei Wine Estates asked Nimbus ERP Consulting to replace Sage Pastel and a separate online shop with one system. Meera Nair, Nimbus's project manager, ran two discovery calls with the estate's managing director, Pieter van der Merwe, and its finance manager, Thandi Nkosi. She then sized the work before writing a price.
1.1 What the client asked for
| Area | What Klipvallei needs |
|---|---|
| Finance | South African VAT at 15%, the VAT201 return, bank statements from FNB and Standard Bank, debtors and creditors, management accounts in rand |
| Cellar | Blends and bottling by vintage and lot, packaging materials (bottles, corks, capsules, labels, cartons), cost per bottle |
| Bonded warehouse | Wine and brandy held duty-unpaid, excise worked out when stock leaves bond |
| Tasting room | A till with card machines (Yoco), tasting fees, wine club prices, and selling through power cuts |
| Online shop | The estate's brand, a wine club with member prices and allocations, age verification, PayFast payments, courier delivery with tracking |
| Apps | Android and iOS apps for the shop, with push messages for releases and club allocations |
| Exports | Orders and invoices exchanged with the UK importer |
| Messages | Order and delivery messages by WhatsApp and SMS |
1.2 Sizing the work in hours
Meera broke the work into steps and asked each consultant to estimate their own part. The steps later became the project's work plan (chapter 3), so the estimate and the plan are the same list.
| Person | Role | Hours | Where the hours go |
|---|---|---|---|
| Meera Nair | Project manager | 200 | Kick-off, governance through the whole project, cut-over |
| Arjun Menon | Finance and tax consultant | 150 | Finance workshops, ERP set-up, South African VAT, data migration, training |
| Kavya Pillai | Supply chain and production consultant | 170 | Cellar workshops, production, excise and the bonded warehouse, training |
| Rahul Varma | Retail, POS and online shop consultant | 140 | The shop, age verification and the wine club, testing, training |
| Sanjay Kurian | Technical and integration consultant | 220 | Environments, all five integrations, migration scripts, security testing |
| Ananya Thomas | UI/UX consultant | 140 | Brand kit, shop and app designs, the apps themselves, testing |
| Total | 1,020 |
1.3 What the team costs, and what it is billed at
Every person has two rates. The cost rate is what one hour costs Nimbus: salary, employer contributions, laptop, licences and a share of the office, divided by the hours a person can realistically bill in a year. The bill rate is what Nimbus charges for an hour of extra work outside the fixed price.
| Person | Cost per hour | Bill per hour | Planned hours | Planned cost (INR) |
|---|---|---|---|---|
| Meera Nair | 1,100 | 2,500 | 200 | 2,20,000 |
| Arjun Menon | 850 | 2,000 | 150 | 1,27,500 |
| Kavya Pillai | 850 | 2,000 | 170 | 1,44,500 |
| Rahul Varma | 800 | 1,800 | 140 | 1,12,000 |
| Sanjay Kurian | 950 | 2,200 | 220 | 2,09,000 |
| Ananya Thomas | 750 | 1,800 | 140 | 1,05,000 |
| Labour | 1,020 | 9,18,000 |
1.4 What has to be bought
Some of the work is cheaper or safer bought in than done in-house. Meera added each item to the estimate with the step it serves:
| Supplier | What | Step | Budget (INR) |
|---|---|---|---|
| Appforge Mobile Studio LLP | iOS build, TestFlight and App Store release support (subcontract) | Android and iOS apps | 75,000 |
| Signalbird Messaging Pvt Ltd | SMS and WhatsApp credits for testing | WhatsApp and SMS notifications | 12,000 |
| Kestrel Security Labs Pvt Ltd | Security test of the shop, apps and APIs, with a retest | System and security testing | 45,000 |
| Skyline Travel Services Pvt Ltd | Flights Kochi to Cape Town for two consultants, 14 nights' stay for go-live | Cut-over | 1,60,000 |
| Purchases | 2,92,000 |
Total planned cost: 9,18,000 + 2,92,000 = INR 12,10,000.
1.5 From cost to price
A partner that adds one flat mark-up to cost undercharges for the work that carries the most risk. Nimbus priced each part on its own terms. It took each part's direct cost (the hours and purchases on that part's steps) and then covered the shared cost (project management for five months, and the go-live trip) from the total.
| Part | Direct cost | Price | Contribution | Price as a multiple of direct cost |
|---|---|---|---|---|
| A. Standard implementation | 5,56,200 | 8,00,000 | 2,43,800 | 1.4 |
| B. Customization | 1,69,400 | 5,50,000 | 3,80,600 | 3.2 |
| C. Third-party integrations | 1,37,400 | 3,50,000 | 2,12,600 | 2.5 |
| Shared: project management (1,87,000) and go-live travel (1,60,000) | 3,47,000 | -3,47,000 | ||
| Contract | 12,10,000 | 17,00,000 | 4,90,000 | Planned margin 28.8% |
The standard part is priced close to what the market pays for an OSERP implementation. On its own it barely covers its share of project management. The margin is earned on customization and integrations, because that is where the risk sits:
- Customization is built once for one client and tested against rules Nimbus does not control: SARS excise and VAT, and Apple's review guidelines. It must also keep working after go-live.
- Integrations depend on each provider's API and test environment, and those can change in the middle of a build. One did (chapter 7).
Price customization separately, and higher
Customization is where implementations lose money. It is hard to estimate and easy to underestimate, it is tested against someone else's rules, and the client sees it as part of "the system". Listing it as its own part of the price, line by line, does three things. The client sees exactly what they are paying for beyond the standard product. Each item can be cut or deferred without reopening the whole price. And later change requests have a reference point.
1.6 Currency and tax
- The contract is in INR. Nimbus keeps its books in rupees, and a fixed rupee price leaves the exchange risk between the rand and the rupee with the client. The client agreed to this, and it was recorded as a decision in the project's RAID log (chapter 7).
- No GST on the invoices. Services to a client outside India, paid in foreign exchange, are an export of services. Nimbus files a Letter of Undertaking (LUT) each financial year and invoices without IGST. The company's print settings carry the line "Export of services under LUT, without payment of IGST".
- GST on Indian suppliers' bills is claimed back. Appforge, Signalbird and Kestrel charge 18% GST. Nimbus claims it as input credit. Because its output is zero-rated, unused credit can be refunded.
1.7 Payment terms
Nimbus asked for a fifth of the price on signing, then a payment at each point the client could see and sign:
| Instalment | Share | INR | When |
|---|---|---|---|
| Advance on signing | 20% | 3,40,000 | On signing |
| Blueprint signed off | 15% | 2,55,000 | The client approves the design |
| Build complete | 20% | 3,40,000 | ERP, shop, apps and integrations built |
| UAT signed off, apps live in the stores | 20% | 3,40,000 | The client's own testing passes |
| Go-live | 15% | 2,55,000 | The estate trades on OSERP |
| Project closure after hypercare | 10% | 1,70,000 | 30 days after go-live |
The client's money reaches Nimbus before Nimbus's costs do: the advance covers the first six weeks of the team's time.
What this chapter meant for the money
The price was built up from the plan, not guessed. Every hour and every purchase in the estimate became a budget line on a step of the work plan. From the first day, Nimbus could see each overrun against the step that caused it (chapter 5).