Documentation

n8n-nodes-bunq

This is an n8n community node. It lets you use the Bunq API in your n8n workflows, including support for request signing with device private keys and webhook-based triggers.

n8n is a fair-code licensed workflow automation platform.

Installation
Operations
Credentials
Compatibility
Usage
Resources
Version history

Installation

Follow the installation guide in the n8n community nodes documentation.

Operations

This package includes the following nodes:

Bunq Monetary Accounts

A node that retrieves a list of Monetary Accounts from the Bunq API with type filtering. Each account is returned as a separate n8n item for easy processing in workflows.

Features:

  • Multiselect option to choose which account types to retrieve
  • Returns each account as a separate n8n item
  • Automatic session management
  • Support for all Bunq monetary account types

Account Types:

  • Bank: Classic personal or business bank accounts
  • Savings: Regular or auto-savings accounts (including VAT accounts)
  • Joint: Shared accounts with other bunq users (legal co-owners)

Bunq Payments

A node that retrieves payments from a specific Monetary Account in the Bunq API with support for pagination and date filtering.

Features:

  • Fetch payments for any monetary account by ID
  • Full pagination support for large datasets
  • Date filtering to retrieve payments from the last X days
  • Option to return all results or limit to a specific number
  • Configurable page size (up to 200 items per page)
  • Returns each payment as a separate n8n item

Parameters:

  • Monetary Account ID: The ID of the account to retrieve payments from
  • Limit (optional): Maximum number of payments to return. If not specified, all payments are returned.
  • Last X Days (optional): Filter to only return payments from the last X days
  • Items Per Page (optional): Number of items to fetch per API request (max 200)

Bunq Create Payment

A node that creates payments or draft payments from a Bunq Monetary Account to any account (bunq or external).

Features:

  • Create actual payments (executed immediately) or draft payments (require manual approval)
  • Send payments to any account via IBAN, email, or phone number
  • Support for payments to:
    • Other accounts owned by the user
    • Other bunq users
    • Accounts at other banks (via IBAN)
    • Recipients identified by email or phone
  • Proper validation of payment amount, IBAN, email, and phone number formats
  • Comprehensive error handling for missing or invalid inputs
  • Clear feedback messages for payment status

Parameters:

  • From Monetary Account ID: The ID of the account to send money from (required)
  • Payment Type: Choose between "Actual Payment (Execute Immediately)" or "Draft Payment (Requires Manual Approval)" (required)
  • Recipient Type: Select how to identify the recipient - IBAN, Email, or Phone Number (required)
  • Recipient IBAN/Email/Phone: The recipient's identifier based on the selected type (required)
  • Recipient Name: Optional name for IBAN transfers
  • Amount: The amount to transfer in EUR (e.g., "10.00") (required)
  • Description: Description of the payment for bookkeeping purposes (required)

Bunq Trigger

A trigger node that starts your workflow when Bunq sends a webhook notification. The trigger automatically registers and manages webhooks with the Bunq API.

Features:

  • Automatic webhook registration/deregistration with Bunq API
  • Support for multiple callback categories (event types)
  • Secure session management with automatic token refresh
  • Clean webhook cleanup on workflow deactivation

Available Callback Categories:

  • Billing: Notifications for all bunq invoices
  • bunq.me Tab: Notifications for updates on bunq.me Tab payments
  • Card Transaction Failed: Notifications for failed card transactions
  • Card Transaction Successful: Notifications for successful card transactions
  • Chat: Notifications for received chat messages
  • Draft Payment: Notifications for creation and updates of draft payments
  • iDEAL: Notifications for iDEAL deposits towards a bunq account
  • Mutation: Notifications for any action that affects a monetary account's balance
  • OAuth: Notifications for revoked OAuth connections
  • Payment: Notifications for payments created from or received on a bunq account
  • Request: Notifications for incoming requests and updates on outgoing requests
  • Schedule Result: Notifications for when a scheduled payment is executed
  • Schedule Status: Notifications about the status of a scheduled payment
  • Share: Notifications for any updates or creation of Connects
  • SOFORT: Notifications for SOFORT deposits towards a bunq account
  • Support: Notifications for messages received through support chat
  • Tab Result: Notifications for updates on Tab payments

Bunq Session

A utility node to create and manage Bunq API sessions, including installation, device registration, and session token management.

Sign Request

A utility node that signs request bodies using RSA-SHA256 with your Bunq private key, useful for making authenticated API calls to Bunq.

Credentials

To use these nodes, you need to set up Bunq API credentials in n8n:

Prerequisites

  1. A Bunq account (production or sandbox)
  2. An API key from your Bunq account
  3. An RSA key pair (private and public keys in PEM format)

Setting up credentials in n8n

  1. In n8n, go to CredentialsNew
  2. Search for "Bunq API" and select it
  3. Fill in the following fields:
    • Environment: Choose "Sandbox" for testing or "Production" for live transactions
    • API Key: Your Bunq API key
    • Private Key (PEM): Your RSA private key in PEM format
    • Public Key (PEM): Your RSA public key in PEM format
  4. Click Save

Getting your API Key

Sandbox:

  • Visit the Bunq Sandbox
  • Create a sandbox account
  • Generate a sandbox API key

Production:

  • Log in to your Bunq app
  • Go to Profile → Security & Settings → Developers
  • Generate an API key

Generating RSA Keys

You can generate an RSA key pair using OpenSSL:

# Generate private key
openssl genrsa -out private.pem 2048

# Extract public key
openssl rsa -in private.pem -pubout -out public.pem

Then copy the contents of private.pem and public.pem into the respective credential fields.

Compatibility

  • Minimum n8n version: 1.55.0
  • Tested with: n8n v1.55.0+
  • Bunq API version: v1

Usage

Using the Bunq Trigger

  1. Add the Bunq Trigger node to your workflow
  2. Select or create your Bunq API credentials
  3. Choose one or more Callback Categories that you want to receive notifications for
  4. Activate your workflow

The trigger node will:

  • Automatically register a webhook with the Bunq API
  • Start listening for incoming webhook events
  • Pass the webhook payload to the next node in your workflow
  • Clean up the webhook when the workflow is deactivated

Example workflow:

Bunq Trigger (MUTATION) → IF Node → [Process payment data]

When a mutation (balance change) occurs in your Bunq account, the trigger fires and your workflow processes the event.

Using Bunq Session

The Bunq Session node helps you establish and maintain a valid session with the Bunq API. It handles:

  • Installation creation
  • Device registration
  • Session token creation and renewal

Most workflows won't need this node directly, as the Bunq Trigger handles sessions automatically.

Using Sign Request

The Sign Request node signs request bodies using your Bunq private key. This is useful when making custom API calls to Bunq that require request signing.

Resources

Version history

0.2.1

  • Added Bunq Create Payment node for creating payments and draft payments
    • Support for IBAN, email, and phone number recipients
    • Option to create actual payments or draft payments
    • Comprehensive validation and error handling

0.1.0

  • Initial release
  • Bunq Session node for session management
  • Sign Request node for request signing
  • Bunq Trigger node for webhook-based triggers with support for all Bunq callback categories
  • Bunq Monetary Accounts node for retrieving monetary accounts with type filtering
  • Bunq Payments node for retrieving payments with pagination and date filtering

Discussion