Skip to content
Finero
Agents

Connect an AI agent to your receivables

Let an assistant read your ledger and raise payment links, as the person who approved it. It cannot email your customers, cannot delete anything, and cannot ask for more money than an invoice is owed.

Get started

Tell your assistant

Read getfinero.com/skill.md and connect me to Finero

Or give it the MCP server directly

https://api.getfinero.com/functions/v1/mcp

Works with any assistant that speaks MCP, or any that can read a URL. There is nothing to install: Finero has no CLI, and the skill tells an agent what to do rather than running anything.

One thing has to happen first, and only a person can do it: an admin creates the connection in Finero, under Settings, then API and agents. Skip it and the assistant will appear to connect and then fail on its first real question.

The rule this is built on

An agent may choose when. It must never choose what.

Invoice text arrives from your customers' systems, so it is treated as data that could be hostile rather than as instructions. Anything an injected instruction could reach is something where picking the moment is harmless. That is why an agent can start a sync, which was going to run anyway, and why raising a payment link is restricted and bounded.

Three ways in

Pick by who is doing the calling, and by how much you want to set up.

An Agent Skill, the simplest way to start

A skill is one page of instructions written for an assistant rather than for you. Give yours getfinero.com/skill.md and it learns what Finero is, what it is allowed to do, and how to connect. There is nothing to install and nothing to configure first. If your assistant keeps skills as files, save it as finero-receivables/SKILL.md.

The MCP server, when a person is present

The session acts as the person who approved it, so the assistant sees exactly the rows they see. Streamable HTTP, authorised with OAuth 2.1, and published to the official MCP registry as com.getfinero/finero, so a client that can resolve a name does not need a URL at all. Detail on the MCP server page.

The HTTP API, when nothing is attended

A key acts as the workspace rather than as a person, which is right for a sync job or a backend service and wrong for an assistant. See the API documentation and how credentials work.

Connecting takes three steps

  1. 01

    An admin creates the connection

    In Finero, under Settings, then API and agents. Finero shows a client ID and a client secret once, and does not store the secret, so copy both before closing the dialog. This step cannot be done by the assistant, and skipping it is the single most common reason a connection fails later.

  2. 02

    Paste them into your assistant, then approve

    Add Finero as a connector, paste the credentials, and complete the browser flow. You approve a consent screen naming what the assistant will be able to reach. Consent is recorded per person, so it is one click, once, rather than a prompt on every connection.

  3. 03

    Ask it something

    "How much is outstanding?" "Which invoices are overdue?" "Did the sync run?" The assistant reads your workspace as you, so it sees exactly the rows you see. To point an agent at Finero without any configuration at all, hand it getfinero.com/skill.md.

What it can and cannot do

The second list is the part worth reading. Most of it is enforced in the database rather than in the assistant, so it holds whatever an assistant is asked to do.

It can

  • Invoices and their ageing, filtered and counted
  • Payments, and how each was applied back to an invoice
  • Payment links that exist, and their settlement state
  • ERP connections and sync history, and it can start a sync
  • Which collections automations are on, and what they actually did

It cannot

  • Email, message or otherwise write anything a customer reads
  • Delete anything, on any surface
  • Create a payment link for more than the installment still owes
  • Create or withdraw a link at all, unless connected by an administrator
  • See any row the person who approved it cannot see

Payment links are the only writes, and three properties are why they were allowed at all.

  • A link is not a charge. It is a URL, and no money moves unless a person chooses to pay it.
  • The amount cannot be inflated. The database refuses a link for more than the installment still owes, under a lock. Asking for more does not work, and neither does racing.
  • Withdrawal is reversible. Deactivating sets a status. Nothing is deleted, and a replacement link can be issued immediately.

What you need to provide

An agent cannot bootstrap itself into your workspace, deliberately. One person has to do one thing first, and it takes about a minute.

  • An administrator. Only an admin can create an agent connection, and only an admin's connection can raise or withdraw payment links. A member's agent is refused by the database, not by the interface.
  • One paste, once. The client ID and secret are shown a single time. Finero never stores the secret, so there is no reveal later and no support route to recover it. If it is lost, revoke the connection and create another.
  • Consent, per person. Each person connecting approves once. Their session then carries their own access, which is what lets you revoke one person without disturbing anyone else.

If something goes wrong, look one step later than you expect. A missing connection does not stop the assistant connecting. It connects, lists what it can do, and then fails on the first real request. That is authorisation failing, not the connection, and the fix is almost always step one.

For the agent reading this

Everything a machine needs is published and generated, so none of it can drift from what the product does:

The tool list is whatever the server answers at runtime, and the API surface is whatever the specification says. Nothing on this page restates either, because a second copy is the one that goes stale and gets believed.

Questions

What can an AI agent actually do in Finero?

Read the workspace and issue payment links. Reads cover invoices and their ageing, payments and how they were applied, payment links, ERP connections and sync history, and which collections automations are configured and what they did. It can start an ERP sync. Creating and withdrawing payment links are the only writes, and they require a connection belonging to a workspace administrator. Nothing on this surface composes text a customer reads, and nothing deletes anything.

Can an agent charge one of my customers?

No. It can create a payment link, which is a URL, and no money moves unless a person chooses to pay it. The amount cannot exceed what that installment still owes, because the database refuses a larger one under a lock rather than trusting the request. Withdrawing a link sets a status and can be reversed immediately. Those three properties are why the write was allowed at all.

What do I need to set up before an agent can connect?

One step, and it must be done by a workspace administrator: create an agent connection in Finero under Settings, then API and agents. Finero shows a client ID and a client secret once and does not store the secret, so copy both before closing the dialog. The person connecting pastes those into their assistant and approves a consent screen in the browser. Consent is recorded per person, so each user approves once rather than on every connection.

What does it look like when the setup step is missed?

The failure appears one stage later than most people look for it. The assistant connects and lists what it can do, and then the first real request fails at authorisation rather than at connection. If that happens, the usual cause is that no agent connection was created, or that the credentials pasted were not the ones Finero issued.

Which assistants work with this?

Any client that speaks the Model Context Protocol over Streamable HTTP, which includes Claude. The server is also published to the official MCP registry, so a client that can resolve a name finds it without being handed a URL. For software with nobody present, use the HTTP API with a key instead.

Does an agent see everything in my workspace?

It sees what the person who approved it sees, and no more. A session authenticates as that person rather than as the workspace, so the same row-level rules that apply to them in the browser apply to the agent. That is also why an administrator has to connect one for the payment-link writes: a member's agent is refused by the database, whatever the assistant asks for.

What stops a malicious instruction hidden in an invoice?

Invoice text arrives from a customer's ERP, so it is data rather than instructions, and the design assumes it may be hostile. Any capability an injected instruction could reach is one where choosing the moment is harmless: starting a sync pulls a set that was going to be pulled anyway, and the agent cannot name a target. Payment links are the exception, which is why they are restricted to administrators and bounded three ways.

How do I revoke an agent's access?

Two independent levers, and either is enough. An administrator can revoke the connection itself in Settings, which stops every session using it. A person can withdraw their own consent, which stops the agent acting as them while leaving other people's sessions alone. Authorisation is re-checked on every request, so a revocation takes effect immediately rather than when a token happens to expire.
Agent access is included on every plan. See pricing, or the developer resources for the full technical reference.

See it running on your own receivables.

Book a 30-minute demo. We'll connect a sandbox to your ERP and payment provider and show what an agent sees.