This is an n8n community node that provides comprehensive integration with the Bexio API.
Bexio is a Swiss business software solution for accounting, invoicing, contact management, and more.
n8n is a fair-code licensed workflow automation platform.
Follow the installation guide in the n8n community nodes documentation.
- Go to Settings > Community Nodes in your n8n instance
- Select Install
- Enter
@zurdai/n8n-nodes-bexioin Enter npm package name - Agree to the risks of using community nodes
- Select Install
To install this node manually in your n8n instance:
npm install @zurdai/n8n-nodes-bexioThis node uses Personal Access Token (PAT) authentication for simple and reliable API access.
- Go to the Bexio Developer Portal
- Create a Personal Access Token (PAT)
- Copy the token (it will only be shown once!)
- In n8n, create a Bexio API credential
- Paste your Personal Access Token
📖 Detailed Setup Guide: See PERSONAL_ACCESS_TOKEN_SETUP.md
When creating your Personal Access Token, you can select permissions for:
Contacts: View, create, edit, and delete contacts (customers and suppliers) Invoices: View, create, edit, and delete invoices Quotes: View, create, edit, and delete quotes (offers) Orders: View, create, edit, and delete orders Items/Products: View, create, edit, and delete items (products and services) Banking: View bank accounts and manage payments Company: Access company profile information
Recommended: Enable all permissions for the resources you plan to use when creating the token. You can always create a new token with different permissions if needed.
This node focuses on essential business operations with the following resources:
- Create: Create a new contact (person or company)
- Delete: Delete a contact
- Get: Retrieve a single contact
- Get Many: Retrieve multiple contacts
- Search: Search contacts with criteria
- Update: Update a contact
- Create: Create a new invoice
- Delete: Delete an invoice
- Get: Retrieve a single invoice
- Get Many: Retrieve multiple invoices with advanced filtering
- Filter by status: Draft, Pending, Paid, Partially Paid, Overdue, Cancelled
- Quick filters: Overdue Only, Unpaid Only
- Supports pagination or "Return All" option
- Get PDF: Download invoice as PDF
- Issue: Issue an invoice
- Mark as Sent: Mark invoice as sent
- Search: Search invoices with criteria
- Send: Send invoice via email
- Update: Update an invoice
- Create: Create a new item
- Delete: Delete an item
- Get: Retrieve a single item
- Get Many: Retrieve multiple items
- Search: Search items with criteria
- Update: Update an item
- Create: Create a new quote
- Delete: Delete a quote
- Get: Retrieve a single quote
- Get Many: Retrieve multiple quotes
- Get PDF: Download quote as PDF
- Issue: Issue a quote
- Search: Search quotes with criteria
- Update: Update a quote
- Create: Create a new order
- Delete: Delete an order
- Get: Retrieve a single order
- Get Many: Retrieve multiple orders
- Get PDF: Download order as PDF
- Search: Search orders with criteria
- Update: Update an order
- Get Bank Accounts: Retrieve bank accounts
- Get Payments: Retrieve multiple payments
- Get Payment: Retrieve a single payment
- Create Payment: Create a new payment
- Add a Bexio node to your workflow
- Select Contact as the resource
- Select Create as the operation
- Choose Contact Type (Person or Company)
- Fill in the contact details (name, email, address, etc.)
- Create an invoice using the Invoice resource with Create operation
- Add invoice positions (line items) as JSON
- Use Issue operation to finalize the invoice
- Use Send operation to email the invoice to the customer
- Create a quote using the Quote resource with Create operation
- Add quote positions (line items) as JSON
- Use Issue operation to finalize the quote
- Once accepted, create an order from the same data using the Order resource
- Add a Bexio node to your workflow
- Select Invoice as the resource
- Select Get Many as the operation
- Enable Return All to get all invoices
- Under Options, enable Overdue Only filter
- This will return all invoices with overdue status
For detailed information about the Bexio API, visit:
- Tested with n8n version 1.0.0 and above
- Uses Bexio API v2.0 and v3.0 endpoints
- All endpoints verified and tested against Bexio API documentation
For issues and feature requests, please create an issue on the GitHub repository.
If you need specific customizations or have special requirements for this integration, please contact:
- Email: [email protected]
- Phone: +41 79 127 55 54
# Install dependencies
npm install
# Build the node
npm run build
# Run linter
npm run lint
# Fix linting issues
npm run lintfix@zurdai/n8n-nodes-bexio/
├── credentials/
│ ├── BexioApi.credentials.ts # PAT Authentication (Current)
│ └── BexioOAuth2Api.credentials.ts # OAuth2 (Deprecated)
├── nodes/
│ └── Bexio/
│ ├── Bexio.node.ts # Main node implementation
│ ├── GenericFunctions.ts # API request helpers
│ ├── OperationsHandlers.ts # Resource operation handlers
│ ├── bexio.svg # Node icon
│ └── descriptions/
│ ├── ContactDescription.ts # Contact resource fields
│ ├── InvoiceDescription.ts # Invoice resource fields
│ ├── ItemDescription.ts # Item resource fields
│ ├── QuoteDescription.ts # Quote resource fields
│ ├── OrderDescription.ts # Order resource fields
│ └── BankingDescription.ts # Banking resource fields
├── package.json
├── tsconfig.json
├── gulpfile.js
└── README.md
Daniel Zurmühle ([email protected]) zurdai.com
- Node Improvements: Added required fields (
user_id,owner_id) for Contact, Invoice, Quote, and Order resources - Comprehensive Test Suite: Created full test coverage for all 87 operations across 14 resources
- 85.88% success rate (73/85 tests passing)
- Automated test runner with JSON and HTML reports
- Dynamic test data fetching to adapt to any Bexio account
- API Integration Fixes: Improved error handling and field validation
- Developer Experience: Better error messages and complete test documentation
- Security Fixes: Fixed all dependency vulnerabilities (npm audit: 0 vulnerabilities)
- Added JSON parsing error handling
- Added DoS protection with pagination limits
- Implemented missing
getLanguagesLoadOptions method
- New Scoped Package: Republished as
@zurdai/n8n-nodes-bexiounder zurdai organization - All features from the previous package (v1.0.16) included
- Comprehensive PDF binary download support for Invoice, Quote, and Order
- 6 essential business resources: Banking, Contact, Invoice, Item, Order, Quote
- Personal Access Token (PAT) authentication
- All API endpoints verified and tested
The package was previously published as n8n-nodes-bexio (versions 1.0.0 - 1.0.16, now deprecated).
All functionality has been migrated to the scoped package @zurdai/n8n-nodes-bexio.
For complete version history of the previous package, see CHANGELOG.md.