Invoice tied to project status updates

Posting a project status update means the work is progressing—that's a perfect moment to invoice. Notis automates it: status update posted in Linear, invoice created in Stripe instantly.

Trigger

Project Update Posted

Fires when a project status update is posted on the Linear project's Updates tab. Covers projects in both public and private teams — polls with the connected user's token.

Stripe logo

Action

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.

Why this helps

Project status updates are progress checkpoints, but you manually invoice later—missing the opportunity to bill aligned with updates.

  • Invoicing is linked to tangible progress updates, not arbitrary dates
  • Notis detects status updates and creates invoices automatically
  • Billing follows real work progress, improving client perception
  • No manual invoice creation needed when updates are posted

Setup

Build it in a few focused steps.

  • 1Connect Linear and Stripe to Notis.
  • 2Create automation: 'When a project status update is posted in Linear, create an invoice in Stripe.'
  • 3Optionally, tell Notis to only trigger on updates containing specific keywords (e.g., 'milestone reached', 'phase complete').
  • 4Set your notification channel for update-triggered invoices.
  • 5Test by posting a status update on a Linear project and checking for the Stripe invoice.

Questions about this workflow

Should I invoice every status update?

You can configure Notis to trigger on all updates or only those with specific keywords ('invoiceable', 'billable', etc.). You control the frequency.

Can I include the status update text in the invoice?

Yes. Notis can read the status update content and include relevant details in the invoice description, tying billing to the specific progress mentioned.

What if a status update is just informational, not billable?

Use keywords or labels to distinguish billable updates from informational ones. Only marked updates trigger invoicing.

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.