Quaderno is a tax compliance platform that automates tax calculations, invoicing, and reporting for businesses worldwide.
Quaderno is a tax compliance platform that automates tax calculations, invoicing, and reporting for businesses worldwide. On Nagent, Quaderno is exposed as a fully-configurable taxes integration that any agent can call — 76 actions, and API key authentication. No code is required to wire Quaderno into your workflow — connect it once via the External Integrations panel and reuse it across every agent you build.
Agent builders use Quaderno to automate the kinds of tasks taxes teams previously handled manually. Concrete examples — each one is a single agent step in Nagent — include:
Every action and trigger is paired with a structured input/output schema (visible in the sections below), so when you wire Quaderno into Helix — our agentic agent builder — the editor knows exactly what each step expects and produces. Configure once, deploy anywhere across your Nagent agents.
Every operation an agent can call against Quaderno, with input parameters and output schema. Drop these into any step of an agent built in Helix.
QUADERNO_ADD_EXPENSE_PAYMENTAdds a payment to an existing expense in Quaderno. Use when you need to record a payment received for an expense. Returns the payment record with ID, amount in cents, and payment method details.
Input parameters
The unique identifier for the expense to add payment to
The payment date in YYYY-MM-DD format
Payment amount. If not provided, defaults to the expense total or 0
The payment processor name (e.g., stripe, paypal)
The payment processor transaction ID
Payment method used for the expense
Output
Data from the action execution
Error if any occurred during the execution of the action
Whether or not the action execution was successful or not
QUADERNO_CALCULATE_TAX_RATETool to calculate applicable tax rate for given address and transaction type. Use when you need tax details before invoicing.
Input parameters
Monetary amount for tax calculation
Customer's tax identification number, if available
Tax code representing the product or service type
Destination country code (ISO 3166-1 alpha-2)
Origin country code (ISO 3166-1 alpha-2)
Type of item being sold
Postal code of the destination address
Output
Data from the action execution
Error if any occurred during the execution of the action
Whether or not the action execution was successful or not
QUADERNO_CREATE_CONTACTTool to create a new contact (customer or vendor). Use when you need to add a person or company contact in Quaderno.
Input parameters
City or locality of the address.
Type of contact, either 'person' or 'company'.
Email address of the contact.
State or region of the address.
2-letter ISO country code.
Primary phone number of the contact.
Full name of the contact. Useful for companies or alternative display.
Last name of the contact. Optional for 'person'.
Department for company contacts.
First name of the contact (or primary contact name for companies).
ZIP or postal code.
First line of street address.
Primary contact person for company contacts.
Output
Data from the action execution
Error if any occurred during the execution of the action
Whether or not the action execution was successful or not
QUADERNO_CREATE_COUPONTool to create a new discount coupon in Quaderno. Use when you need to create either a percentage-based or fixed-amount discount coupon. Either percent_off or amount_off must be provided (but not both). For amount_off coupons, currency is required.
Input parameters
Unique coupon code that customers will use at checkout. Must be unique across all coupons.
Display name of the coupon shown to customers on invoices. If not provided, the code will be displayed.
Three-letter ISO currency code (uppercase) for the amount_off discount. Required if amount_off is provided. Must be a supported currency in your payment processors.
Date after which the coupon cannot be redeemed (format: YYYY-MM-DD). If not set, coupon never expires.
Fixed amount to discount from the subtotal in the currency specified. Required if percent_off is not provided. Must be positive.
Percentage discount to apply to the subtotal (e.g., 25.5 for 25.5% off). Required if amount_off is not provided. Must be between 0 and 100.
Maximum number of times this coupon can be redeemed across all customers before it expires. If not set, coupon has unlimited redemptions.
Output
Data from the action execution
Error if any occurred during the execution of the action
Whether or not the action execution was successful or not
QUADERNO_CREATE_ESTIMATECreates a new estimate/quote in Quaderno for a customer with line items. Returns estimate with ID, number, permalink, and total amounts in cents. Use this when you need to create a cost estimate or quote for a project or service.
Input parameters
Billing city
Internal notes for the estimate
Estimate number; auto-generated if omitted
Billing region/state
Customer tax ID
Contact information - either a reference object like {'id': 123} to use an existing contact, or a full contact object with fields like first_name, last_name, email, country, kind (person/company), contact_name
Billing country code
Estimate subject or summary
Three-letter ISO currency code (e.g., USD, EUR, GBP)
Comma-separated list of tags
Purchase order number
Estimate issue date (YYYY-MM-DD)
Billing postal code
Billing street line 1
Billing street line 2
Custom metadata key/value pairs
Payment details info
List of line items - each item must have 'description' (string), 'quantity' (number), and 'unit_price' (number in currency units, not cents)
Output
Data from the action execution
Error if any occurred during the execution of the action
Whether or not the action execution was successful or not
QUADERNO_CREATE_EVIDENCETool to create a new location evidence for tax compliance. Use when you need to create evidence records with billing country, IP address, or bank country information for verifying customer location.
Input parameters
Customer's IP address for location verification
The ID of the invoice/document to attach evidence to
Country of customer's bank (ISO 3166-1 alpha-2 code)
Country from billing address (ISO 3166-1 alpha-2 code)
Output
Data from the action execution
Error if any occurred during the execution of the action
Whether or not the action execution was successful or not
QUADERNO_CREATE_EXPENSETool to create a business expense in Quaderno. Use when you need to record an expense from a supplier or vendor with line items and optional attachments.
Input parameters
The billing city
List of line items - each must have description, quantity, and unit_price. Maximum 200 items per request.
Extra notes about the expense
Expense status values.
The billing state/province/region
Supplier/provider contact - either a full contact object with first_name, or a reference object like {'id': 123} to use an existing contact
The billing country - 2-letter ISO country code
An optional summary description of the expense
Three-letter ISO currency code (e.g., USD, EUR, GBP)
List of tags for categorization
Purchase order number
Attached file (receipt, invoice, etc.) with base64-encoded data and filename
Date when the expense was issued (YYYY-MM-DD format)
The billing ZIP or postal code
The billing address line 1 (Street address/PO Box)
The billing address line 2 (Apartment/Suite/Unit/Building)
Payment methods accepted by Quaderno expenses.
Set of key-value pairs for storing additional information
Detailed information about the payment
The payment processor used to pay the expense
The ID the payment processor assigned to the payment
Output
Data from the action execution
Error if any occurred during the execution of the action
Whether or not the action execution was successful or not
QUADERNO_CREATE_INVOICECreates a new invoice in Quaderno for a customer with line items. Returns invoice with ID, number, permalink, PDF URL, and total amounts in cents. Use this when you need to bill a customer for products or services.
Input parameters
Billing city
List of line items - each item must have 'description' (string), 'quantity' (number), and 'unit_price' (number in currency units, not cents)
Internal notes for the invoice
Invoice number; auto-generated if omitted
Billing region/state
Customer tax ID
Contact information - either a reference object like {'id': 123} to use an existing contact, or a full contact object with fields like first_name, last_name, email, country
Billing country code
Invoice subject or summary
Three-letter ISO currency code (e.g., USD, EUR, GBP)
Payment due date (YYYY-MM-DD)
Evidence object for tax calculation
Comma-separated list of tags
Purchase order number
Attachment object with data, filename, public flag
Invoice issue date (YYYY-MM-DD)
Billing postal code
Billing street line 1
Billing street line 2
Custom metadata key/value pairs
Payment details info
Recurring period unit
Payment processor name
Processor fee in cents
Recurring frequency number
Processor-assigned invoice ID
Output
Data from the action execution
Error if any occurred during the execution of the action
Whether or not the action execution was successful or not
QUADERNO_CREATE_PRODUCTCreates a new product that can be used as a line item in invoices, credit notes, and expenses. Use this to register products with their SKU, pricing, tax classification, and other details in your Quaderno account.
Input parameters
The product's SKU (Stock Keeping Unit).
Type of product: one-off purchase or subscription.
The product's name for customer display.
Stock of the physical product.
2-letter ISO country code. Required if tax_based_on is 'country'.
Three-letter ISO currency code in uppercase.
Whether taxes are included in the unit_cost.
Tax class that applies to the product.
The unit price to be charged.
The product's description for customer display.
The type of the product: 'good' or 'service'.
How taxes are calculated: based on customer country or a specific country.
For Stripe subscriptions: ID of the Stripe price.
For PayPal subscriptions: billing frequency unit. Defaults to 'monthly' if not specified for subscription products.
For subscription products: number of times the charge should recur.
For PayPal subscriptions: number of intervals between subscription billings.
Output
Data from the action execution
Error if any occurred during the execution of the action
Whether or not the action execution was successful or not
QUADERNO_CREATE_RECEIPTCreates a new receipt in Quaderno documenting payment for goods or services. Returns receipt with ID, number, permalink, PDF URL, and total amounts. Use when you need to create a receipt for a completed transaction.
Input parameters
Billing city
List of line items - each must have 'description' (string), 'quantity' (number), and 'unit_price' (number in currency units, not cents)
Internal notes for the receipt
Receipt number; auto-generated if omitted
Billing region/state
Contact information - either {'id': 123} to reference an existing contact, or a full contact object with at least 'first_name'
Billing country as 2-letter ISO code
Brief summary or title for the receipt
Three-letter ISO currency code (e.g., USD, EUR). Defaults to account's base currency if omitted
Payment due date (YYYY-MM-DD)
Evidence of customer location for tax compliance
List of payments - each must have 'payment_method' (string) and 'amount' (number)
List of tags for categorizing the receipt
Purchase order number
Attachment object with 'data' (base64), 'filename', and optional 'public' flag
Receipt issue date (YYYY-MM-DD). Defaults to today if omitted
Billing postal code
Exchange rate for currency conversion
Billing street line 1
Billing street line 2
Custom key-value pairs for additional data
Additional payment method information
Name of payment processor (e.g., stripe, paypal)
Payment processing fee in cents
Transaction ID from the payment processor
Output
Data from the action execution
Error if any occurred during the execution of the action
Whether or not the action execution was successful or not
QUADERNO_CREATE_RECURRINGTool to create a recurring document in Quaderno that automatically generates invoices on a schedule. Use when setting up subscription billing or periodic invoices for a customer.
Input parameters
List of line items (max 200 items per request, 1000 total). Each item requires: 'description' (string), 'quantity' (number), 'unit_price' (number in currency units)
Extra notes about the recurring
Status of the recurring document
Array of tax line objects, each detailing a tax applicable to the recurring
Contact information - either {'id': 123} to reference an existing contact, or a full contact object with at least 'first_name' field
Optional summary description for the document
Three-letter ISO currency code in uppercase (e.g., USD, EUR, GBP)
Date on which payment is due in YYYY-MM-DD format
Date of last document issue in YYYY-MM-DD format
List of tags for the recurring document
Recurring frequency (deprecated - use recurring_period and recurring_frequency instead)
Purchase order number
Date of first document issue in YYYY-MM-DD format. Defaults to 1 month from today
Key-value pairs for storing additional structured information
Detailed information about accepted payment methods
Recurring period unit
Number of recurring periods between each document
Output
Data from the action execution
Error if any occurred during the execution of the action
Whether or not the action execution was successful or not
QUADERNO_CREATE_REPORT_REQUESTTool to request a new report generation in Quaderno. Use when you need to generate tax summaries, invoice lists, or credit note lists for a specific date range. Reports are generated asynchronously - this action returns immediately with a 'pending' state. Use the List Reporting Requests action to poll for completion status and retrieve the download URL when the report is ready.
Input parameters
Parameters specifying report details, including the date range (from_date and to_date)
The type of report to generate: 'tax_summary' for tax reports, 'invoices_list' for invoice reports, or 'credits_list' for credit note reports
Output
Data from the action execution
Error if any occurred during the execution of the action
Whether or not the action execution was successful or not
QUADERNO_CREATE_TAX_IDTool to create a tax ID in a specific jurisdiction. Use when you need to register your business's tax identification number (such as VAT) in a tax jurisdiction.
Input parameters
Value of the tax ID. For instance, a VAT number.
The tax ID's validity date in YYYY-MM-DD format. Defaults to the beginning of the year.
The tax ID's expiration date in YYYY-MM-DD format, or null if the tax ID has no expiration date.
Whether the business is registered or not in the EU import scheme for foreign sellers of physical goods.
ID of the tax jurisdiction where the tax ID is registered.
Whether your business has physical presence (office, warehouse, etc) in the given jurisdiction.
Output
Data from the action execution
Error if any occurred during the execution of the action
Whether or not the action execution was successful or not
QUADERNO_CREATE_TRANSACTIONTool to create a sale or refund transaction in Quaderno. Use when you need to record revenue or refunds - the API automatically generates invoices/credit notes when autosend is enabled. Preferred API for automated invoice generation.
Input parameters
Transaction type: 'sale' for revenue or 'refund' for returns
Array of line items - each must have description, amount, and tax information
Payment information for the transaction.
Location evidence for tax compliance.
Sales platform name (e.g., 'shopify', 'stripe', 'woocommerce')
Sales platform transaction ID for reference and deduplication
Output
Data from the action execution
Error if any occurred during the execution of the action
Whether or not the action execution was successful or not
QUADERNO_CREATE_WEBHOOKTool to create a new webhook in Quaderno to receive event notifications. Use when you need to subscribe to real-time events like invoice.created or contact.created. Quaderno signs all webhook events with X-Quaderno-Signature header using HMAC-SHA1. Retry logic: 1 attempt/hour for up to 72 hours.
Input parameters
The endpoint URL to receive webhook events. Must be publicly accessible and respond to HEAD requests with 200 OK status for verification.
Array of event types to subscribe to. Common events include: invoice.created, invoice.updated, invoice.deleted, contact.created, contact.updated, contact.deleted, checkout.succeeded, checkout.abandoned, payment.created, payment.deleted, credit.created, credit.updated, estimate.created, estimate.updated, expense.created, expense.updated, recurring.created, recurring.updated.
Output
Data from the action execution
Error if any occurred during the execution of the action
Whether or not the action execution was successful or not
QUADERNO_DELETE_CONTACTTool to permanently delete a contact by ID. Use when you have confirmed the contact ID is correct and no longer need the contact.
Input parameters
Unique identifier of the contact to be deleted
Output
Data from the action execution
Error if any occurred during the execution of the action
Whether or not the action execution was successful or not
QUADERNO_DELETE_COUPONTool to permanently delete a coupon. Use when you have confirmed the coupon ID is correct and need to remove it permanently (cannot be undone).
Input parameters
Unique identifier of the coupon to be deleted
Output
Data from the action execution
Error if any occurred during the execution of the action
Whether or not the action execution was successful or not
QUADERNO_DELETE_ESTIMATEPermanently deletes an estimate from Quaderno by its ID. This action removes the estimate record from your Quaderno account. Use this when you need to delete an estimate that was created in error or is no longer needed. The deletion is permanent and cannot be undone. Returns an empty response on success (HTTP 204 No Content).
Input parameters
The unique identifier (ID) of the estimate to delete. Can be provided as a string or integer.
Output
Data from the action execution
Error if any occurred during the execution of the action
Whether or not the action execution was successful or not
QUADERNO_DELETE_EXPENSEPermanently deletes an expense from Quaderno by its ID. This action removes the expense record from your Quaderno account. Use this when you need to delete an expense that was created in error or is no longer needed. The deletion is permanent and cannot be undone. Returns an empty response on success (HTTP 204 No Content).
Input parameters
The unique identifier (ID) of the expense to delete. Can be provided as a string or integer.
Output
Data from the action execution
Error if any occurred during the execution of the action
Whether or not the action execution was successful or not
QUADERNO_DELETE_PRODUCTTool to permanently delete a product by ID. Use when you have confirmed the product ID is correct and no longer need the product.
Input parameters
Unique identifier of the product to be deleted
Output
Data from the action execution
Error if any occurred during the execution of the action
Whether or not the action execution was successful or not
QUADERNO_DELETE_RECURRINGTool to permanently delete a recurring by ID. Use when you need to remove a recurring document from Quaderno. This action is irreversible.
Input parameters
The unique identifier (ID) of the recurring to be deleted
Output
Data from the action execution
Error if any occurred during the execution of the action
Whether or not the action execution was successful or not
QUADERNO_DELETE_TAX_IDPermanently deletes a registered tax ID from your Quaderno account. Use this when you need to remove a tax jurisdiction registration that is no longer needed.
Input parameters
The numeric ID of the registered tax ID to delete (e.g., '2313487')
Output
Data from the action execution
Error if any occurred during the execution of the action
Whether or not the action execution was successful or not
QUADERNO_DELETE_WEBHOOKTool to permanently delete a webhook by ID. Use when you have confirmed the webhook ID is correct and no longer need the webhook.
Input parameters
The unique identifier of the webhook to delete
Output
Data from the action execution
Error if any occurred during the execution of the action
Whether or not the action execution was successful or not
QUADERNO_DELIVER_CREDIT_NOTESends a credit note to the customer via email. The contact associated with the credit note must have a valid email address. Returns the credit note details including the delivery email and PDF link.
Input parameters
Unique identifier of the credit note to deliver. The associated contact must have a valid email address.
Output
Data from the action execution
Error if any occurred during the execution of the action
Whether or not the action execution was successful or not
QUADERNO_DELIVER_ESTIMATEDelivers an estimate to the customer via email. The estimate's contact must have a valid email address. Use this after creating or finalizing an estimate to send it to the customer.
Input parameters
Unique identifier of the estimate to deliver via email to the customer contact
Output
Data from the action execution
Error if any occurred during the execution of the action
Whether or not the action execution was successful or not
QUADERNO_DELIVER_INVOICEDelivers an invoice to the customer via email. The invoice's contact must have a valid email address. Use this after creating or finalizing an invoice to send it to the customer.
Input parameters
Invoice ID to deliver via email to the customer contact
Output
Data from the action execution
Error if any occurred during the execution of the action
Whether or not the action execution was successful or not
QUADERNO_DELIVER_RECEIPTSends a receipt to the customer via email. The contact associated with the receipt must have a valid email address. Returns the receipt details including the delivery email and PDF link.
Input parameters
Unique identifier of the receipt to deliver. The associated contact must have a valid email address.
Output
Data from the action execution
Error if any occurred during the execution of the action
Whether or not the action execution was successful or not
QUADERNO_GET_AUTHORIZATIONTool to retrieve account credentials and verify API access. Use to validate authentication and get account details.
Output
Data from the action execution
Error if any occurred during the execution of the action
Whether or not the action execution was successful or not
QUADERNO_GET_ESTIMATETool to retrieve the details of an existing estimate by ID. Use when you need full estimate information for review or conversion to invoice.
Input parameters
ID of the estimate to retrieve
Output
Data from the action execution
Error if any occurred during the execution of the action
Whether or not the action execution was successful or not
QUADERNO_LIST_CONTACTSTool to list contacts, paginated and filterable by name, email, or tax ID. Use when you need to retrieve subsets of your contacts.
Input parameters
Filter contacts by full name, email, or tax ID (case-sensitive)
Page number to retrieve (starts at 1). Quaderno paginates at 25 results per page by default.
Number of results per page (default 25, max 200).
Filter contacts by external processor ID
Output
Data from the action execution
Error if any occurred during the execution of the action
Whether or not the action execution was successful or not
QUADERNO_LIST_COUPONSTool to list all coupons. Use when you need to retrieve available coupons sorted by creation date (newest first).
Input parameters
Page number to retrieve (starts at 1). Quaderno paginates at 25 results per page by default.
Number of results per page (default 25, max 200).
Output
Data from the action execution
Error if any occurred during the execution of the action
Whether or not the action execution was successful or not
QUADERNO_LIST_CREDITSTool to list all credit notes from Quaderno. Use when you need to retrieve credit notes with optional filtering by search query, date range, state, or processor ID.
Input parameters
Filters credit notes based on the credit number, customer name, or PO number
Filters credit notes based on the issue date. A date range must be entered in format 'YYYY-MM-DD,YYYY-MM-DD' or 'YYYY/MM/DD,YYYY/MM/DD'
Current processing status of a credit note
Filters credit notes based on its processor_id
Output
Data from the action execution
Error if any occurred during the execution of the action
Whether or not the action execution was successful or not
QUADERNO_LIST_ESTIMATESTool to list all estimates in the account, paginated and sorted by creation date (newest first). Use when you need to retrieve estimates, optionally filtered by contact name, state, or date range.
Input parameters
Filter results by contact name
Filter by date or date range
Filter by estimate state
ID for pagination - returns estimates created before this ID
Output
Data from the action execution
Error if any occurred during the execution of the action
Whether or not the action execution was successful or not
QUADERNO_LIST_EVIDENCETool to list all evidence objects. Use when you need to retrieve location evidences, optionally filtered by state or document ID.
Input parameters
Page number to retrieve (starts at 1). Quaderno paginates at 25 results per page by default.
Filter by one or more evidence states, comma-separated. Valid states: 'confirmed', 'unsettled', 'conflicting'
Number of results per page (default 25, max 200).
Filter by related document ID
Output
Data from the action execution
Error if any occurred during the execution of the action
Whether or not the action execution was successful or not
QUADERNO_LIST_EXPENSESList all expenses from Quaderno with pagination support. Returns expenses in reverse chronological order (newest first). Each expense includes complete details: contact information, line items, payments, taxes, and custom metadata. Use the 'limit' parameter to control page size (1-100, default 25). Use 'created_before' with an expense ID to paginate through results. Example: List first 50 expenses: ListExpenses(limit=50) Example: Get next page: ListExpenses(limit=50, created_before=168878750)
Input parameters
Number of expenses to return per page. Default is 25, maximum is 100.
Numeric expense ID. Returns expenses created before (earlier than) this expense ID, in reverse chronological order. Used for pagination to fetch the next page of results.
Output
Data from the action execution
Error if any occurred during the execution of the action
Whether or not the action execution was successful or not
QUADERNO_LIST_INVOICESTool to list all invoices from Quaderno with filtering support. Use when you need to retrieve invoices by various criteria such as number, customer name, date range, or payment status.
Input parameters
Filters invoices based on invoice number, customer name, or PO number
Filters invoices based on issue date. Must be a date range in format '2019-01-01,2019-12-31' or '2019/01/01,2019/12/31'
Invoice state enumeration
Filters invoices based on customer ID
Filters invoices based on the processor_id
Output
Data from the action execution
Error if any occurred during the execution of the action
Whether or not the action execution was successful or not
QUADERNO_LIST_JURISDICTIONSTool to list all tax jurisdictions. Use when you need supported jurisdictions for tax calculations.
Input parameters
Region or state filter. Case-sensitive. Use 'none' to return jurisdictions without a region.
2-letter ISO 3166-1 country code to filter jurisdictions. Case-sensitive.
Output
Data from the action execution
Error if any occurred during the execution of the action
Whether or not the action execution was successful or not
QUADERNO_LIST_PRODUCTSList all products (goods and services) from your Quaderno account. Supports filtering by name or SKU code using the 'q' parameter. Returns product details including pricing, tax settings, and subscription information.
Input parameters
Filter string to search products by name or SKU code (partial matching supported).
Page number to retrieve (starts at 1). Quaderno paginates at 25 results per page by default.
Number of results per page (default 25, max 200).
Output
Data from the action execution
Error if any occurred during the execution of the action
Whether or not the action execution was successful or not
QUADERNO_LIST_RECEIPTSTool to list all receipts from Quaderno with optional filtering by search query, date range, payment state, processor ID, or customer ID. Use when you need to retrieve receipts for reporting, reconciliation, or customer queries.
Input parameters
Filters receipts by receipt number, customer name, or PO number (case-sensitive)
Filters receipts by issue date range. Use format '2019-01-01,2019-12-31' or '2019/01/01,2019/12/31'
Valid receipt states for filtering
Filters receipts by customer ID
Filters receipts by external payment processor ID
Output
Data from the action execution
Error if any occurred during the execution of the action
Whether or not the action execution was successful or not
QUADERNO_LIST_RECURRINGSList all recurring documents (invoices, expenses, or estimates) from your Quaderno account. Recurring documents automatically generate new documents at specified intervals. Returns documents in reverse chronological order with support for pagination using the 'created_before' parameter.
Input parameters
Numeric recurring ID. Returns recurring documents created before (earlier than) this recurring ID, in reverse chronological order. Used for pagination to fetch the next page of results.
Output
Data from the action execution
Error if any occurred during the execution of the action
Whether or not the action execution was successful or not
QUADERNO_LIST_REGISTERED_TAX_I_DSTool to list all registered tax IDs. Use when retrieving jurisdictions where your business has registered tax IDs. Supports optional cursor-based pagination.
Input parameters
Maximum number of records to return (default 25, max 100).
Cursor to return only tax IDs created before this timestamp. Use the `created_at` value from the last record of the previous page.
Output
Data from the action execution
Error if any occurred during the execution of the action
Whether or not the action execution was successful or not
QUADERNO_LIST_REPORTING_REQUESTSRetrieves all reporting requests for the account with their current status and download URLs. Use this tool to check the status of previously created reporting requests and obtain download URLs for completed reports. Reports are generated asynchronously, so use this endpoint to poll for completion status. When a report's state is 'succeeded', the report_url field will contain a temporary download link for the generated CSV file. Common use cases: - Check if a report generation request has completed - Retrieve download URLs for completed reports - Monitor all pending report requests - View historical report generations with their parameters (date ranges, report types)
Output
Data from the action execution
Error if any occurred during the execution of the action
Whether or not the action execution was successful or not
QUADERNO_LIST_SESSIONSList Quaderno Checkout sessions with optional filtering and pagination. Supports cursor-based pagination using 'created_before' and 'limit' parameters, and filtering by session status. Use this to retrieve checkout sessions from your Quaderno account.
Input parameters
Maximum number of sessions to return (1-100)
Filter sessions by status
Session ID to paginate from. Returns sessions created before this ID
Output
Data from the action execution
Error if any occurred during the execution of the action
Whether or not the action execution was successful or not
QUADERNO_LIST_TAX_CODESTool to list all supported tax codes. Use when you need to retrieve the full set of tax codes for classifying items.
Output
Data from the action execution
Error if any occurred during the execution of the action
Whether or not the action execution was successful or not
QUADERNO_LIST_WEBHOOKSTool to list all webhooks. Use when you need to retrieve webhook configurations.
Input parameters
Page number to retrieve (starts at 1). Quaderno paginates at 25 results per page by default.
Number of results per page (default 25, max 200).
Output
Data from the action execution
Error if any occurred during the execution of the action
Whether or not the action execution was successful or not
QUADERNO_MARK_INVOICE_UNCOLLECTIBLETool to mark an invoice as uncollectible (bad debt). Use when an invoice cannot be collected and should be written off as a loss.
Input parameters
The ID of the invoice to mark as uncollectible
Output
Data from the action execution
Error if any occurred during the execution of the action
Whether or not the action execution was successful or not
QUADERNO_PINGTool to check if the Quaderno API service is up and verify credentials. Use when testing API connectivity or checking service status before making actual requests.
Output
Data from the action execution
Error if any occurred during the execution of the action
Whether or not the action execution was successful or not
QUADERNO_RECORD_INVOICE_PAYMENTTool to record a payment on an existing invoice. Use when a customer has paid an invoice and you need to record the payment details in Quaderno.
Input parameters
The ID of the invoice to record a payment for
Payment date in YYYY-MM-DD format. Default is current date if not provided
Paid amount in currency units (not cents)
The payment processor used to process the payment
The ID the payment processor assigned to the payment
Payment method options for invoice payment.
Output
Data from the action execution
Error if any occurred during the execution of the action
Whether or not the action execution was successful or not
QUADERNO_REMOVE_INVOICE_PAYMENTTool to remove a payment from an invoice. Use when you need to delete a payment record that was applied to an invoice in error or needs to be adjusted.
Input parameters
The unique identifier of the invoice from which to remove the payment. Can be provided as a string or integer.
The unique identifier of the payment to remove from the invoice. Can be provided as a string or integer.
Output
Data from the action execution
Error if any occurred during the execution of the action
Whether or not the action execution was successful or not
QUADERNO_RETRIEVE_CONTACTTool to retrieve details of an existing contact by ID. Use after confirming contact ID.
Input parameters
ID of the contact to retrieve
Output
Data from the action execution
Error if any occurred during the execution of the action
Whether or not the action execution was successful or not
QUADERNO_RETRIEVE_CONTACT_BY_PROCESSOR_IDTool to retrieve a contact by external payment processor customer ID and gateway name. Use when you have the processor's customer ID instead of Quaderno's internal contact ID.
Input parameters
Payment gateway name (e.g., stripe, paypal, braintree)
External customer ID from the payment processor
Output
Data from the action execution
Error if any occurred during the execution of the action
Whether or not the action execution was successful or not
QUADERNO_RETRIEVE_COUPONRetrieve detailed information about a specific coupon by its ID. Use this action when you need to fetch coupon details like discount percentage, redemption limits, or expiration dates. You must first obtain a valid coupon ID from the List Coupons action or from a coupon creation operation. Returns coupon code, discount amount/percentage, redemption statistics, and validity information.
Input parameters
Unique identifier of the coupon to retrieve
Output
Data from the action execution
Error if any occurred during the execution of the action
Whether or not the action execution was successful or not
QUADERNO_RETRIEVE_CREDITTool to retrieve details of an existing credit note by ID. Use when you need full credit note details for refund processing or reporting.
Input parameters
The unique identifier for the credit note
Output
Data from the action execution
Error if any occurred during the execution of the action
Whether or not the action execution was successful or not
QUADERNO_RETRIEVE_EVIDENCERetrieves a specific evidence object by its ID. Evidence objects contain location proofs (billing country, IP address, bank country) used for tax compliance. Use this when you need detailed information about a specific evidence record, typically after obtaining the evidence ID from the LIST_EVIDENCE action.
Input parameters
The unique identifier of the evidence object to retrieve (numeric string)
Output
Data from the action execution
Error if any occurred during the execution of the action
Whether or not the action execution was successful or not
QUADERNO_RETRIEVE_EXPENSETool to retrieve details of an existing expense by ID. Use after confirming expense ID.
Input parameters
ID of the expense to retrieve
Output
Data from the action execution
Error if any occurred during the execution of the action
Whether or not the action execution was successful or not
QUADERNO_RETRIEVE_INVOICETool to retrieve details of an existing invoice by ID. Use when you need full invoice details for reporting or reconciliation.
Input parameters
ID of the invoice to retrieve
Output
Data from the action execution
Error if any occurred during the execution of the action
Whether or not the action execution was successful or not
QUADERNO_RETRIEVE_JURISDICTIONTool to retrieve a tax jurisdiction by ID. Use when you need the name, country, and region of a specific jurisdiction after confirming its ID. Example: "Retrieve jurisdiction 94".
Input parameters
ID of the desired jurisdiction
Output
Data from the action execution
Error if any occurred during the execution of the action
Whether or not the action execution was successful or not
QUADERNO_RETRIEVE_PRODUCTTool to retrieve details of an existing product by ID. Use after confirming the product ID exists.
Input parameters
ID of the desired product
Output
Data from the action execution
Error if any occurred during the execution of the action
Whether or not the action execution was successful or not
QUADERNO_RETRIEVE_RECEIPTTool to retrieve details of an existing receipt by ID. Use when you need full receipt details for reporting or reconciliation.
Input parameters
The ID of the desired receipt.
Output
Data from the action execution
Error if any occurred during the execution of the action
Whether or not the action execution was successful or not
QUADERNO_RETRIEVE_RECURRINGTool to retrieve details of an existing recurring document by ID. Use when you need information about a recurring invoice or expense subscription.
Input parameters
The ID of the desired recurring
Output
Data from the action execution
Error if any occurred during the execution of the action
Whether or not the action execution was successful or not
QUADERNO_RETRIEVE_REPORTING_REQUESTTool to retrieve the status and download URL of a specific report request by ID. Use when you need to check if a report is ready and get the report_url to download it.
Input parameters
The report request identifier
Output
Data from the action execution
Error if any occurred during the execution of the action
Whether or not the action execution was successful or not
QUADERNO_RETRIEVE_TAX_CODETool to retrieve a specific tax code by ID. Use when you need details about a particular tax code classification.
Input parameters
The ID of the tax code to retrieve: consulting, ebook, eservice, exempt, reduced, saas, or standard
Output
Data from the action execution
Error if any occurred during the execution of the action
Whether or not the action execution was successful or not
QUADERNO_RETRIEVE_TAX_IDTool to retrieve details of a specific tax ID by its ID. Use when you need to get information about a registered tax identification number.
Input parameters
ID of the desired tax ID.
Output
Data from the action execution
Error if any occurred during the execution of the action
Whether or not the action execution was successful or not
QUADERNO_UPDATE_CONTACTTool to update an existing contact in Quaderno. Use when you need to modify contact details such as name, address, email, or tax information.
Input parameters
ID of the contact to be updated.
The contact's website.
City/District/Suburb/Town/Village.
Type of contact.
The contact's email address.
Internal notes about the contact.
State/Province/Region.
The contact's tax identification number. Quaderno can validate EU VAT numbers, ABN, and NZBN.
2-letter ISO country code.
The contact's phone number.
Default discount for this contact.
The contact's preferred language. 2-letter ISO language code.
The contact's last name. Only if the contact is a 'person'.
The external platform where the contact was imported from, if applicable.
If the contact is a 'company', this is the department.
The contact's first name. Only if the contact is a 'person'.
Tax status for a contact.
ZIP or postal code.
The ID the payment processor assigned to the contact.
Address line 1 (Street address/PO Box).
Address line 2 (Apartment/Suite/Unit/Building).
If the contact is a 'company', this is its contact person.
Output
Data from the action execution
Error if any occurred during the execution of the action
Whether or not the action execution was successful or not
QUADERNO_UPDATE_COUPONTool to update an existing coupon. Use when you need to modify coupon properties like discount amount, name, or redemption limits. Note: Coupons linked to Stripe cannot be edited and will return an error. Only fields provided in the request will be updated; omitted fields remain unchanged.
Input parameters
Unique identifier of the coupon to update
Coupon code. Must be unique across all coupons
Name of the coupon displayed to customers on invoices
Three-letter ISO currency code (uppercase) required when amount_off is set
Date (YYYY-MM-DD format) after which the coupon can no longer be redeemed
Fixed amount discount in the specified currency. Cannot be used with percent_off. Requires currency field to be set
Percentage discount applied to the purchase subtotal. Cannot be used with amount_off
Maximum number of times this coupon can be redeemed. Set to null for unlimited redemptions
Output
Data from the action execution
Error if any occurred during the execution of the action
Whether or not the action execution was successful or not
QUADERNO_UPDATE_CREDIT_NOTETool to update a credit note. Use when you need to modify metadata, tags, notes, billing address, or attach files to an existing credit note. Only limited fields can be updated if it has already been paid or delivered.
Input parameters
ID of the credit note to update
Extra notes about the credit note
Comma-separated list of tags (e.g., 'refund,urgent,2026')
Purchase order number
Represents a file attachment for the credit note.
Billing address line 1
Billing address line 2
Custom key-value metadata attached to the credit note
Details about accepted payment methods
Output
Data from the action execution
Error if any occurred during the execution of the action
Whether or not the action execution was successful or not
QUADERNO_UPDATE_ESTIMATEUpdates an existing estimate in Quaderno by modifying allowed fields. Use when you need to change estimate details like notes, purchase order number, tags, payment details, billing address, contact information, or line items. Fields not specified remain unchanged.
Input parameters
ID of the estimate to update
Billing city
Extra notes about the estimate
Billing region/state
Customer tax ID
Billing country (2-letter ISO code)
Estimate subject or summary
Three-letter ISO currency code (e.g., USD, EUR, GBP)
Comma-separated list of tags (e.g., 'urgent,Q1-2026,project')
Purchase order number
Represents a file attachment for the estimate.
Contact identifier
Estimate issue date (YYYY-MM-DD)
Billing postal code
Contact name
Billing address line 1
Billing address line 2
Custom key-value metadata attached to the estimate
Details about accepted payment methods
List of line items to add, update, or remove
Output
Data from the action execution
Error if any occurred during the execution of the action
Whether or not the action execution was successful or not
QUADERNO_UPDATE_EVIDENCETool to update an evidence object. Use when you need to modify location proofs (billing country, IP address, bank country, notes) for tax compliance records.
Input parameters
The unique identifier of the evidence object to update
Internal notes about the evidence
The customer's IP address
2-letter ISO 3166-1 code for the IP country
Unique identifier for the related invoice
2-letter ISO 3166-1 code of the customer's bank country
2-letter ISO 3166-1 code of the billing country
Additional evidence used to proof the customer's location. Required if there's an additional_evidence_country
2-letter ISO 3166-1 code for the additional evidence country
Output
Data from the action execution
Error if any occurred during the execution of the action
Whether or not the action execution was successful or not
QUADERNO_UPDATE_EXPENSEUpdates an existing expense in Quaderno by modifying allowed fields. This action sends a PUT request to /expenses/{id}.json and returns the complete updated expense. Only specific fields can be modified: purchase order number (po_number), tags (tag_list), payment details (payment_details), notes, billing address (street_line_1, street_line_2), and custom metadata. Use this when you need to add or modify administrative information on an expense. Fields not specified in the request remain unchanged.
Input parameters
ID of the expense to update
Extra notes about the expense
Comma-separated list of tags (e.g., 'urgent,Q1-2026,corporate')
Purchase order number
Billing address line 1
Billing address line 2
Custom key-value metadata attached to the expense
Details about accepted payment methods
Output
Data from the action execution
Error if any occurred during the execution of the action
Whether or not the action execution was successful or not
QUADERNO_UPDATE_INVOICEUpdates an existing invoice in Quaderno by modifying allowed fields. This action sends a PUT request to /invoices/{id} and returns the complete updated invoice. Only specific fields can be modified after invoice creation: purchase order number (po_number), tags (tag_list), payment details (payment_details), notes, billing address (street_line_1, street_line_2), custom metadata, and file attachments. Use this when you need to add or modify administrative information on an invoice that hasn't been finalized or paid. Fields not specified in the request remain unchanged.
Input parameters
ID of the invoice to update
Extra notes about the invoice
Comma-separated list of tags (e.g., 'urgent,Q1-2026,corporate')
Purchase order number
Represents a file attachment for the invoice.
Billing address line 1
Billing address line 2
Custom key-value metadata attached to the invoice
Details about accepted payment methods
Output
Data from the action execution
Error if any occurred during the execution of the action
Whether or not the action execution was successful or not
QUADERNO_UPDATE_PRODUCTTool to update a product; unspecified fields remain unchanged. Use after fetching the product to apply partial updates.
Input parameters
ID of the product to update
Product SKU (Stock Keeping Unit)
Transaction type
Product name for display
Product stock level
2-letter ISO country code
3-letter ISO currency code, uppercase
Whether unit_cost includes tax or not
Tax class for the product
Unit price to be charged
Product description for display
Product type
Tax calculation basis
Stripe subscription price ID
Subscription billing frequency unit
Subscription recurrence count
Subscription billing frequency count
Output
Data from the action execution
Error if any occurred during the execution of the action
Whether or not the action execution was successful or not
QUADERNO_UPDATE_RECURRINGTool to update a recurring document in Quaderno. Use when you need to modify subscription details, billing information, line items, or recurring schedule. Only specified fields are updated; unspecified fields remain unchanged.
Input parameters
ID of the recurring document to update
Line items (max 200 per request, 1000 total per document)
Extra notes about the recurring
Recurring state options
Tax lines applicable to the recurring
Contact information for a recurring. Can be either full contact or just ID.
Summary description for the document
Three-letter ISO currency code in uppercase (e.g., USD, EUR, GBP)
Payment due date (format: YYYY-MM-DD, e.g., '2020-07-27')
Date of the last document issue (format: YYYY-MM-DD, e.g., '2024-01-27')
Tags for categorization (e.g., \['consulting', 'premium'\])
Recurring frequency options. Deprecated in favor of recurring_period and recurring_frequency.
Purchase order number
Date of the first document issue (format: YYYY-MM-DD, e.g., '2023-01-27')
Key-value pairs for storing additional structured information
Detailed information about the accepted payment methods
Recurring period options
Number of recurring periods between each document
Output
Data from the action execution
Error if any occurred during the execution of the action
Whether or not the action execution was successful or not
QUADERNO_UPDATE_TAX_IDTool to update an existing tax ID in Quaderno. Use when you need to modify tax ID details such as validity dates, value, or establishment settings.
Input parameters
ID of the tax ID to be updated.
Value of the tax ID you need fixing.
The tax ID's validity date in YYYY-MM-DD format. Defaults to the beginning of the year.
The tax ID's expiration date in YYYY-MM-DD format, or null if the tax ID has no expiration date.
Whether the business is registered or not in the EU import scheme for foreign sellers of physical goods.
Whether your business has physical presence (office, warehouse, etc) in the given jurisdiction.
Output
Data from the action execution
Error if any occurred during the execution of the action
Whether or not the action execution was successful or not
QUADERNO_UPDATE_WEBHOOKTool to update an existing webhook configuration. Use when you need to modify webhook URL or event subscriptions.
Input parameters
The unique identifier for the webhook to update
The webhook endpoint URL that will receive event notifications. Must respond to HEAD requests with 200 OK.
An array of event types the webhook should listen for (e.g., invoice.created, contact.created, invoice.updated)
Output
Data from the action execution
Error if any occurred during the execution of the action
Whether or not the action execution was successful or not
QUADERNO_VALIDATE_TAX_IDTool to validate a tax ID. Use when confirming whether a given country-specific tax ID is valid. Example: validate tax ID 'DE303954554' for Germany.
Input parameters
The tax identification number to validate.
Tax ID's registration country as a 2-letter ISO 3166-1 code.
Output
Data from the action execution
Error if any occurred during the execution of the action
Whether or not the action execution was successful or not
QUADERNO_VOID_CREDIT_NOTETool to void a credit note. Use when you need to cancel an existing credit note.
Input parameters
Unique identifier of the credit note to void
Output
Data from the action execution
Error if any occurred during the execution of the action
Whether or not the action execution was successful or not
No publicly available marketplace agent is found using this tool yet. There are 81 agents privately built on Nagent that already use Quaderno.
Build on Nagent
Connect Quaderno to any Nagent agent in minutes — no API key management, no boilerplate. Just configure and deploy.
The five questions agent builders ask before adopting a new integration.
Open the External Integrations panel inside Nagent (app.nagent.ai/externalIntegration), find Quaderno, and click "Connect Now." You'll authenticate with an API key — Nagent handles credential storage and refresh automatically. Once connected, Quaderno is available to any agent in your workspace.
No. Nagent provides no-code integration for every tool. Once Quaderno is connected, you configure its 76 actions directly in the agent builder UI — no API calls, no boilerplate, no schema management.
Helix — Nagent's agentic agent builder — lets you drop Quaderno steps into any workflow visually. Pick an action (e.g., one of those listed above), fill in the inputs (Helix knows the required vs. optional schema for each parameter), and connect it to upstream/downstream steps. Triggers run as the entry point of an agent, so when a Quaderno event fires, the agent kicks off automatically.
Every Quaderno action and trigger ships with a fully-typed schema — input parameters with name, type, required flag, and description, plus the output payload shape. The schemas are documented in the sections above. Helix uses these schemas to validate your configuration at build time and to type-check the data flowing between steps.
Yes. While Quaderno ships with 76 pre-built taxes actions, you can layer custom logic around them inside Helix — pre/post-processing steps, conditional branches, retries, or stitching Quaderno together with other connected tools. For deeper customization, talk to our team about Nagent's Agentic AI Lab — forward-deployed engineers who build Quaderno-based workflows tailored to your business.