Track cash actually paid out
Cash flow reporting based on the actual settlement date (settlements) rather than the invoice date (payables) — the real moment money moves.
CFOFinance Analyst📅 WeeklyIntermediateRead-only
Ask it like this
Give me a real monthly cash flow view, not based on invoice dates
When to use it
When you want cash flow reporting based on when money actually leaves the company, not on the invoice date.
What it produces
A numeric comparison between the payables view and the real settlement view, using spendesk_analyze_settlements grouped by month and type.
How it works
- 1Retrieves the settlements actually made over the period
- 2Groups amounts by month, based on the settlement date
- 3Separates money going out from money coming in, by movement type
- 4Presents totals in the company's own currency
- 5Compares, on request, with the view by invoice date
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 detail85/100 · 1 tools
ReportsSpend analysisspendesk_analyze_settlements
# Real cash flow — settlement date, not invoice date
## The trap to avoid
`spendesk_analyze_spend` (payables) answers "how much do we owe / have we spent", based on `payableDate` — the document date. For treasury reporting or an investor update, that's **the wrong date**: an invoice dated the 5th of the month can be paid on the 28th, or the following month. `spendesk_analyze_settlements` answers the real question — when money actually moved (`clearedAt`, the fund clearing date).
The two views genuinely diverge, not just in theory. Observed example on a real account:
| View | May 2026 | June 2026 | July 2026 |
|---|---|---|---|
| `spendesk_analyze_spend` (invoice date) | €120,870.00 | €17,639.94 | €22,980.88 |
| `spendesk_analyze_settlements` (settlement date) | — | €264,436.47 | €32,729.75 |
A CFO reading only the payables view significantly underestimates the real cash outflow for June.
## Call
```json
{
"tool": "spendesk_analyze_settlements",
"params": {
"companyId": "<companyId>",
"fromDate": "2026-06-01",
"toDate": "2026-06-30",
"groupBy": ["month", "type"]
}
}
```
`fromDate`/`toDate` filter on `clearedAt`, not the accounting export date. Always group by `type` in addition to `month` — otherwise the net total mixes inflows (`refund`, `cashReturn`, `chargeback`, negative) with outflows (`payment`, `reimbursement`, `advance`, positive), which can produce a small or negative net total even with high gross volume.
## Observed result
```
{"key":"2026-06","amount":{"formatted":"EUR 264436.47"},"count":27,
"breakdown":[
{"key":"payment","amount":{"formatted":"EUR 264304.23"},"count":23},
{"key":"reimbursement","amount":{"formatted":"EUR 132.24"},"count":4}
]}
```
The amount is already in functional currency (`billingAmount` summed server-side) — never sum `amount` (the transaction's own spending currency) across multiple currencies.
## Which view to use
| Need | Tool |
|---|---|
| "How much do we owe / have we spent over the period" (accounting view) | `spendesk_analyze_spend` |
| "How much cash actually moved in / out" (treasury view) | `spendesk_analyze_settlements` |
| Bank reconciliation | `get_settlements` (individual records) |
## Caveat worth mentioning
A settlement with `state=exported` means that cash movement was exported to accounting — independent of the linked payable's `bookkeepingStatus`. Don't conflate the two (see `s39-settlements-vs-gl-export`).
## Example user prompts
- "Give me a real monthly cash flow view, not based on invoice dates"
- "How much cash actually went out in June, excluding reimbursements?"
- "Compare the payables view and the real settlement view for last quarter"
How to install this skill
/
- 1Download the file
s65-cash-flow-date-reglement.mdusing the button above. - 2Place the file in the
.claude/directory of your project (or~/.claude/for a global install).cp s65-cash-flow-date-reglement.md .claude/s65-cash-flow-date-reglement.md - 3Use 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 spendesk_analyze_settlements.Similar skills
★ Top