Auto-prepare payments when work is approved

Approval happens in Linear, but payment setup still feels manual. Notis bridges that gap: when your team comments approval, a payment intent is ready in Stripe before you even think about it.

Trigger

Public Team Comment Created

Fires when a new comment is posted on a *public-team* Linear issue. For private teams (lock icon in Linear's sidebar) use `LINEAR_PRIVATE_TEAM_COMMENT_CREATED`.

Stripe logo

Action

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.

Why this helps

Approval comments scatter across Linear threads, but you still manually create payment intents in Stripe—a disconnect that slows down cash flow and creates friction.

  • Payments are prepped in Stripe the moment approval is documented in Linear
  • No manual switch to Stripe to set up the payment intent
  • Approval and payment preparation happen in one place (Linear), simplifying your workflow
  • Less delay between approval and cash collection

Setup

Build it in a few focused steps.

  • 1Connect both Linear and Stripe to Notis.
  • 2Create automation: 'When someone comments approval on a Linear issue, create a payment intent in Stripe.'
  • 3Define which keywords in comments trigger this (e.g., 'approved' or 'approved for payment').
  • 4Specify the channel for Notis to report each payment intent creation.
  • 5Test by posting an approval comment on a Linear issue and checking Stripe for the new payment intent.

Questions about this workflow

How does Notis know the payment amount?

Mention the amount in the Linear comment or issue description. Notis reads the context and extracts it. If ambiguous, you can set a default amount or ask Notis to clarify.

Can I use this for different approval types (e.g., client approval vs. team approval)?

Yes. Tell Notis to only trigger on comments from specific team members or containing specific phrases like 'client approved' vs. 'ready to charge.'

What happens if the approval comment doesn't have enough detail?

Notis can be configured to ask for missing info (customer ID, amount) via follow-up, or create a draft payment intent for you to finalize manually.

When this happens · Trigger

Do this · Action

Supported Triggers and Actions

Notis builds workflows that link Linear to Stripe. A trigger fires from one place; an action lands in another.

Linear logo

Linear triggers

Stripe logo

Stripe actions

Comment Received Trigger

Triggered when a comment is received.

TriggerInstant

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.

ActionInstant

Issue Created Trigger

Triggered when a new issue is created.

TriggerInstant

Confirm payment intent

Confirms a stripe paymentintent to finalize a payment; a `return url` is necessary if the payment method requires customer redirection.

ActionInstant

Issue Updated Trigger

Triggered when an issue is updated. For example labels are changed, issue status is changed, etc.

TriggerInstant

Create Customer

Creates a new customer in stripe, required for creating charges or subscriptions; an email is highly recommended for customer communications.

ActionInstant

Private Team Comment Created

Fires when a new comment is posted on an issue in a private Linear team (polled with the connected user's token).

TriggerPolling

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.

ActionInstant

Private Team Issue Created

Fires when a new issue appears in a private Linear team (polled with the connected user's token).

TriggerPolling

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.

ActionInstant

Private Team Issue Properties Updated

Fires when properties on an issue change in a private Linear team (polled with the connected user's token).

TriggerPolling

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`.

ActionInstant

Project Created

Fires when a new Linear project is created. Covers projects in both public and private teams — polls with the connected user's token, so visibility matches what the connected user can see in Linear.

TriggerPolling

Create product

Creates a new product in stripe, encoding the request as `application/x-www-form-urlencoded` by flattening nested structures.

ActionInstant

Project Properties Updated

Fires when properties on a Linear project change (status, lead, target date, priority, etc.). Covers projects in both public and private teams — polls with the connected user's token.

TriggerPolling

Create Refund

Creates a full or partial refund in stripe, targeting either a specific charge id or a payment intent id.

ActionInstant

Connect any two apps with Notis in the middle.

Not just Linear 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.