| name | moneybird |
| description | Moneybird invoicing and accounting API integration with managed OAuth. Create and manage contacts, generate sales invoices, manage contact persons, handle administrations, and track additional charges. Use this skill when users want to create invoices, manage customer contacts, list sales invoices, or set up payment mandates. |
Moneybird

Manage invoicing and accounting from chat -- create contacts, generate sales invoices, manage contact persons, and handle administrations. Powered by ClawLink for hosted OAuth.
Setup in 3 Steps
| Step 1: Install | Step 2: Pair Account | Step 3: Connect Moneybird |
|---|
 |  | App-specific connection GIF coming soon |
| Run the install command in OpenClaw | Sign in and approve the device | Open the dashboard and connect Moneybird |
How It Works
┌─────────────────┐ ┌──────────────┐ ┌──────────────────┐
│ OpenClaw │────▶│ ClawLink │────▶│ Moneybird API │
│ (User Chat) │ │ (OAuth) │ │ │
└─────────────────┘ └──────────────┘ └──────────────────┘
Install
openclaw plugins install clawhub:clawlink-plugin
openclaw config set tools.alsoAllow '["clawlink-plugin"]' --strict-json
openclaw gateway restart
Quick Start
clawlink_call_tool({ tool: "moneybird_list_administrations", parameters: {} })
clawlink_call_tool({ tool: "moneybird_create_contact", parameters: { administration_id: "123", company_name: "Acme Corp" } })
clawlink_call_tool({ tool: "moneybird_create_sales_invoice", parameters: { administration_id: "123", contact_id: "456", details: [{ description: "Consulting", price: 150 }] } })
Authentication
ClawLink handles OAuth with Moneybird. No API keys needed. Connect at claw-link.dev/dashboard?add=moneybird.
Connection Management
clawlink_list_integrations()
clawlink_call_tool({ tool: "moneybird_list_administrations", parameters: {} })
Security & Permissions
- Read tools are safe and require no confirmation
- Write tools require confirmation before execution
- Archive, delete, and note deletion are high-impact and irreversible
- Most operations require an
administration_id parameter
Tool Reference
Administration Operations
| Tool | Description | Mode |
|---|
moneybird_list_administrations | List all administrations accessible to the user | Read |
Contact Operations
| Tool | Description | Mode |
|---|
moneybird_list_contacts_synchronization | List contact IDs and versions for sync | Read |
moneybird_filter_contacts | Filter contacts by criteria (name, date, etc.) | Read |
moneybird_get_contact | Get full contact details by ID | Read |
moneybird_get_contact_by_customer_id | Get contact by customer ID | Read |
moneybird_create_contact | Create a new contact (company or person) | Write |
moneybird_update_contact | Update existing contact fields | Write |
moneybird_archive_contact | Archive a contact permanently | Write |
moneybird_delete_contact | Delete a contact permanently | Write |
moneybird_add_note_to_contact | Add a note or to-do to a contact | Write |
moneybird_delete_contact_note | Delete a note from a contact | Write |
moneybird_request_contact_payments_mandate_url | Generate direct-debit mandate URL (valid 14 days) | Write |
Contact Person Operations
| Tool | Description | Mode |
|---|
moneybird_get_contact_person | Get contact person details | Read |
moneybird_create_contact_person | Add a person to an existing contact | Write |
moneybird_update_contact_person | Update contact person details | Write |
moneybird_delete_contact_person | Delete a contact person | Write |
Sales Invoice Operations
| Tool | Description | Mode |
|---|
moneybird_list_sales_invoices | List all invoices in an administration | Read |
moneybird_get_sales_invoice | Get a specific invoice by ID | Read |
moneybird_create_sales_invoice | Create a new invoice with line items | Write |
moneybird_update_sales_invoice | Update invoice header or line items | Write |
Additional Charges
| Tool | Description | Mode |
|---|
moneybird_get_additional_charges | View pending or billed usage/recurring charges | Read |
Code Examples
Example 1: Create a contact and invoice
const admins = await clawlink_call_tool({
tool: "moneybird_list_administrations",
parameters: {}
});
const contact = await clawlink_call_tool({
tool: "moneybird_create_contact",
parameters: {
administration_id: admins[0].id,
company_name: "Acme Corp",
firstname: "Jane",
lastname: "Smith",
email: "jane@acme.com"
}
});
const invoice = await clawlink_call_tool({
tool: "moneybird_create_sales_invoice",
parameters: {
administration_id: admins[0].id,
contact_id: contact.id,
details: [
{ description: "Web development - June", price: 3000, amount: "1 x 3000" },
{ description: "Server hosting - June", price: 150, amount: "1 x 150" }
]
}
});
Example 2: Search and update contacts
const contacts = await clawlink_call_tool({
tool: "moneybird_filter_contacts",
parameters: { first_name: "Jane" }
});
await clawlink_call_tool({
tool: "moneybird_update_contact",
parameters: {
administration_id: "123",
contact_id: contacts[0].id,
email: "jane.smith@acme.com"
}
});
Example 3: Payment mandate and notes
const mandate = await clawlink_call_tool({
tool: "moneybird_request_contact_payments_mandate_url",
parameters: {
administration_id: "123",
contact_id: "456"
}
});
await clawlink_call_tool({
tool: "moneybird_add_note_to_contact",
parameters: {
administration_id: "123",
contact_id: "456",
note: "Follow up about Q3 proposal",
todo: true
}
});
Discovery Workflow
- Call
clawlink_list_integrations to confirm moneybird is connected.
- Call
clawlink_list_tools --integration moneybird to see the live catalog.
- Use
clawlink_search_tools({ query: "invoice", integration: "moneybird" }) to find specific tools.
Execution Workflow
READ (safe): list_administrations → get_contact → list_sales_invoices → filter_contacts
WRITE (confirm): create_contact → create_sales_invoice → update_contact → add_note_to_contact
DELETE (high): archive_contact → delete_contact → delete_contact_note → delete_contact_person
Notes
- Most operations require an
administration_id -- call list_administrations first
- Contacts require either
company_name or both firstname and lastname
- Payment mandate URLs are valid for 14 days
- Create contact and contact person operations are idempotent
- Synchronization endpoint returns contact IDs and versions for change detection
Error Handling
| Status / Error | Meaning |
|---|
| 401 Unauthorized | OAuth token expired -- reconnect at dashboard |
| 403 Forbidden | Insufficient permissions for this administration |
| 404 Not Found | Contact, invoice, or administration ID does not exist |
| 422 Unprocessable | Missing required fields or invalid data |
| 429 Rate Limited | Too many requests -- apply exponential backoff |
Troubleshooting
Tools Not Visible
- Start a fresh OpenClaw chat to reload plugin catalog
- Call
clawlink_list_integrations to confirm pairing
Missing Administration ID
- Always call
moneybird_list_administrations first
- Store the administration ID for subsequent calls
- Users may have access to multiple administrations
Resources
Powered by ClawLink -- an integration hub for OpenClaw
