Follow the invoice inbox

Tracks supplier documents received in the invoice inbox: waiting, assigned, processed.

AP Manager⚡ DailyBeginnerRead-only

Ask it like this

What is waiting in the invoice inbox?

When to use it

Every day, to see what is waiting in the inbox or check that an invoice was received.

What it produces

A table of received documents with type, supplier, amount, due date, assignee and status, then one document in detail on request.

How it works

  1. 1Lists documents received and not yet processed
  2. 2Shows who each document is assigned to
  3. 3Finds a specific document, even one already processed
  4. 4Shows what it became once processed
  5. 5Flags upcoming due dates on waiting documents

What protects you

  • This skill only reads: it changes nothing in Spendesk
  • It acts with your permissions and your role, never beyond
  • The assistant cannot approve or pay
▸Technical detail80/100 · 3 tools
SuppliersReconciliationget_intakesget_intake_by_idget_users

# Invoice inbox

## Intake or invoice: the difference

An **intake** is a received supplier document (invoice, credit note or receipt) while it is under review in the invoice inbox: it is the step **before** accounting. Once processed, it becomes an invoice (`get_invoices`) and then a payable (`get_payables`).

- "Did we receive the invoice from X?" → `get_intakes`
- "Is it approved, paid?" → `get_invoices` (see the invoices waiting for approval skill)

## Step 1 — What is waiting in the inbox

```json
{ "tool": "get_intakes", "params": { "stage": ["inInbox"], "pageSize": 100 } }
```

`stage` is the simple view of the lifecycle:

| `stage` | Meaning |
|---------|---------|
| `inInbox` | Awaiting action or under review |
| `linked` | Attached to an existing document |
| `processed` | Finished (validated, refused, deleted) |

⚠️ Traps verified live:
- **An empty list only proves "nothing in this stage"**. On the demo account, `inInbox` returned 0 documents while a processed document existed: it only appeared when `processed` was requested.
- Archived intakes are excluded unless you ask for `stage: ["processed"]` or `status: ["deleted"]`. A document missing from the list does not prove it does not exist.
- There is **no type filter**: invoices, credit notes and receipts are mixed. Read `type` on each row before aggregating.
- Fields extracted from the document (supplier, amounts, dates, number) are `null` until captured — `null` is not zero.
- Amounts are in the document's own currency, with no conversion: group by currency, never add them together.
- The `createdAfter`/`createdBefore` filters expect a full ISO datetime (`2026-10-01T00:00:00.000Z`) and apply to when Spendesk received the document, not to the invoice date.

## Step 2 — Who it is assigned to

`assigneeId` is a raw ID. Resolve it with:

```json
{ "tool": "get_users", "params": { "ids": ["<assigneeId>"] } }
```

Never show the bare ID; if it does not resolve, say so.

## Step 3 — One document in detail, and what it became

```json
{ "tool": "get_intake_by_id", "params": { "id": "<intake id>" } }
```

On top of the list fields, it returns:
- `lineItems` and `lineItemsSource` (e.g. `ocr`): what was actually billed;
- `documents`: the received files, with a short-lived download link;
- `payableId` and `resultingDocument`: what the document produced once processed. `payableId` resolves with `get_payable_by_id`.

`get_intake_by_id` also finds archived intakes that the list leaves out. `appUrl` is the direct link to the document in Spendesk — give it as returned, never build it.

## Recommended output format

```
Invoice inbox — <today's date>
Waiting: N documents (per currency: …)

| Received on | Type | Supplier | No. | Amount | Due date | Assigned to | Status |
```

Sort by due date, earliest first, and flag documents due within 7 days that are not processed yet.

## Observed result (demo account)

Inbox empty under `inInbox`. One document under `processed`: an invoice received by email on 15/09/2026, status `validated`, EUR 15,779.40 gross (EUR 13,260.00 net, 19% VAT read by OCR), due 06/10/2026, assigned to a user resolved with `get_users`, with a `payableId` set.

## Example user prompts

- "What is waiting in the invoice inbox?"
- "Did we receive invoice RE-2026-08842, and where does it stand?"
- "Which documents received this week are not processed yet, and who are they assigned to?"

How to install this skill

/
  1. 1
    Download the file s71-boite-reception-factures.md using the button above.
  2. 2
    Place the file in the .claude/ directory of your project (or ~/.claude/ for a global install).
    cp s71-boite-reception-factures.md .claude/s71-boite-reception-factures.md
  3. 3
    Use in Claude Code — the skill is automatically discovered. Describe your need in natural language and Claude will apply the skill instructions.
💡 Make sure the Spendesk MCP is configured in your .claude/settings.json with the tools get_intakes, get_intake_by_id, get_users.

Similar skills

★ Top
95/100·🔍 Ad hoc·Expert

Audit what the MCP covers

Probes all available MCP tools, re-evaluates coverage of 50 persona use cases, detects new fields or tools, and regenerates the gap analysis report.

CFOControllerAP Manager
★ Top
89/100·🔍 Ad hoc·Intermediate

Build a custom skill

Turns a precise business need into a brand-new tailored Claude skill, ready to use on the Spendesk MCP.

CFOControllerAP Manager
★ Top
88/100·🔍 Ad hoc·Beginner

Discover the Spendesk MCP in two minutes

A guided, conversational tour of the Spendesk MCP with real calls on the user's own data, adapted to their persona.

CFOControllerAP Manager

Interested in AI Agent services or Custom Integrations?