This is an n8n community node. It lets you use Carbone.io in your n8n workflows.
Carbone.io is a powerful document generation service that allows you to create professional PDF, DOCX, XLS, XLSX, ODT, PPTX, ODS, CSV and XML reports and documents from templates using JSON data. The easy-to-implement template concept frees you from design constraints, with a No/Low code approach.
Features
- Generate documents from templates using JSON data.
- Upload, manage, and delete templates.
- Advanced options: localization, currency conversion, and template versioning.
- Supports Carbone API v4 and v5.
Real-World Use Cases for Carbone.io
Carbone.io is ideal for generating:
- Invoices and Receipts: Automate billing with dynamic data.
- Contracts: Populate legal templates with customer details.
- Reports: Financial, sales, or operational reports with charts and tables.
- Proposals: Customized business proposals for clients.
- Certificates: Automated certificates for training or events.
- Labels and Packing Slips: Shipping and logistics documents.
- Personalized Letters: Mass mail with custom recipient data.
n8n is a fair-code licensed workflow automation platform.
Follow the installation guide in the n8n community nodes documentation.
Generate a document from a template and JSON data.
Parameters:
- Use Base64 Template On The Fly: Whether to use a base64 template instead of a template ID
- Template ID: The template ID to use for generating the document (when not using base64 template)
- Template File (Base64): The template file encoded as base64 string (when using base64 template)
- Data: JSON data-set to merge into the template
- Convert To: Optional: Convert the document to another format (PDF, DOCX, HTML, ODT)
- Download Rendered Document: Whether to download the rendered document directly or just get the render ID to fetch it later
Document Generation Additional Options:
- Complement: Additional data to complement the main dataset
- Currency Rates: Currency conversion rates
- Currency Source: The source currency for conversion
- Currency Target: The target currency for conversion
- Enum: Enumeration values for the template
- Hard Refresh: Whether to force a hard refresh of the template
- Language: The language to use for localization (default: fr)
- Report Name: The name of the generated report
- Timezone: The timezone to use for date formatting (default: Europe/Paris)
- Translations: Translation mappings for the template
- Variable String: A string containing variables to be processed
Retrieve a generated document from render ID.
Parameters:
- Render ID: The render ID of the generated document to retrieve
Retrieve a list of all templates from your Carbone.io account with optional filtering capabilities.
Parameters:
- Template ID: Filter by specific template ID
- Version ID: Filter by specific version ID
- Category: Filter by template category
- Include Versions: Include all versions for a specific template ID
- Search: Search in template name (fuzzy search), version ID (exact) or template ID (exact)
- Limit: Maximum number of results to return (default: 50)
- Cursor: Cursor for pagination
Upload a new template file to Carbone.io or update an existing template.
Parameters:
- Binary Property Name: The name of the binary property that contains the template file
- Template Additional Options:
- Deployed At: When a report is generated using the new template ID, Carbone selects the template version with the highest deployedAt timestamp that is not in the future
- Enable Versioning: Whether to enable template versioning (default: true)
- Template Comment: Comment for the template
- Template ID: The unique identifier of the template to update
- Template Name: Name for the template
Delete a template from your Carbone.io account.
Parameters:
- Template ID: The unique identifier of the template to delete
To use the Carbone.io node, you need to authenticate with your Carbone.io account.
- Sign up for a Carbone.io account at carbone.io
- Obtain your API key from your Carbone.io dashboard
- API Key: Your Carbone.io API key for authentication
- API URL: The base URL for Carbone.io API (default: https://api.carbone.io)
- Change this if you're using a self-hosted instance
- Carbone API Version: The version of the Carbone API to use (4 or 5, default: 5)
The node uses Bearer token authentication with the Authorization header and includes the carbone-version header for API versioning.
Tested with:
- n8n:
1.111.1,1.112.5 - Carbone API:
v4,v5 - NodeJS:
22.10.0
- Add a Carbone node to your workflow
- Select "Template" as resource and "Upload" as operation
- Connect a node that provides the template file as binary data (e.g., Read Binary File node)
- Configure the binary property name to match the output of the previous node
- Optionally set template name and other metadata
- Add a Carbone node to your workflow
- Select "Render Document" as resource and "Generate" as operation
- Choose between using a template ID or base64 template
- Provide the JSON data to merge into the template
- Select the desired output format
- Choose whether to download the document directly or get a render ID
- Template Versioning: Enable versioning to keep track of template changes
- Localization: Set language, timezone, and translations for multilingual documents
- Currency Conversion: Use currency rates and source/target currency for financial documents
- n8n community nodes documentation
- Carbone.io API Reference
- Carbone.io Documentation
- Carbone.io Template Guide
- Removed redundant routing configurations from operation descriptions
- Replaced all
helpers.request()calls withthis.helpers.httpRequestWithAuthentication() - Translate French error messages to English
- Initial release
- Template management operations: List, Upload, Delete
- Document rendering operations: Generate, Get
- Advanced options for document generation (localization, currency, etc.)
- Support for both template ID and base64 template approaches