INVOICE PROCESSING

Detect Duplicate and Zombie Recurring Charges Across Vendors

Runs weekly to scan all recurring charges in Postgres for duplicate subscriptions and zombie charges for unused services.

CategoryInvoice Processing
Enginesim
Difficultyintermediate
Triggerschedule
Steps5
Setup~15 min

How it runs

The automated pipeline, trigger to output.

  • TriggerWeekly schedule
  • ActionLoad all active recurring chargesPostgreSQLPostgres
  • LogicDetect duplicates and zombie subscriptions
  • ActionWrite ranked cleanup candidates to tracking tablePostgreSQLPostgres
  • OutputPost cleanup report to finance Teams channelMicrosoft Teams

What it does

Finds wasted recurring spend that anomaly thresholds miss. Weekly it scans every active recurring charge to surface two patterns: duplicates (the same vendor or tool billed on more than one subscription) and zombies (charges that keep recurring for services with no recent internal usage signal). It compiles both into one cleanup report.

When to use it

Use it during cost-control pushes or quarterly budget reviews when you suspect you are paying for overlapping tools or subscriptions nobody uses anymore. It turns scattered line items into a prioritized list of cancellation candidates with estimated annual savings.

How it works

  1. 1A weekly schedule triggers the run.
  2. 2A Postgres query loads all active recurring charges with vendor, amount, and last-activity metadata.
  3. 3A logic step groups charges to detect same-vendor duplicates and flags charges whose service shows no usage signal as zombies.
  4. 4The flow ranks all candidates by estimated annual savings.
  5. 5It writes the candidate list to a Postgres cleanup table for tracking.
  6. 6A Microsoft Teams message posts the consolidated report with duplicates, zombies, and total potential savings to the finance channel.

Set it up

What you configure once, before turning it on.

  1. 1
    Connect PostgresAny Postgres URL — query, write, migrate.
  2. 2
    Connect Microsoft TeamsChannels, chats, files.
  3. 3
    Set each agent's modelWe leave models unset so you pick the tier — fast + cheap, or top-quality.
  4. 4
    Tune it to your dataEdit the prompts, filters, and field mappings so it matches how your team works.
  5. 5
    Test, then turn it onRun once against a sample, confirm the output, then enable the trigger.

Run this workflow in your colony.

14-day trial. No DevOps. No Sales call. Provisioned in under a minute.