Stripe agents that chase failed payments and watch disputes
Paste one Stripe restricted key with only the permissions you pick. Qoren registers the webhook endpoint, wakes an agent on payments, invoices, subscriptions and disputes, and every write waits for your approval.
Integrations is in early access: Qoren is turning it on account by account. Already have access? Open Integrations
How do I connect Stripe to an AI agent?
Create a restricted key in the Stripe Dashboard with Webhook Endpoints set to Write and Read on what agents should look up, such as Customers, Invoices and Subscriptions. Paste it in Qoren and pick an event such as Invoice payment failed. Agents can read customers, invoices, subscriptions and payments. Refunds, cancellations and coupons always wait for a person's approval.
What agents do with Stripe
Example jobs, each built only from the events and tools listed further down. Write the agent's rules in plain words; these are starting points, not presets.
For agencies running it for clients
Failed payment follow-up for a client's customers
When an invoice payment fails, the agent reads the invoice and the customer and drafts a friendly reminder with the payment link. Whether it sends on its own or waits for you depends on the agent's autonomy setting.
- Wakes on
- Invoice payment failed
- Uses
- Read an invoice
- Read a customer
Never miss a dispute deadline
When a customer disputes a charge, the agent reads the payment and the customer's invoices and sends the client the facts they need to answer before Stripe's deadline.
- Wakes on
- Dispute opened
- Uses
- Read a payment
- List a customer's invoices
For founders running it for themselves
Know why customers cancel
When a subscription ends, the agent reads it, notes the cancellation details and adds the customer to your win-back list.
- Wakes on
- Subscription ended
- Uses
- Read a subscription
- Read a customer
Refunds with a person in the loop
When a customer asks for a refund, the agent finds them by email, checks the payment and prepares the refund, which waits on your Approvals page until you say yes.
- Uses
- Find a customer
- Read a payment
- Refund a payment
The path one event takes
10 Stripe events that can wake an agent
Pick one on an agent's Triggers tab. Each event can arrive on its own, as a digest, or as the latest state of a record, and events that do not match your conditions are logged as Filtered, with no turn and no charge.
| Event | When it fires |
|---|---|
| Payment succeeded | A payment went through: a one-off charge or a subscription renewal. |
| Payment failed | A payment attempt was declined or failed. Stripe may retry it. |
| Invoice paid | An invoice is paid, by card, bank transfer or by hand. |
| Invoice payment failed | Collecting an invoice failed. Stripe's dunning retries follow its own schedule. |
| Customer created | A new customer record is created, by checkout, the API or by hand. |
| Subscription started | A customer starts a subscription (trials included). |
| Subscription changed | A subscription changes: plan, quantity, status, renewal or a cancellation being scheduled. |
| Subscription ended | A subscription ends, at once or at the end of its period. |
| Dispute opened | A customer disputes a charge with their bank. Stripe gives a deadline to answer. |
| Checkout completed | A customer finishes a Stripe Checkout page or a Payment Link. |
9 tools agents can use
Curated Stripe tools, not a raw API: each returns only the fields the job needs. A read only grant never gets a write tool, and tools marked Always asks wait for a person's approval whatever the agent's autonomy setting.
| Tool | What it does | Access | Approval |
|---|---|---|---|
| Find a customer | Find Stripe customers by exact email address. Returns id, email, name, created and whether they are delinquent. | Read | None |
| Read a customer | Read one Stripe customer: email, name, phone, currency, balance and whether they are delinquent. | Read | None |
| Read an invoice | Read one Stripe invoice: number, status, amounts due and paid, due date, attempts and the hosted invoice link. | Read | None |
| Read a subscription | Read one Stripe subscription: status, prices and quantities, trial and cancellation details. | Read | None |
| Read a payment | Read one Stripe payment: amount, currency, status and why it failed, if it did. | Read | None |
| List a customer's invoices | List one customer's invoices, newest first, at most 20. | Read | None |
| Refund a payment | Refund a Stripe payment, in full or in part. Always asks a person to approve first. | Write | Always asks |
| Cancel a subscription | Cancel a Stripe subscription, now or at the end of the current period. Always asks a person to approve first. | Write | Always asks |
| Apply a coupon | Apply an existing Stripe coupon to a subscription, replacing its current discounts. Always asks a person to approve first. | Write | Always asks |
How connecting Stripe works
- 01Make a Stripe key with the least access it needs, following the guide below. Only the account owner can connect a tool.
- 02Paste it in Qoren. Qoren checks it before saving: which account it belongs to, what it can do and, where Stripe says, when it expires.
- 03Give an agent access, read only or read and write. An agent cannot use a tool it was not given.
- 04Pick the events that should wake the agent. Qoren registers the Stripe webhook itself, so there is no URL or signing secret to copy.
Making the Stripe key
- 1
Create a restricted key
In the Stripe Dashboard, open Developers > API keys and choose Create restricted key. Name it Qoren.
Qoren's connect dialog links straight to this page in Stripe.
- 2
Give it only what Qoren needs
Set Webhook Endpoints to Write so Qoren can set up triggers. Give Read to what your agents should look up, for example Customers, Charges, Payment Intents, Invoices and Subscriptions. Leave everything else at None. Write access to money, such as refunds or payouts, is never needed to start.
- 3
Paste the key here
Copy the key (it starts with rk_live_) and paste it here. Never send it by email or chat.
Connecting a client's account? Send a link
An agency does not need its client's key. Send a connect link instead: it shows your agency's name and the exact permissions to tick, works once, expires after 7 days and can be revoked. The client pastes the key on that page, Qoren encrypts it on arrival, and you only ever see its last four characters. A client's connection is used only by that client's agents. Connect links come with Clients, on the Ultimate, Business and Enterprise plans.
Client connect linksSecurity in plain words
Keys never reach the agent's machine
The Stripe key is encrypted at rest with AES-256-GCM and used only inside Qoren's own calls to Stripe. It is never written to the agent's environment, and after you connect only its last four characters are shown.
Read only until you say otherwise
Each agent gets read only or read and write access, granted one agent at a time. The Stripe key itself can be limited too, and the guide asks for the least it needs.
Risky actions always ask
In Stripe, these always wait for a person's approval, whatever the agent's autonomy setting: refund a payment, cancel a subscription and apply a coupon.
Capped reads and a full audit log
By default an agent reads at most 500 records an hour from one connection. Every call, read or write, lands in the audit log with the agent, the tool and the record ids.
Event data is treated as data
Events reach the agent fenced off as data, with a warning not to follow instructions inside them. For 30 minutes after an agent reads connected data, a Qoren tool that would send it outside your account waits for your approval.
Stored events expire
Qoren keeps event bodies for 7 days on Starter, 30 on Pro, 90 on Ultimate and 180 on Business, then removes them and keeps only the metadata.
Stripe limits worth knowing
When you disconnect, Qoren cannot revoke the key at Stripe, so it tells you where to delete it. In Stripe, open Developers > API keys and delete the restricted key, or expire it.
- Stripe allows 16 event destinations per mode, counting every kind. Qoren uses one per connection, checks there is room first and never replaces an endpoint you already have.
- Stripe does not let Qoren read a restricted key's permissions, so a permission you did not give shows up as a refused call.
- The key's mode decides which events arrive: a test mode key sees test events only.
- No Stripe write runs unattended. Refunds, cancellations and coupons always ask.
Frequently asked questions
Which Stripe permissions does Qoren need?
Webhook Endpoints set to Write, so Qoren can set up triggers, and Read on what your agents should look up, such as Customers, Charges, Payment Intents, Invoices and Subscriptions. Write access to money is never needed to start. Give it only if an agent should prepare refunds, which still wait for approval.
Does it work in test mode?
Yes. Connect a test mode restricted key and the agent wakes on test events, which is a safe way to try a trigger. The live key then connects as a second connection beside it, so test triggers never act on live data.
Does my agent ever see the Stripe key?
No. Qoren encrypts the key as soon as it arrives and uses it only inside its own calls to Stripe. The key never reaches the agent's machine, is never shown again after you connect, and the agent only gets the results of the tools you allowed.
Can an agent refund a payment without asking?
No. In Stripe, these tools always wait for a person's approval, whatever the agent's autonomy setting: refund a payment, cancel a subscription and apply a coupon. The approval shows the exact details the agent wants to send.
ApprovalsWhat happens when I disconnect Stripe?
Qoren deletes the webhooks it registered, deletes the stored key, pauses the triggers that used it and removes stored event bodies. It cannot revoke a key at Stripe, so it shows you where to delete it: In Stripe, open Developers > API keys and delete the restricted key, or expire it.
What does the Stripe integration cost?
Connecting tools comes with every Qoren plan, with no limit on connections, once Integrations is on for your account. It is in early access for now, turned on account by account. An event that wakes an agent uses credits like any other agent turn, and each trigger has an hourly cap.
Qoren pricingConnect Stripe once. Let agents handle the rest.
Integrations is in early access, turned on account by account. Request it and tell us how your agents should use Stripe.