Bunq Create Payment icon

Bunq Create Payment

Create a payment or draft payment from a Bunq Monetary Account to any account (bunq or external)

Bunq Create Payment

AI-generated

Summary

Creates a bunq payment in EUR from one of your monetary accounts to a recipient identified by IBAN, email, or phone number. It can execute immediately, create a draft that needs approval in the bunq app, or try an immediate payment and fall back to a draft if that fails.

Inputs

  • monetaryAccountId (required) — ID of the bunq monetary account to send from. Must be a positive number.
  • paymentType (required) — 'actual' executes immediately (POST to /payment). 'draft' creates a draft payment (POST to /draft-payment) that needs one approval in the bunq app. 'actualWithDraftFallback' tries an actual payment first and creates a draft if that request fails for any reason. Default is actual.
  • recipientType (required) — How to identify the recipient: iban (default), email, or phone.
  • recipientIban (required) — Recipient IBAN. Shown when recipientType is iban. Whitespace is stripped.
  • recipientEmail (required) — Recipient email address. Shown when recipientType is email. It is checked against a basic email format.
  • recipientPhone (required) — Recipient phone number with country code, e.g. +31612345678. Shown when recipientType is phone.
  • recipientName — Recipient name. Shown only for IBAN recipients. It is sent as the counterparty name when non-empty.
  • amount (required) — Amount in EUR, e.g. '10.00'. A comma decimal separator is accepted. It must be a positive number and is formatted to 2 decimals.
  • description (required) — Payment description, used for bookkeeping.

Output shape

One output item per input item. It contains success: true, paymentType (the type actually used: actual or draft), requestedPaymentType, payment (the object or ID extracted from the bunq response), and a message. A draft result tells the user to approve it in the bunq app.

The currency is fixed to EUR. Each item is processed separately, and all parameters are evaluated per item. If 'Continue on Fail' is on, a failed item returns { success: false, error } instead of stopping the workflow. Otherwise the node throws an error. The node fails if no payment data can be extracted from the response. The fallback mode catches any error from the actual payment, including network and validation errors, and logs a warning. It then creates a draft, so check paymentType in the output. The node manages the bunq session itself, using the bunqApi credentials, which must include a private key for request signing. Calls are rate-limited, with at most 5 POST requests per 3 seconds.

Examples

Example 1: Pay a supplier invoice by IBAN immediately

monetaryAccountId=12345, paymentType=actual, recipientType=iban, recipientIban=NL91ABNA0417164300, recipientName=Supplier BV, amount=125.50, description=Invoice 2024-001

Example 2: Create a payment that a human must approve before money moves

paymentType=draft, recipientType=email, recipientEmail=friend@example.com, amount=20.00, description=Dinner split

Example 3: Automated payout that degrades to a draft if the API key lacks payment permission

paymentType=actualWithDraftFallback, recipientType=phone, recipientPhone=+31612345678, amount=10.00, description=Refund. Then branch on the paymentType output field.

Links

Discussion