Agent setup guide
Daily Sales Digest
Every morning, yesterday's Stripe payments and refunds in Slack: gross, refunds and net, top customers, failures and anything unusual.
What it does
Every morning, yesterday's Stripe payments and refunds in Slack: gross, refunds and net, top customers, failures and anything unusual.
- Runs every morning at 7:00 (change the time and time zone on the trigger).
- Reads your 100 most recent Stripe payments and up to 100 refunds from the last 48 hours.
- Yesterday's payments and refunds are picked out in code (the previous calendar day in your trigger's time zone), never by the AI, and code checks whether the 100 newest payments reach back far enough.
- AI summarises them: gross, refunds and net per currency, payment count, top customers, failed payments and their reasons, and anything unusual against your typical day.
- Gross, refunds, net, the average payment and the failed total are recalculated in code from the listed amounts before the digest is posted — never by the AI; anything the AI got wrong is corrected (and recorded in the run history).
- Posts the digest to your Slack channel, marked as partial when yesterday had more than 100 payments or refunds.
What it needs
- A paid plan (agents run live on paid plans).
- An AI provider key (Settings → AI Providers).
- Stripe and Slack, connected in Settings → Integrations.
What it doesn't do
- It reads the most recent 100 payments and 100 refunds only; high-volume stores get a partial digest (a sheet-based version suits them better).
- Disputes, fees and payouts aren't read, so net means gross minus refunds, not what lands in your bank.
- It doesn't change anything in Stripe.
Availability and plans
Available
Its workflow is built and tested, and every app it needs is live. You can get it and set it up now.
Included free on the Enterprise plan; on other paid plans it's a one-time purchase per workspace (the price is on the Agents page). The Agents page in the app always shows its current status.
Before you start
- A paid plan: agents run live, and the Free plan only runs Dry Runs.
- An AI provider key (OpenAI, Anthropic, Google and more) in Settings → AI Providers. AI usage is billed by your provider.
- These apps, connected in Settings → Integrations: Stripe and Slack.
- Nothing to send: the agent runs on a schedule.
- About 8 minutes.
Set it up step by step
Get the agent first (buy it, or it's already yours when your plan includes it), then in Agents → My agents press “Set up this agent”. That creates the agent's workflow in your workspace (it counts towards your plan's workflow limit) and opens the canvas with a setup checklist above it. Each item links to the exact place to go and ticks itself off when it's done.
1. Connect your AI provider
The AI steps run on your own key (OpenAI, Anthropic, Google and more). Add one in Settings → AI Providers.
2. Connect Stripe
Connect Stripe (Settings → Integrations → Stripe) with a key that can read payments and refunds (PaymentIntents: Read, Refunds: Read).
3. Connect Slack
Connect the Slack workspace your team uses (Settings → Integrations → Slack).
4. Describe your business
Open “Summarise yesterday's sales” and replace the placeholder with your currency and what a typical day looks like (set your time zone on the trigger).
| Setting | What to enter | In step |
|---|---|---|
| Your business and a typical day | Replace the placeholder in “Summarise yesterday's sales” with your main currency, what a typical day looks like and what you'd call unusual. Your time zone goes on the trigger: “yesterday” is worked out in code in that zone. It starts as “[DESCRIBE YOUR BUSINESS: MAIN CURRENCY, A TYPICAL DAY'S SALES AND WHAT COUNTS AS UNUSUAL HERE]” until you replace it. | “Summarise yesterday's sales” |
5. Pick your Stripe account
Open “Read recent Stripe payments” and “Read recent Stripe refunds” and pick your Stripe account in both.
| Setting | What to enter | In step |
|---|---|---|
| Stripe account | The Stripe account payments are read from (the key needs read access to PaymentIntents). Pick your connected Stripe account. | “Read recent Stripe payments” |
| Stripe account (refunds) | The same Stripe account, for refunds (the key needs read access to Refunds). Pick your connected Stripe account. | “Read recent Stripe refunds” |
6. Pick the Slack account and channel
Open “Post the digest in Slack” and pick your account and channel. Invite the app to private channels first (/invite @Fluxo Flow).
| Setting | What to enter | In step |
|---|---|---|
| Slack account | The Slack workspace the digest is posted to. Pick your connected Slack account. | “Post the digest in Slack” |
| Channel for the daily digest | Pick the channel the owner or finance team reads, e.g. #sales. | “Post the digest in Slack” |
7. Test it with Dry Run
Press Dry Run: the agent runs on sample data with no messages sent and nothing written to your apps.
8. Switch the trigger on
Open the trigger, check the time and time zone, and switch the schedule on.
How it works
The agent is a normal workflow with 10 steps (1 AI step). You can open, edit and monitor it like any other workflow.
- Every day at 7:00 — Runs on a schedule (cron 0 7 * * *, UTC — change it in the trigger's settings). Runs every morning (change the time and time zone on the trigger).
- Read recent Stripe payments — Stripe: List payments. Lists the 100 most recent payments in Stripe (amount, currency, status, customer, description, failure details).
- Read recent Stripe refunds — Stripe: List refunds. Lists up to 100 refunds created in the last 48 hours (amount, currency, status, reason, the refunded payment), so yesterday is covered in any time zone.
- Keep yesterday's payments — Step. In code, not AI: keeps only the payments created yesterday (the previous calendar day in the trigger's time zone — set it on the trigger).
- Keep yesterday's refunds — Step. In code, not AI: keeps only the refunds created yesterday, in the same time zone.
- Is yesterday complete? — Step. In code, not AI: when Stripe returned a full page of 100 payments, checks that the oldest one is from before yesterday — otherwise yesterday may be cut off and the digest says it's partial.
- Summarise yesterday's sales — AI step (runs on your AI provider key). AI lists yesterday's payments and refunds (already picked out in code) with their amounts per currency, names the top customers and flags unusual failures, refunds or amounts.
- Check the math — Step. Adds up gross, refunds and failed payments from the listed amounts and works out net and the average payment in code — not by AI — writes the correct figures into the digest, and records anything the AI got wrong in the run history.
- Post the digest in Slack — Slack: Post a message. Posts the morning digest to your sales or finance channel.
- Digest posted — Kept in the run history. The run history keeps every digest.
Test it with Dry Run
Press Dry Run in the canvas. The agent runs on the sample data stored on its trigger (the “Sample data for Dry Run” box), so you can check every step's output before anything is live.
- Nothing is sent or written: app actions, emails and Slack posts are simulated, and AI steps don't call your AI provider.
Go live
- Open the trigger, check the time and time zone, and switch the schedule on.
- Scheduled runs start only once the schedule is activated, and can't repeat faster than your plan's minimum interval.
- The setup checklist adds a “paid plan” item before activation: live runs need a paid plan (the Free plan only runs Dry Runs).
- When every checklist item is done and the trigger is on, the checklist says “Live — this agent is running”. Follow its runs in the workflow's History tab and in Analytics → Agents.
Questions
Does it include refunds?
Yes. It reads refunds created yesterday and reports gross, refunds and net per currency. A refund counts on the day it was made, even when the payment was earlier. Disputes and payouts aren't included.
What about busy days?
It reads the newest 100 payments and up to 100 refunds. When yesterday had more, the digest says it's partial.
Can the AI get the totals wrong?
Not in the digest you read: the AI lists yesterday's payments and refunds with their amounts, and gross, refunds, net, the average payment and the failed total are recalculated in code and written into the Slack message (for up to three currencies). Anything the AI added up wrong is corrected and recorded in the run history.
Troubleshooting
- “No AI provider connected” or a rejected key: connect or fix the key in Settings → AI Providers, then press Test there.
- A checklist item stays unticked: the setting is still empty or still contains its placeholder text. Open the step from the checklist and fill it in.
- An app step fails with “Needs reconnect”: the account's access was revoked or expired. Reconnect it in Settings → Integrations.
- Slack says the app isn't in the channel: in Slack, type /invite @Fluxo Flow in that channel (always needed for private channels).
- It didn't run at the expected time: the schedule must be activated, and its time is in the trigger's timezone.
- A step failed: open the run in History and check that step in the Trace tab for the error and what it received.
Generated from the agent's own workflow, so it always matches what the agent does. Last updated .