Process refunds from Slack DMs in seconds
A customer asks for a refund via DM? Notis creates it in Stripe and confirms back instantly. No dashboard required.
Trigger
Direct Message Received
Triggered when a new direct message (DM) is sent to a user in Slack. Catches all DMs across all DM channels.
Action
Create Refund
Creates a full or partial refund in stripe, targeting either a specific charge id or a payment intent id.
Why this helps
Refund requests in Slack get forgotten or sidelined because they require a separate trip to Stripe, creating customer frustration.
- Respond to refund requests instantly
- Reduce customer frustration from delays
- Keep all communication in Slack
- Avoid losing refund requests in message history
Setup
Build it in a few focused steps.
- 1Connect Slack and Stripe to Notis.
- 2Create an automation: name it 'DM Refund Request', use this prompt: 'When someone DMs me requesting a refund, create that refund in Stripe and tell me the refund ID', choose 'Direct Message Received'.
- 3Notis watches your DMs and looks for refund-related language (e.g., 'refund', 'charge back', 'money back').
- 4Set a Slack channel for refund confirmations.
- 5Test by DMing Notis 'Refund customer $99 for order 12345' and watch the refund appear.
Questions about this workflow
How should I phrase a refund request in DM?
Be clear: mention the amount and ideally the customer or charge ID. For example: 'Refund $50 for John's last purchase' or 'Refund charge ch_1234567890'.
Will the customer be notified of the refund?
Stripe handles notifications based on your settings. Notis creates the refund; Stripe handles the rest.
Can I refund a partial amount?
Yes, mention the partial amount in your DM: 'Refund $25 of the $100 charge' and Notis will create a partial refund.
When this happens · Trigger
Do this · Action
Supported Triggers and Actions
Notis builds workflows that link Slack to Stripe. A trigger fires from one place; an action lands in another.
Slack triggers
Stripe actions
New Channel Created Trigger
Triggered when a new channel is created in Slack.
Cancel subscription
Cancels a customer's active stripe subscription at the end of the current billing period, with options to invoice immediately for metered usage and prorate charges for unused time.
Channel Message Received
Triggered when a message is posted in a Slack channel (public, private, or multi-party IM). Does NOT match direct messages.
Confirm payment intent
Confirms a stripe paymentintent to finalize a payment; a `return url` is necessary if the payment method requires customer redirection.
Direct Message Received
Triggered when a new direct message (DM) is sent to a user in Slack. Catches all DMs across all DM channels.
Create Customer
Creates a new customer in stripe, required for creating charges or subscriptions; an email is highly recommended for customer communications.
Message Reaction Added
Triggered when a reaction is added to a message in Slack. Supports optional filtering by channel and emoji name.
Create an invoice
Creates a new draft stripe invoice for a customer; use to revise an existing invoice, bill for a specific subscription (which must belong to the customer), or apply detailed customizations.
Message Reaction Removed
Triggered when a reaction is removed from a message in Slack. Supports optional filtering by channel and emoji name.
Create payment intent
Creates a stripe paymentintent to initiate and process a customer's payment; using `application fee amount` for a connected account requires the `stripe-account` header.
Reaction Added Trigger
DEPRECATED: use `SLACK_MESSAGE_REACTION_ADDED` instead. Triggered when a reaction is added to a message in Slack.
Create a price
Creates a new stripe price for a product, defining its charges (one-time or recurring) and billing scheme; requires either an existing `product` id or `product data`.
Reaction Removed Trigger
DEPRECATED: use `SLACK_MESSAGE_REACTION_REMOVED` instead. Triggered when a reaction is removed from a message.
Create product
Creates a new product in stripe, encoding the request as `application/x-www-form-urlencoded` by flattening nested structures.
New Bot Message Received Trigger
DEPRECATED: use `SLACK_CHANNEL_MESSAGE_RECEIVED` with `is_bot_message=true` instead. Triggered when a new bot message is posted to a Slack channel.
Create Refund
Creates a full or partial refund in stripe, targeting either a specific charge id or a payment intent id.
Connect any two apps with Notis in the middle.
Not just Slack and Stripe. Any combination from 985+ integrations.
When this happens · Trigger
Do this · Action
Save your first hour today.
7 days free trial with 20$ free usage included.
No card. Works with personal or business Stripe.
