The problem
RepairDesk provides business phone lines alongside its software. Cancelling the subscription didn't remove the line; someone had to remember to. Across 650+ accounts with a line on file, there was no reliable link between the two, so lines could keep costing money long after the customer left.
What I built
The removal itself stays manual: it involves the phone system and the carrier, and a wrong removal would cut off a live customer. The automation makes sure the work is never forgotten.
How it evolved
- Look up the carrier firstThe plan was to check the carrier account live. Mapping accounts to carrier records reliably wasn't possible yet, so I parked it.
- Filter by plan nameOnly plans with phone features would create tickets. The product catalog had too many variants for name matching to be safe.
- Review every cancellationI removed the filter. A ticket the team closes in seconds is cheaper than a line that runs for months.
- Fix required fieldsThe help desk rejected tickets without a contact and a correctly formatted due date.
- Keep context across stepsAn API step replaced the data the next steps needed. Passing context explicitly fixed it, and the current version has run cleanly since.
Outcome
A recurring cost that nobody owned now has an owner, a queue and a due date.
What I'd do next
Escalate overdue tickets automatically, then add the carrier mapping so tickets show exactly which line to remove.