Skip to content
Notis

Carry invoice approval signals into Firmao

Use the team's agreed approval reaction to keep the invoice record up to date.

Trigger

Message Reaction Added

Triggered when a reaction is added to a message in Slack. Supports optional filtering by channel and emoji name.

Action

Update Invoice

Tool to update an invoice. Use when you need to modify an existing invoice by its ID after retrieving its details.

Why this helps

An approval signal can be visible in Slack but absent from the invoice record that needs it.

  • Record a clear approval signal with the invoice.
  • Reduce the need to remember administrative follow-through.
  • Make invoice status easier to review.

Setup

Build it in a few focused steps.

  • 1Connect Slack and Firmao to Notis once through the portal.
  • 2Create an automation in the portal or ask Notis to update an invoice after the agreed approval reaction is added.
  • 3Describe the reaction's approval meaning and invoice identification rule in one prompt.
  • 4Select the Slack Message Reaction Added trigger and a run-report channel.
  • 5Test with the agreed reaction on a real message that identifies an invoice.

Questions about this workflow

Can the reaction indicate approval by itself?

Use a consistent reaction that your team has explicitly agreed means approval, and state that meaning in the prompt.

Does the workflow approve or pay the invoice externally?

It updates the existing Firmao invoice record; it does not perform an external payment.

When this happens · Trigger

Do this · Action

Supported Triggers and Actions

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

Slack triggers

Firmao actions

Recurring trigger

Notis starts this workflow on a schedule, such as daily, weekly, or during business hours.

TriggerScheduled

Create Invoice

Tool to create an invoice. Use after gathering all invoice details.

ActionInstant

Webhook trigger

Notis starts this workflow when an external tool or custom backend sends an HTTP request.

TriggerInstant

Delete Company Setting

Tool to delete a specific company setting. Use when you need to remove a company setting by its unique ID after confirming the ID is valid.

ActionInstant

New Channel Created Trigger

Triggered when a new channel is created in Slack.

TriggerInstant

Delete Contact

Tool to delete a contact by marking it as deleted. Use when you need to soft-delete a contact after confirming its existence.

ActionInstant

Channel Message Received

Triggered when a message is posted in a Slack channel (public, private, or multi-party IM). Does NOT match direct messages.

TriggerInstant

Delete Invoice

Tool to delete an invoice. Use when you need to soft-delete a specific invoice by marking it deleted=true. Implements robust endpoint fallbacks and graceful degradation to ensure a validated response even when the API denies access or returns unexpected shapes.

ActionInstant

Direct Message Received

Triggered when a new direct message (DM) is sent to a user in Slack. Catches all DMs across all DM channels.

TriggerInstant

Delete Offer

Tool to delete an offer. Use when you need to soft-delete an existing offer by marking its deleted flag to true. After this call, the offer is considered deleted within the system.

ActionInstant

Message Reaction Added

Triggered when a reaction is added to a message in Slack. Supports optional filtering by channel and emoji name.

TriggerInstant

Get Invoice

Tool to retrieve a specific invoice by its ID. Use when you need the full invoice data by its unique ID.

ActionInstant

Message Reaction Removed

Triggered when a reaction is removed from a message in Slack. Supports optional filtering by channel and emoji name.

TriggerInstant

Get Offer

Tool to retrieve offer details. Use when you need complete information for a specific offer by ID.

ActionInstant

Reaction Added Trigger

DEPRECATED: use `SLACK_MESSAGE_REACTION_ADDED` instead. Triggered when a reaction is added to a message in Slack.

TriggerInstant

Get Task

Tool to retrieve details of a specific task by its ID. Use when you need to fetch a task after knowing its ID.

ActionInstant

Connect any two apps with Notis in the middle.

Slack and Firmao, or any other combination from 1,000+ integrations.

When this happens · Trigger

Do this · Action

Save your first hour today.

7-day trial of any paid plan, with 20$ of usage included.
No card. Works with personal or business Firmao.