Suppliers without IBAN

Lists suppliers with no IBAN returned, paging through the whole supplier base. An empty IBAN does not prove there are no bank details: non-IBAN accounts are never returned.

โ†“ Download skill (.md)
83/100ยท๐Ÿ” Ad hocยทBeginnerAP Manager
SuppliersComplianceget_suppliers

๐ŸŽฏ Skill purpose

Lists suppliers with no IBAN returned, paging through the whole supplier base. An empty IBAN does not prove there are no bank details: non-IBAN accounts are never returned.

๐Ÿ“Š What it produces

List of suppliers without IBAN with their status, pending invoiced amount, and contact.

โšก Benefit

Before

Manual supplier-by-supplier check in the interface โ€” tedious and incomplete.

After

Complete list of suppliers to complete, ready for follow-up and reminders.



# Instructions โ€” Suppliers without an IBAN

## โš ๏ธ No hasIban=false filter

Filters available on `get_suppliers`:
- `ids`, `search`, `isArchived`, `iban` (exact match), `bankCountry`, `vatNumber`
- `createdAfter/Before`, `updatedAfter/Before`, `sortBy`, `sort`

**What does NOT exist**: `hasIban=false` or `ibanIsNull=true`

โ†’ You must retrieve **all suppliers** and filter client-side.

## Step 1 โ€” Paginate through all active suppliers

โœ… **Bug resolved (verified 2026-07-22, PR #3169)**: `get_suppliers` no longer returns an `accountPayable.supplierIds` array โ€” tested live with `pageSize=100` on suppliers sharing a consolidated AP account, no response-size overflow. The old risk of exceeding the response limit even at `pageSize=1` (81,179 characters) is no longer reproducible; see [[s22-fournisseurs-actifs-iban]] for details.

```json
{ "companyId": "...", "isArchived": "false", "pageSize": 100, "page": 1 }
```

Repeat with `page=2, 3, ...` until `hasNextPage=false`. **Before starting**: warn the user that this can still take several calls on a large master data set.

โš ๏ธ Do not draw conclusions from the first page only โ€” suppliers with an IBAN may be on other pages.

## Step 2 โ€” Filter client-side

For each supplier returned, check:
```
if iban == null โ†’ no IBAN returned; this does not prove there are no bank details (account number, routing number and sort code are write-only and never returned)
if iban != null โ†’ IBAN available (can wire)
if bankDetailsUpdatedAt != null while iban == null โ†’ bank details were entered but cannot be read here (check in the Spendesk app)
```

Note: non-IBAN details (UK sort code, US routing number, account number) are never returned on read โ€” the `bankInfo` object is write-only. A supplier paid through those details therefore shows `iban` = null.

## Step 3 โ€” Display the report

Display two lists:
1. **Suppliers with no IBAN returned** (iban=null) โ€” name + id โ€” to be checked: they may hold non-IBAN bank details that the MCP does not return
2. **Suppliers with an IBAN** โ€” name + truncated IBAN โ€” ready for wire transfer

Always disclose the scope: *"Based on X active suppliers. Archived suppliers are not included."*

## Step 4 โ€” Use case: supplier follow-up

โš ๏ธ **`get_suppliers` returns no email/contact field at all** (verified live โ€” confirmed by PR #3152, which dropped the "contact details" claim from the tool description since no contact field exists on the read path). No direct email follow-up via this tool.
โ†’ Extract name + id to prepare the follow-up, and find the email through another channel (Spendesk app, or `get_requests` if the IBAN request is tied to an existing request).

## Live example (real data, first page)

- 20 suppliers returned, `hasNextPage=true` (incomplete list)
- 1/20 with an IBAN: +Simple.fr โ€” `FR76151350050008004002...` (truncated for display)
- 19/20 with iban=null โ€” including suppliers like 't Hotel, Oracle (id: 5lwylc0am6e0p7)...

## Example prompt

- "Which suppliers have no IBAN?" โ†’ paginate all + filter iban=null
- "List the suppliers we can wire money to" โ†’ filter iban != null
- "How many active suppliers have banking details?" โ†’ count iban != null on the full list

How to install this skill

/
  1. 1
    Download the file s23-suppliers-sans-iban.md using the button above.
  2. 2
    Place the file in the .claude/ directory of your project (or ~/.claude/ for a global install).
    cp s23-suppliers-sans-iban.md .claude/s23-suppliers-sans-iban.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_suppliers.

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
90/100ยท๐Ÿ“… WeeklyยทBeginner

Card requests via get_requests

Explains how to use get_requests for card requests and why expense reimbursements don't appear there. Avoids a frequent source of confusion between two distinct workflows.

ControllerFinance Analyst
โ˜… 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

Interested in AI Agent services or Custom Integrations?