API reference
Bank accounts
The accounts shown on invoices so customers know where to pay.
Bank accounts appear at the bottom of invoices. Pass a bank_details_id when creating an invoice to choose which one.
List bank accounts, or get one by id
GET
/v1/bank-detailsquery searches name, IBAN and account number.
Needs the bank_details:read permission
Query parameters
idbank account idbank_details_
querytextUp to 200 characters
limitnumber1–50, default 20
afterbank account idbank_details_
beforebank account idbank_details_
Request
curl https://api.zulu.ie/v1/bank-details \
-H "Authorization: Bearer $ZULU_API_KEY" \
-H "Zulu-Business-Id: $ZULU_BUSINESS_ID"Example response200
Response · 200
{
"data": [
{
"id": "bank_details_3f2b8c1e-7a6d-4e5f-9b0a-1c2d3e4f5a6b",
"created_at": "2026-10-27T09:30:00.000Z",
"updated_at": "2026-10-27T09:30:00.000Z",
"name": "Main",
"bic": "AIBKIE2D",
"iban": "IE29AIBK93115212345678",
"account_number": null,
"sort_code": null
}
],
"has_more": false
}Create a bank account
POST
/v1/bank-detailsNeeds the bank_details:write permission
Body
nametextrequiredUp to 200 characters
bictextUp to 11 characters
ibantextUp to 34 characters
account_numbertextUp to 30 characters
sort_codetextUp to 20 characters
Request
curl -X POST https://api.zulu.ie/v1/bank-details \
-H "Authorization: Bearer $ZULU_API_KEY" \
-H "Zulu-Business-Id: $ZULU_BUSINESS_ID" \
-H "Content-Type: application/json" \
-d '{
"name": "Main"
}'Example response201
Response · 201
{
"id": "bank_details_3f2b8c1e-7a6d-4e5f-9b0a-1c2d3e4f5a6b",
"created_at": "2026-10-27T09:30:00.000Z",
"updated_at": "2026-10-27T09:30:00.000Z",
"name": "Main",
"bic": "AIBKIE2D",
"iban": "IE29AIBK93115212345678",
"account_number": null,
"sort_code": null
}Update a bank account
PATCH
/v1/bank-detailsNeeds the bank_details:write permission
Body
idbank account idrequirednametextUp to 200 characters
bictextUp to 11 characters
ibantextUp to 34 characters
account_numbertextUp to 30 characters
sort_codetextUp to 20 characters
Request
curl -X PATCH https://api.zulu.ie/v1/bank-details \
-H "Authorization: Bearer $ZULU_API_KEY" \
-H "Zulu-Business-Id: $ZULU_BUSINESS_ID" \
-H "Content-Type: application/json" \
-d '{
"id": "bank_details_3f2b8c1e-7a6d-4e5f-9b0a-1c2d3e4f5a6b"
}'Example response200
Response · 200
{
"id": "bank_details_3f2b8c1e-7a6d-4e5f-9b0a-1c2d3e4f5a6b",
"created_at": "2026-10-27T09:30:00.000Z",
"updated_at": "2026-10-27T09:30:00.000Z",
"name": "Main",
"bic": "AIBKIE2D",
"iban": "IE29AIBK93115212345678",
"account_number": null,
"sort_code": null
}Delete a bank account
DELETE
/v1/bank-detailsNeeds the bank_details:delete permission
Body
idbank account idrequired
Request
curl -X DELETE https://api.zulu.ie/v1/bank-details \
-H "Authorization: Bearer $ZULU_API_KEY" \
-H "Zulu-Business-Id: $ZULU_BUSINESS_ID" \
-H "Content-Type: application/json" \
-d '{
"id": "bank_details_3f2b8c1e-7a6d-4e5f-9b0a-1c2d3e4f5a6b"
}'Returns 204 with no body.