INVOICE PROCESSING

Release Stripe Vendor Payouts Only After Three-Way Match Passes

On a schedule, scans pending vendor invoices, confirms each one matches its PO and receipt in Snowflake.

CategoryInvoice Processing
Enginesim
Difficultyadvanced
Triggerschedule
Steps6
Setup~25 min

How it runs

The automated pipeline, trigger to output.

  • TriggerScheduled payout run
  • ActionRead pending invoices with PO and receiptSnowflakeSnowflake
  • LogicValidate match within tolerance
  • ActionRelease Stripe payout for clean matchesStripeStripe
  • ActionMark invoice paid with payout IDSnowflakeSnowflake
  • OutputPost held-invoice summary to SlackSlack

What it does

This workflow gates outbound vendor payments behind a passing three-way match. Nothing pays out unless the invoice, the purchase order, and the proof of receipt all agree, which closes the door on duplicate and over-billed payments.

When to use it

Use this when you pay vendors through Stripe and want payment release to be a controlled, evidence-backed step rather than someone clicking pay from an invoice alone. It is the financial-control counterpart to a matching engine.

How it works

  1. 1A scheduled run fires (for example, every weekday morning).
  2. 2All invoices in `pending_match` status are read from Snowflake along with their PO and receipt records.
  3. 3For each invoice a match check validates totals, line counts, and quantities against tolerance.
  4. 4Passing invoices trigger a Stripe payout to the vendor's connected account.
  5. 5The invoice status flips to `paid` in Snowflake with the Stripe payout ID recorded.
  6. 6Failing invoices stay on hold and a summary of held items posts to Slack for AP review.

Set it up

What you configure once, before turning it on.

  1. 1
    Connect SnowflakeWarehouses, queries, shares.
  2. 2
    Connect StripeCustomers, subscriptions, payments.
  3. 3
    Connect SlackChannels, DMs, threads, mentions.
  4. 4
    Set each agent's modelWe leave models unset so you pick the tier — fast + cheap, or top-quality.
  5. 5
    Tune it to your dataEdit the prompts, filters, and field mappings so it matches how your team works.
  6. 6
    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.