FINANCE
Rebuild and clawback recognition when a contract cancels early
On an early Stripe cancellation, zero out future recognition, compute any over-recognized clawback against the remaining deferred balance.
How it runs
The automated pipeline, trigger to output.
- TriggerStripe subscription canceled (customer.subscription.deleted)Stripe
- LogicBranch: cancellation before natural term end?
- ActionLoad active schedule + recognized-to-date from SnowflakeSnowflake
- LogicCompute remaining deferred balance and clawback amount
- ActionZero future rows + write adjusting entry to SnowflakeSnowflake
- OutputSend proposed journal entry to finance Slack for approvalSlack
What it does
Handles the messy case of mid-term cancellation. When a subscription is canceled before its term ends, the flow stops all future revenue recognition, calculates the remaining deferred balance to be released or refunded, and determines whether revenue was over-recognized and needs a clawback. It produces the adjusting journal entry and the corrected schedule.
When to use it
Use it when early cancellations and refunds create recognition cleanup that's easy to miss. Especially valuable when refund terms differ from straight-line recognition, leaving a balance that must be explicitly cleared.
How it works
- 1Stripe emits a `customer.subscription.deleted` (or cancellation) event.
- 2A branch checks whether cancellation occurred before the natural term end.
- 3The flow pulls the active schedule and recognized-to-date from Snowflake.
- 4It computes the remaining deferred balance and any over-recognized clawback amount.
- 5Future-period recognition rows are zeroed and the adjusting entry is written to Snowflake.
- 6The proposed journal entry and balance release are sent to finance via Slack for posting approval.
Set it up
What you configure once, before turning it on.
- 1Connect StripeCustomers, subscriptions, payments.
- 2Connect SnowflakeWarehouses, queries, shares.
- 3Connect SlackChannels, DMs, threads, mentions.
- 4Set each agent's modelWe leave models unset so you pick the tier — fast + cheap, or top-quality.
- 5Tune it to your dataEdit the prompts, filters, and field mappings so it matches how your team works.
- 6Test, then turn it onRun once against a sample, confirm the output, then enable the trigger.
More Finance workflows
Detect Annual-to-Monthly Downgrade Refunds Owed
Catches subscriptions switched from an annual term to monthly partway through the prepaid year, computes the unused prepaid balance owed back.
Detect Mid-Cycle Plan Change Mischarges and Queue Credit Memos
Listens for Stripe subscription plan changes, recomputes the correct prorated amount.
Expense Submission Webhook Instant Triage and Routing
Receives each expense submission via webhook the instant it's filed, classifies it as in-policy, needs-review, or hard-violation, and routes it to auto-approval.
Accrual Chase Board in Monday with Per-Owner Tasks
On a schedule it reads open uncoded expenses from Snowflake and creates or updates a Monday item per department owner.
Real-Time Uncoded Expense Nudge on New Spend Event
When a new expense lands without a GL code, a webhook fires and the workflow immediately Slack-nudges the spending owner to code it on the spot.
Monthly Vendor Spend Anomaly Brief for Finance Leads
Once a month, an agent analyzes the full expense ledger for vendor and category spend anomalies, drafts a narrative brief with the top outliers and likely causes.
Run it inside a business
This workflow drops into a full company template. Import the org, and this is one of the playbooks its agents run.

Run this workflow in your colony.
14-day trial. No DevOps. No Sales call. Provisioned in under a minute.
