Stripe, NetSuite and Slack: Payment-to-Invoice Reconcile Template
Each morning Spojit matches the prior day's Stripe charges against your NetSuite invoices and posts any mismatches to a Slack finance channel for review.
What It Builds
This template uses a Schedule trigger to run once a day, pulls the previous day's Stripe charges and your open NetSuite invoices through Connector nodes, and compares amounts and references. Where a charge has no matching invoice (or the totals differ), a Connector node on Slack posts a summary to your finance channel. When everything reconciles cleanly, no message is sent, so the channel only lights up when a human needs to look.
The Prompt
Paste this into Miraxa and it builds the workflow, connecting the tools for you:
Build a workflow that runs every morning at 8am. List yesterday's Stripe charges and my open NetSuite invoices, match each charge to an invoice by amount and reference, and for any charge with no matching invoice or a mismatched total, post a message to the #finance Slack channel listing the charge amount, customer, and what didn't match. Send nothing if everything reconciles.
Connectors Used
- Schedule trigger - fires once a day on a 5-field cron plus your timezone.
- Stripe - lists the prior day's charges with
list-charges. - NetSuite - pulls open invoices with
list-invoices(orrun-suiteqlfor a tighter query). - Slack - posts mismatches with
send-message.
Customize It
Change 8am to your reporting time, swap #finance for your channel, and adjust the match rule (for example allow a small rounding tolerance, or match on customer plus amount instead of reference). You can also tell Miraxa to use Spojit's Send Email node instead of Slack if your finance team prefers a daily email digest.
Tips
- Use Direct mode on the Stripe and NetSuite nodes for the deterministic list calls, and reserve Agent mode only if you want the agent to reason over fuzzy reference matching. Direct mode costs no AI credits.
- Set the Schedule timezone to your finance team's region (for example
Australia/Sydney) so "yesterday" lines up with your accounting day. - Keep the Slack message to a short bullet list of unmatched charges so reviewers can scan it quickly.
Common Pitfalls
- Timezone drift: if the Schedule timezone and your Stripe account timezone differ, the day boundary can split charges across two runs. Pin both to the same zone.
- Partial payments and multi-charge invoices will look like mismatches under a strict one-to-one rule. Decide up front whether to sum charges per invoice before comparing.
- Large charge volumes may page. Make sure the Stripe and NetSuite list calls cover the full prior day rather than only the first page of results.
Related
- Want the step-by-step build? See How to Reconcile Shopify Orders with Stripe Charges.
- How to Sync Stripe Payments to NetSuite Automatically covers pushing matched payments back into NetSuite.
- How to Set Up Slack Alerts for Workflow Failures shows the same Slack notification pattern for run errors.