Contacts
List all contacts
Returns a paginated list of contacts in the administration.
Searching for contacts can be done by providing the query
parameter with search terms. The API searches for matches in the following contact fields:
company_name
attention
firstname
lastname
address1
address2
zipcode
city
country
email
phone
customer_id
tax_number
chamber_of_commerce
bank_account
Parameters
Parameter | Type | Description |
---|---|---|
per_page |
Integer |
|
page |
Integer |
|
query |
String |
|
include_archived |
Boolean |
|
todo |
String |
Example: return a list of contacts
Request
curl -s -H "Content-Type: application/json" -H "Authorization: Bearer 84ec207ad0154a508f798e615a998ac1fd752926d00f955fb1df3e144cba44ab" \
-XGET \
https://moneybird.com/api/v2/123/contacts.json?
Response
Status: 200 OK
[
{
"id": "446241539196192144",
"administration_id": 123,
"company_name": "Foobar Holding B.V.",
"firstname": "",
"lastname": "",
"address1": "Hoofdstraat 12",
"address2": "",
"zipcode": "1234AB",
"city": "Amsterdam",
"country": "NL",
"phone": "",
"delivery_method": "Email",
"customer_id": "3",
"tax_number": "",
"chamber_of_commerce": "",
"bank_account": "",
"is_trusted": false,
"max_transfer_amount": null,
"attention": "",
"email": "info@example.com",
"email_ubl": true,
"send_invoices_to_attention": "",
"send_invoices_to_email": "info@example.com",
"send_estimates_to_attention": "",
"send_estimates_to_email": "info@example.com",
"sepa_active": false,
"sepa_iban": "",
"sepa_iban_account_name": "",
"sepa_bic": "",
"sepa_mandate_id": "",
"sepa_mandate_date": null,
"sepa_sequence_type": "RCUR",
"credit_card_number": "",
"credit_card_reference": "",
"credit_card_type": null,
"tax_number_validated_at": null,
"tax_number_valid": null,
"invoice_workflow_id": null,
"estimate_workflow_id": null,
"si_identifier": "",
"si_identifier_type": null,
"moneybird_payments_mandate": false,
"created_at": "2025-02-17T10:45:16.566Z",
"updated_at": "2025-02-17T10:45:16.566Z",
"version": 1739789116,
"sales_invoices_url": "https://moneybird.dev/123/sales_invoices/7ab05c883f18a2bbcfab7ae5edde8fc0dfa3a45259f2ab7c0b37160473f21de3/all",
"notes": [],
"custom_fields": [],
"contact_people": [],
"archived": false,
"events": [
{
"administration_id": 123,
"user_id": 17397890963220,
"action": "contact_created",
"link_entity_id": null,
"link_entity_type": null,
"data": {},
"created_at": "2025-02-17T10:45:16.569Z",
"updated_at": "2025-02-17T10:45:16.569Z"
}
]
},
{
"id": "446241539129083267",
"administration_id": 123,
"company_name": "Foobar Holding B.V.",
"firstname": null,
"lastname": "Appleseed",
"address1": "Hoofdstraat 12",
"address2": "",
"zipcode": "1234 AB",
"city": "Amsterdam",
"country": "NL",
"phone": "",
"delivery_method": "Email",
"customer_id": "1",
"tax_number": "",
"chamber_of_commerce": "",
"bank_account": "",
"is_trusted": false,
"max_transfer_amount": null,
"attention": "",
"email": "info@example.com",
"email_ubl": true,
"send_invoices_to_attention": "",
"send_invoices_to_email": "info@example.com",
"send_estimates_to_attention": "",
"send_estimates_to_email": "info@example.com",
"sepa_active": false,
"sepa_iban": "",
"sepa_iban_account_name": "",
"sepa_bic": "",
"sepa_mandate_id": "",
"sepa_mandate_date": null,
"sepa_sequence_type": "RCUR",
"credit_card_number": "",
"credit_card_reference": "",
"credit_card_type": null,
"tax_number_validated_at": null,
"tax_number_valid": null,
"invoice_workflow_id": null,
"estimate_workflow_id": null,
"si_identifier": "",
"si_identifier_type": null,
"moneybird_payments_mandate": false,
"created_at": "2025-02-17T10:45:16.501Z",
"updated_at": "2025-02-17T10:45:16.528Z",
"version": 1739789116,
"sales_invoices_url": "https://moneybird.dev/123/sales_invoices/54fb8a004d3ddb2ef2800bc125eb869b362ddb6ea5fcf670a7a7a25066f6f0c2/all",
"notes": [],
"custom_fields": [],
"contact_people": [
{
"id": "446241539135374725",
"contact_id": "446241539129083267",
"administration_id": 123,
"firstname": "John",
"lastname": "Appleseed",
"phone": null,
"email": null,
"department": null,
"created_at": "2025-02-17T10:45:16.507Z",
"updated_at": "2025-02-17T10:45:16.507Z",
"version": 1739789116
},
{
"id": "446241539205629331",
"contact_id": "446241539129083267",
"administration_id": 123,
"firstname": "Jan",
"lastname": "Janssen",
"phone": "123-456-2346",
"email": "janjanssen@dev.null.moneybird.net",
"department": "Sales",
"created_at": "2025-02-17T10:45:16.572Z",
"updated_at": "2025-02-17T10:45:16.572Z",
"version": 1739789116
},
{
"id": "446241539208775061",
"contact_id": "446241539129083267",
"administration_id": 123,
"firstname": "Foo",
"lastname": "Bar",
"phone": "123-456-2346",
"email": "janjanssen@dev.null.moneybird.net",
"department": "Sales",
"created_at": "2025-02-17T10:45:16.577Z",
"updated_at": "2025-02-17T10:45:16.577Z",
"version": 1739789116
}
],
"archived": false,
"events": [
{
"administration_id": 123,
"user_id": 17397890963220,
"action": "contact_created",
"link_entity_id": null,
"link_entity_type": null,
"data": {},
"created_at": "2025-02-17T10:45:16.518Z",
"updated_at": "2025-02-17T10:45:16.518Z"
}
]
},
{
"id": "446241539175220618",
"administration_id": 123,
"company_name": "Foobar Holding B.V.",
"firstname": null,
"lastname": null,
"address1": "1 Infinite Loop",
"address2": "",
"zipcode": "123456",
"city": "Redmond",
"country": "NL",
"phone": "",
"delivery_method": "Email",
"customer_id": "2",
"tax_number": "",
"chamber_of_commerce": "",
"bank_account": "NL50TEST0166567191",
"is_trusted": false,
"max_transfer_amount": null,
"attention": "",
"email": "info@example.com",
"email_ubl": true,
"send_invoices_to_attention": "",
"send_invoices_to_email": "info@example.com",
"send_estimates_to_attention": "",
"send_estimates_to_email": "info@example.com",
"sepa_active": true,
"sepa_iban": "NL50TEST0166567191",
"sepa_iban_account_name": "Foobar Holding B.V.",
"sepa_bic": "RABONL2U",
"sepa_mandate_id": "MAN12313",
"sepa_mandate_date": "2014-01-01",
"sepa_sequence_type": "RCUR",
"credit_card_number": "",
"credit_card_reference": "",
"credit_card_type": null,
"tax_number_validated_at": null,
"tax_number_valid": null,
"invoice_workflow_id": null,
"estimate_workflow_id": null,
"si_identifier": "",
"si_identifier_type": null,
"moneybird_payments_mandate": false,
"created_at": "2025-02-17T10:45:16.544Z",
"updated_at": "2025-02-17T10:45:16.544Z",
"version": 1739789116,
"sales_invoices_url": "https://moneybird.dev/123/sales_invoices/02c2c8b76d008a289bec5c8f4d8368f016d6cdfa994f803a815863770e7bfb96/all",
"notes": [],
"custom_fields": [],
"contact_people": [
{
"id": "446241539181512076",
"contact_id": "446241539175220618",
"administration_id": 123,
"firstname": "John",
"lastname": "Doe",
"phone": null,
"email": null,
"department": null,
"created_at": "2025-02-17T10:45:16.552Z",
"updated_at": "2025-02-17T10:45:16.552Z",
"version": 1739789116
}
],
"archived": false,
"events": [
{
"administration_id": 123,
"user_id": 17397890963220,
"action": "contact_created",
"link_entity_id": null,
"link_entity_type": null,
"data": {},
"created_at": "2025-02-17T10:45:16.556Z",
"updated_at": "2025-02-17T10:45:16.556Z"
}
]
}
]
Example: allows filtering by name
Request
curl -s -H "Content-Type: application/json" -H "Authorization: Bearer 84ec207ad0154a508f798e615a998ac1fd752926d00f955fb1df3e144cba44ab" \
-XGET \
https://moneybird.com/api/v2/123/contacts.json?query=appleseed
Response
Status: 200 OK
[
{
"id": "446241541878449560",
"administration_id": 123,
"company_name": "Foobar Holding B.V.",
"firstname": null,
"lastname": "Appleseed",
"address1": "Hoofdstraat 12",
"address2": "",
"zipcode": "1234 AB",
"city": "Amsterdam",
"country": "NL",
"phone": "",
"delivery_method": "Email",
"customer_id": "1",
"tax_number": "",
"chamber_of_commerce": "",
"bank_account": "",
"is_trusted": false,
"max_transfer_amount": null,
"attention": "",
"email": "info@example.com",
"email_ubl": true,
"send_invoices_to_attention": "",
"send_invoices_to_email": "info@example.com",
"send_estimates_to_attention": "",
"send_estimates_to_email": "info@example.com",
"sepa_active": false,
"sepa_iban": "",
"sepa_iban_account_name": "",
"sepa_bic": "",
"sepa_mandate_id": "",
"sepa_mandate_date": null,
"sepa_sequence_type": "RCUR",
"credit_card_number": "",
"credit_card_reference": "",
"credit_card_type": null,
"tax_number_validated_at": null,
"tax_number_valid": null,
"invoice_workflow_id": null,
"estimate_workflow_id": null,
"si_identifier": "",
"si_identifier_type": null,
"moneybird_payments_mandate": false,
"created_at": "2025-02-17T10:45:19.124Z",
"updated_at": "2025-02-17T10:45:19.205Z",
"version": 1739789119,
"sales_invoices_url": "https://moneybird.dev/123/sales_invoices/e261499c695d7a715850dfbb35a82b685bfc00a350571607eb5abdabfbf6ce1d/all",
"notes": [],
"custom_fields": [],
"contact_people": [
{
"id": "446241541883692442",
"contact_id": "446241541878449560",
"administration_id": 123,
"firstname": "John",
"lastname": "Appleseed",
"phone": null,
"email": null,
"department": null,
"created_at": "2025-02-17T10:45:19.129Z",
"updated_at": "2025-02-17T10:45:19.129Z",
"version": 1739789119
},
{
"id": "446241542072436136",
"contact_id": "446241541878449560",
"administration_id": 123,
"firstname": "Jan",
"lastname": "Janssen",
"phone": "123-456-2346",
"email": "janjanssen@dev.null.moneybird.net",
"department": "Sales",
"created_at": "2025-02-17T10:45:19.308Z",
"updated_at": "2025-02-17T10:45:19.308Z",
"version": 1739789119
},
{
"id": "446241542074533290",
"contact_id": "446241541878449560",
"administration_id": 123,
"firstname": "Foo",
"lastname": "Bar",
"phone": "123-456-2346",
"email": "janjanssen@dev.null.moneybird.net",
"department": "Sales",
"created_at": "2025-02-17T10:45:19.310Z",
"updated_at": "2025-02-17T10:45:19.310Z",
"version": 1739789119
}
],
"archived": false,
"events": [
{
"administration_id": 123,
"user_id": 17397890963220,
"action": "contact_created",
"link_entity_id": null,
"link_entity_type": null,
"data": {},
"created_at": "2025-02-17T10:45:19.197Z",
"updated_at": "2025-02-17T10:45:19.197Z"
}
]
}
]
Example: allows filtering by name in combination with pagination
Request
curl -s -H "Content-Type: application/json" -H "Authorization: Bearer 84ec207ad0154a508f798e615a998ac1fd752926d00f955fb1df3e144cba44ab" \
-XGET \
https://moneybird.com/api/v2/123/contacts.json?page=2&per_page=1&query=appleseed
Response
Example: returns empty list when no matches with filter
Request
curl -s -H "Content-Type: application/json" -H "Authorization: Bearer 84ec207ad0154a508f798e615a998ac1fd752926d00f955fb1df3e144cba44ab" \
-XGET \
https://moneybird.com/api/v2/123/contacts.json?query=sdfadsfdsafdsafadsgasdfadsfdsf
Response
Example: returns paginated contacts on page 1
Request
curl -s -H "Content-Type: application/json" -H "Authorization: Bearer 84ec207ad0154a508f798e615a998ac1fd752926d00f955fb1df3e144cba44ab" \
-XGET \
https://moneybird.com/api/v2/123/contacts.json?per_page=1
Response
Status: 200 OK
[
{
"id": "446241552890594788",
"administration_id": 123,
"company_name": "Foobar Holding B.V.",
"firstname": "",
"lastname": "",
"address1": "Hoofdstraat 12",
"address2": "",
"zipcode": "1234AB",
"city": "Amsterdam",
"country": "NL",
"phone": "",
"delivery_method": "Email",
"customer_id": "3",
"tax_number": "",
"chamber_of_commerce": "",
"bank_account": "",
"is_trusted": false,
"max_transfer_amount": null,
"attention": "",
"email": "info@example.com",
"email_ubl": true,
"send_invoices_to_attention": "",
"send_invoices_to_email": "info@example.com",
"send_estimates_to_attention": "",
"send_estimates_to_email": "info@example.com",
"sepa_active": false,
"sepa_iban": "",
"sepa_iban_account_name": "",
"sepa_bic": "",
"sepa_mandate_id": "",
"sepa_mandate_date": null,
"sepa_sequence_type": "RCUR",
"credit_card_number": "",
"credit_card_reference": "",
"credit_card_type": null,
"tax_number_validated_at": null,
"tax_number_valid": null,
"invoice_workflow_id": null,
"estimate_workflow_id": null,
"si_identifier": "",
"si_identifier_type": null,
"moneybird_payments_mandate": false,
"created_at": "2025-02-17T10:45:29.625Z",
"updated_at": "2025-02-17T10:45:29.625Z",
"version": 1739789129,
"sales_invoices_url": "https://moneybird.dev/123/sales_invoices/07f1bebed1a46def5e115e4dc121718d1785657e775abb8ace6c5c86556cede9/all",
"notes": [],
"custom_fields": [],
"contact_people": [],
"archived": false,
"events": [
{
"administration_id": 123,
"user_id": 17397890963220,
"action": "contact_created",
"link_entity_id": null,
"link_entity_type": null,
"data": {},
"created_at": "2025-02-17T10:45:29.628Z",
"updated_at": "2025-02-17T10:45:29.628Z"
}
]
}
]
Example: returns paginated contacts on page 2
Request
curl -s -H "Content-Type: application/json" -H "Authorization: Bearer 84ec207ad0154a508f798e615a998ac1fd752926d00f955fb1df3e144cba44ab" \
-XGET \
https://moneybird.com/api/v2/123/contacts.json?page=2&per_page=1
Response
Status: 200 OK
[
{
"id": "446241553001743852",
"administration_id": 123,
"company_name": "Foobar Holding B.V.",
"firstname": null,
"lastname": "Appleseed",
"address1": "Hoofdstraat 12",
"address2": "",
"zipcode": "1234 AB",
"city": "Amsterdam",
"country": "NL",
"phone": "",
"delivery_method": "Email",
"customer_id": "1",
"tax_number": "",
"chamber_of_commerce": "",
"bank_account": "",
"is_trusted": false,
"max_transfer_amount": null,
"attention": "",
"email": "info@example.com",
"email_ubl": true,
"send_invoices_to_attention": "",
"send_invoices_to_email": "info@example.com",
"send_estimates_to_attention": "",
"send_estimates_to_email": "info@example.com",
"sepa_active": false,
"sepa_iban": "",
"sepa_iban_account_name": "",
"sepa_bic": "",
"sepa_mandate_id": "",
"sepa_mandate_date": null,
"sepa_sequence_type": "RCUR",
"credit_card_number": "",
"credit_card_reference": "",
"credit_card_type": null,
"tax_number_validated_at": null,
"tax_number_valid": null,
"invoice_workflow_id": null,
"estimate_workflow_id": null,
"si_identifier": "",
"si_identifier_type": null,
"moneybird_payments_mandate": false,
"created_at": "2025-02-17T10:45:29.731Z",
"updated_at": "2025-02-17T10:45:29.747Z",
"version": 1739789129,
"sales_invoices_url": "https://moneybird.dev/123/sales_invoices/261f61c45af526de06d55bbbfecf94e58761c8b8dd8725f829ace3f7471ca790/all",
"notes": [],
"custom_fields": [],
"contact_people": [
{
"id": "446241553005938158",
"contact_id": "446241553001743852",
"administration_id": 123,
"firstname": "John",
"lastname": "Appleseed",
"phone": null,
"email": null,
"department": null,
"created_at": "2025-02-17T10:45:29.736Z",
"updated_at": "2025-02-17T10:45:29.736Z",
"version": 1739789129
},
{
"id": "446241553053124092",
"contact_id": "446241553001743852",
"administration_id": 123,
"firstname": "Jan",
"lastname": "Janssen",
"phone": "123-456-2346",
"email": "janjanssen@dev.null.moneybird.net",
"department": "Sales",
"created_at": "2025-02-17T10:45:29.781Z",
"updated_at": "2025-02-17T10:45:29.781Z",
"version": 1739789129
},
{
"id": "446241553056269822",
"contact_id": "446241553001743852",
"administration_id": 123,
"firstname": "Foo",
"lastname": "Bar",
"phone": "123-456-2346",
"email": "janjanssen@dev.null.moneybird.net",
"department": "Sales",
"created_at": "2025-02-17T10:45:29.783Z",
"updated_at": "2025-02-17T10:45:29.783Z",
"version": 1739789129
}
],
"archived": false,
"events": [
{
"administration_id": 123,
"user_id": 17397890963220,
"action": "contact_created",
"link_entity_id": null,
"link_entity_type": null,
"data": {},
"created_at": "2025-02-17T10:45:29.742Z",
"updated_at": "2025-02-17T10:45:29.742Z"
}
]
}
]
Example: returns an error when too many contacts are requested
Request
curl -s -H "Content-Type: application/json" -H "Authorization: Bearer 84ec207ad0154a508f798e615a998ac1fd752926d00f955fb1df3e144cba44ab" \
-XGET \
https://moneybird.com/api/v2/123/contacts.json?per_page=101
Response
Status: 400 Bad Request
{
"error": "per_page does not have a valid value"
}
Filter contacts
Returns a paginated list of all contacts in the administration.
The filter
argument allows you to filter the list of contacts. Filters are a combination of keys and values,
separated by a comma: first_name:henk,last_name:jansen
. The available options for filtering are:
Filter | Type | Default | Description |
created_after | String |
 | Select contacts created after the given time (exclusive). ISO 8601 formatted string. The time to compare with is in UTC timezone |
updated_after | String |
 | Select contacts updated after the given time (exclusive). ISO 8601 formatted string. The time to compare with is in UTC timezone |
first_name | String |
 | Select contacts with the given first name. Case-insensitive |
last_name | String |
 | Select contacts with the given last name. Case-insensitive |
Parameters
Parameter | Type | Description |
---|---|---|
filter |
String |
|
include_archived |
Grape::api::boolean |
|
per_page |
Integer |
Example: returns all contacts created after given datetime
Request
curl -s -H "Content-Type: application/json" -H "Authorization: Bearer 84ec207ad0154a508f798e615a998ac1fd752926d00f955fb1df3e144cba44ab" \
-XGET \
https://moneybird.com/api/v2/123/contacts/filter.json?filter=created_after%3A2025-02-16+10%3A45%3A30+UTC
Response
Status: 200 OK
[
{
"id": "446241553532323380",
"administration_id": 123,
"company_name": "Foobar Holding B.V.",
"firstname": "",
"lastname": "",
"address1": "Hoofdstraat 12",
"address2": "",
"zipcode": "1234AB",
"city": "Amsterdam",
"country": "NL",
"phone": "",
"delivery_method": "Email",
"customer_id": "3",
"tax_number": "",
"chamber_of_commerce": "",
"bank_account": "",
"is_trusted": false,
"max_transfer_amount": null,
"attention": "",
"email": "info@example.com",
"email_ubl": true,
"send_invoices_to_attention": "",
"send_invoices_to_email": "info@example.com",
"send_estimates_to_attention": "",
"send_estimates_to_email": "info@example.com",
"sepa_active": false,
"sepa_iban": "",
"sepa_iban_account_name": "",
"sepa_bic": "",
"sepa_mandate_id": "",
"sepa_mandate_date": null,
"sepa_sequence_type": "RCUR",
"credit_card_number": "",
"credit_card_reference": "",
"credit_card_type": null,
"tax_number_validated_at": null,
"tax_number_valid": null,
"invoice_workflow_id": null,
"estimate_workflow_id": null,
"si_identifier": "",
"si_identifier_type": null,
"moneybird_payments_mandate": false,
"created_at": "2025-02-17T10:45:30.238Z",
"updated_at": "2025-02-17T10:45:30.238Z",
"version": 1739789130,
"sales_invoices_url": "https://moneybird.dev/123/sales_invoices/3b71566dcecf056390dc66df195a1bc090de148795121956f0cfa75dbd7897b4/all",
"notes": [],
"custom_fields": [],
"contact_people": [],
"archived": false,
"events": [
{
"administration_id": 123,
"user_id": 17397890963220,
"action": "contact_created",
"link_entity_id": null,
"link_entity_type": null,
"data": {},
"created_at": "2025-02-17T10:45:30.241Z",
"updated_at": "2025-02-17T10:45:30.241Z"
}
]
},
{
"id": "446241553467311655",
"administration_id": 123,
"company_name": "Foobar Holding B.V.",
"firstname": null,
"lastname": "Appleseed",
"address1": "Hoofdstraat 12",
"address2": "",
"zipcode": "1234 AB",
"city": "Amsterdam",
"country": "NL",
"phone": "",
"delivery_method": "Email",
"customer_id": "1",
"tax_number": "",
"chamber_of_commerce": "",
"bank_account": "",
"is_trusted": false,
"max_transfer_amount": null,
"attention": "",
"email": "info@example.com",
"email_ubl": true,
"send_invoices_to_attention": "",
"send_invoices_to_email": "info@example.com",
"send_estimates_to_attention": "",
"send_estimates_to_email": "info@example.com",
"sepa_active": false,
"sepa_iban": "",
"sepa_iban_account_name": "",
"sepa_bic": "",
"sepa_mandate_id": "",
"sepa_mandate_date": null,
"sepa_sequence_type": "RCUR",
"credit_card_number": "",
"credit_card_reference": "",
"credit_card_type": null,
"tax_number_validated_at": null,
"tax_number_valid": null,
"invoice_workflow_id": null,
"estimate_workflow_id": null,
"si_identifier": "",
"si_identifier_type": null,
"moneybird_payments_mandate": false,
"created_at": "2025-02-17T10:45:30.175Z",
"updated_at": "2025-02-17T10:45:30.201Z",
"version": 1739789130,
"sales_invoices_url": "https://moneybird.dev/123/sales_invoices/7cb122799dd3bcf5516597c89b077828d9552a42a01ebf4036e5d2331aa244a2/all",
"notes": [],
"custom_fields": [],
"contact_people": [
{
"id": "446241553471505961",
"contact_id": "446241553467311655",
"administration_id": 123,
"firstname": "John",
"lastname": "Appleseed",
"phone": null,
"email": null,
"department": null,
"created_at": "2025-02-17T10:45:30.180Z",
"updated_at": "2025-02-17T10:45:30.180Z",
"version": 1739789130
}
],
"archived": false,
"events": [
{
"administration_id": 123,
"user_id": 17397890963220,
"action": "contact_created",
"link_entity_id": null,
"link_entity_type": null,
"data": {},
"created_at": "2025-02-17T10:45:30.188Z",
"updated_at": "2025-02-17T10:45:30.188Z"
}
]
},
{
"id": "446241553516594734",
"administration_id": 123,
"company_name": "Foobar Holding B.V.",
"firstname": null,
"lastname": null,
"address1": "1 Infinite Loop",
"address2": "",
"zipcode": "123456",
"city": "Redmond",
"country": "NL",
"phone": "",
"delivery_method": "Email",
"customer_id": "2",
"tax_number": "",
"chamber_of_commerce": "",
"bank_account": "NL50TEST0166567191",
"is_trusted": false,
"max_transfer_amount": null,
"attention": "",
"email": "info@example.com",
"email_ubl": true,
"send_invoices_to_attention": "",
"send_invoices_to_email": "info@example.com",
"send_estimates_to_attention": "",
"send_estimates_to_email": "info@example.com",
"sepa_active": true,
"sepa_iban": "NL50TEST0166567191",
"sepa_iban_account_name": "Foobar Holding B.V.",
"sepa_bic": "RABONL2U",
"sepa_mandate_id": "MAN12313",
"sepa_mandate_date": "2014-01-01",
"sepa_sequence_type": "RCUR",
"credit_card_number": "",
"credit_card_reference": "",
"credit_card_type": null,
"tax_number_validated_at": null,
"tax_number_valid": null,
"invoice_workflow_id": null,
"estimate_workflow_id": null,
"si_identifier": "",
"si_identifier_type": null,
"moneybird_payments_mandate": false,
"created_at": "2025-02-17T10:45:30.222Z",
"updated_at": "2025-02-17T10:45:30.222Z",
"version": 1739789130,
"sales_invoices_url": "https://moneybird.dev/123/sales_invoices/1c1f239a4680b08a5f6f2c086015a3e25a4737a6c69ee9be45681a76e844f1f5/all",
"notes": [],
"custom_fields": [],
"contact_people": [
{
"id": "446241553519740464",
"contact_id": "446241553516594734",
"administration_id": 123,
"firstname": "John",
"lastname": "Doe",
"phone": null,
"email": null,
"department": null,
"created_at": "2025-02-17T10:45:30.226Z",
"updated_at": "2025-02-17T10:45:30.226Z",
"version": 1739789130
}
],
"archived": false,
"events": [
{
"administration_id": 123,
"user_id": 17397890963220,
"action": "contact_created",
"link_entity_id": null,
"link_entity_type": null,
"data": {},
"created_at": "2025-02-17T10:45:30.231Z",
"updated_at": "2025-02-17T10:45:30.231Z"
}
]
}
]
Example: returns only contacts updated after given datetime
Request
curl -s -H "Content-Type: application/json" -H "Authorization: Bearer 84ec207ad0154a508f798e615a998ac1fd752926d00f955fb1df3e144cba44ab" \
-XGET \
https://moneybird.com/api/v2/123/contacts/filter.json?filter=updated_after%3A2025-02-17+10%3A45%3A35+UTC
Response
Status: 200 OK
[
{
"id": "446241553799710281",
"administration_id": 123,
"company_name": "Foobar Holding B.V.",
"firstname": null,
"lastname": "foo",
"address1": "Hoofdstraat 12",
"address2": "",
"zipcode": "1234 AB",
"city": "Amsterdam",
"country": "NL",
"phone": "",
"delivery_method": "Email",
"customer_id": "1",
"tax_number": "",
"chamber_of_commerce": "",
"bank_account": "",
"is_trusted": false,
"max_transfer_amount": null,
"attention": "",
"email": "info@example.com",
"email_ubl": true,
"send_invoices_to_attention": "",
"send_invoices_to_email": "info@example.com",
"send_estimates_to_attention": "",
"send_estimates_to_email": "info@example.com",
"sepa_active": false,
"sepa_iban": "",
"sepa_iban_account_name": "",
"sepa_bic": "",
"sepa_mandate_id": "",
"sepa_mandate_date": null,
"sepa_sequence_type": "RCUR",
"credit_card_number": "",
"credit_card_reference": "",
"credit_card_type": null,
"tax_number_validated_at": null,
"tax_number_valid": null,
"invoice_workflow_id": null,
"estimate_workflow_id": null,
"si_identifier": "",
"si_identifier_type": null,
"moneybird_payments_mandate": false,
"created_at": "2025-02-17T10:45:30.493Z",
"updated_at": "2025-02-17T10:46:35.559Z",
"version": 1739789195,
"sales_invoices_url": "https://moneybird.dev/123/sales_invoices/821bc6fbde3399bd1b8e4fae5db68989a9276690ff25e17810165a1079715a68/all",
"notes": [],
"custom_fields": [],
"contact_people": [
{
"id": "446241553804953163",
"contact_id": "446241553799710281",
"administration_id": 123,
"firstname": "John",
"lastname": "Appleseed",
"phone": null,
"email": null,
"department": null,
"created_at": "2025-02-17T10:45:30.498Z",
"updated_at": "2025-02-17T10:45:30.498Z",
"version": 1739789130
}
],
"archived": false,
"events": [
{
"administration_id": 123,
"user_id": 17397890963220,
"action": "contact_created",
"link_entity_id": null,
"link_entity_type": null,
"data": {},
"created_at": "2025-02-17T10:45:30.505Z",
"updated_at": "2025-02-17T10:45:30.505Z"
}
]
}
]
Example: allows filtering by firstname
Request
curl -s -H "Content-Type: application/json" -H "Authorization: Bearer 84ec207ad0154a508f798e615a998ac1fd752926d00f955fb1df3e144cba44ab" \
-XGET \
https://moneybird.com/api/v2/123/contacts/filter.json?filter=first_name%3Apiet
Response
Status: 200 OK
[
{
"id": "446241554059757163",
"administration_id": 123,
"company_name": "Relation 1",
"firstname": "Piet",
"lastname": null,
"address1": null,
"address2": null,
"zipcode": null,
"city": null,
"country": "NL",
"phone": null,
"delivery_method": "Email",
"customer_id": "af8f31e870994c06c71cc8a505164873c840b0289609d9ef6b6df245d831ff29",
"tax_number": null,
"chamber_of_commerce": null,
"bank_account": null,
"is_trusted": false,
"max_transfer_amount": null,
"attention": null,
"email": null,
"email_ubl": false,
"send_invoices_to_attention": null,
"send_invoices_to_email": null,
"send_estimates_to_attention": null,
"send_estimates_to_email": null,
"sepa_active": false,
"sepa_iban": null,
"sepa_iban_account_name": null,
"sepa_bic": null,
"sepa_mandate_id": null,
"sepa_mandate_date": null,
"sepa_sequence_type": "RCUR",
"credit_card_number": null,
"credit_card_reference": null,
"credit_card_type": null,
"tax_number_validated_at": null,
"tax_number_valid": null,
"invoice_workflow_id": null,
"estimate_workflow_id": null,
"si_identifier": null,
"si_identifier_type": null,
"moneybird_payments_mandate": false,
"created_at": "2025-02-17T10:45:30.741Z",
"updated_at": "2025-02-17T10:45:30.745Z",
"version": 1739789130,
"sales_invoices_url": "https://moneybird.dev/123/sales_invoices/e158a25a891851a94481e9739f39b573482f06af4f52b6b5760acbda56983ba1/all",
"notes": [],
"custom_fields": [],
"contact_people": [],
"archived": false,
"events": []
}
]
List all ids and versions
Returns all contacts in the administration. The list contains the contact id and the version of the contact.
Check if the version of the contact is newer than the version you have stored locally, use the POST
variant for fetching contacts with the given ids.
Parameters
Parameter | Type | Description |
---|---|---|
filter |
String |
|
include_archived |
Grape::api::boolean |
Example: return a list of id's and version id's
Request
curl -s -H "Content-Type: application/json" -H "Authorization: Bearer 84ec207ad0154a508f798e615a998ac1fd752926d00f955fb1df3e144cba44ab" \
-XGET \
https://moneybird.com/api/v2/123/contacts/synchronization.json?
Response
Status: 200 OK
[
{
"id": "446241555137693366",
"version": 1739789131
},
{
"id": "446241555163907773",
"version": 1739789131
}
]
Example: retrieves the id's for synchronization with a filter
Request
curl -s -H "Content-Type: application/json" -H "Authorization: Bearer 84ec207ad0154a508f798e615a998ac1fd752926d00f955fb1df3e144cba44ab" \
-XGET \
https://moneybird.com/api/v2/123/contacts/synchronization.json?filter=first_name%3Ahenk
Response
Status: 200 OK
[
{
"id": "446241555365234385",
"version": 1739789131
}
]
Fetch contacts with given ids
Given a list of contact ids, returns the contact information belonging to the contacts. Returns a maximum of 100 contacts, even if more ids are provided.
Parameters
Parameter | Type | Description |
---|---|---|
ids |
Array[integer] |
Required |
Example: return a list of given ids
Request
curl -s -H "Content-Type: application/json" -H "Authorization: Bearer 84ec207ad0154a508f798e615a998ac1fd752926d00f955fb1df3e144cba44ab" \
-XPOST \
-d '{"ids":[446241555555026658,446241555606406891]}' \
https://moneybird.com/api/v2/123/contacts/synchronization.json
Response
Status: 200 OK
[
{
"id": "446241555555026658",
"administration_id": 123,
"company_name": "Bar Foo",
"firstname": null,
"lastname": null,
"address1": "Hoofdstraat 12",
"address2": "",
"zipcode": "1234AB",
"city": "Amsterdam",
"country": "NL",
"phone": "",
"delivery_method": "Email",
"customer_id": "3",
"tax_number": "",
"chamber_of_commerce": "",
"bank_account": "",
"is_trusted": false,
"max_transfer_amount": null,
"attention": "",
"email": "info@example.com",
"email_ubl": true,
"send_invoices_to_attention": "",
"send_invoices_to_email": "info@example.com",
"send_estimates_to_attention": "",
"send_estimates_to_email": "info@example.com",
"sepa_active": false,
"sepa_iban": "",
"sepa_iban_account_name": "",
"sepa_bic": "",
"sepa_mandate_id": "",
"sepa_mandate_date": null,
"sepa_sequence_type": "RCUR",
"credit_card_number": "",
"credit_card_reference": "",
"credit_card_type": null,
"tax_number_validated_at": null,
"tax_number_valid": null,
"invoice_workflow_id": null,
"estimate_workflow_id": null,
"si_identifier": "",
"si_identifier_type": null,
"moneybird_payments_mandate": false,
"created_at": "2025-02-17T10:45:32.165Z",
"updated_at": "2025-02-17T10:45:32.165Z",
"version": 1739789132,
"sales_invoices_url": "https://moneybird.dev/123/sales_invoices/e1804e64e1fead4c3b496d32d7d01710efd71962c1af7d0f4a67a65e99b3e8c0/all",
"notes": [],
"custom_fields": [],
"contact_people": [
{
"id": "446241555562366692",
"contact_id": "446241555555026658",
"administration_id": 123,
"firstname": "John",
"lastname": "Appleseed",
"phone": null,
"email": null,
"department": null,
"created_at": "2025-02-17T10:45:32.174Z",
"updated_at": "2025-02-17T10:45:32.174Z",
"version": 1739789132
}
],
"archived": false,
"events": [
{
"administration_id": 123,
"user_id": 17397890963220,
"action": "contact_created",
"link_entity_id": null,
"link_entity_type": null,
"data": {},
"created_at": "2025-02-17T10:45:32.186Z",
"updated_at": "2025-02-17T10:45:32.186Z"
}
]
},
{
"id": "446241555606406891",
"administration_id": 123,
"company_name": "Foo Bar",
"firstname": null,
"lastname": null,
"address1": "Hoofdstraat 12",
"address2": "",
"zipcode": "1234AB",
"city": "Amsterdam",
"country": "NL",
"phone": "",
"delivery_method": "Email",
"customer_id": "5",
"tax_number": "",
"chamber_of_commerce": "",
"bank_account": "",
"is_trusted": false,
"max_transfer_amount": null,
"attention": "",
"email": "info@example.com",
"email_ubl": true,
"send_invoices_to_attention": "",
"send_invoices_to_email": "info@example.com",
"send_estimates_to_attention": "",
"send_estimates_to_email": "info@example.com",
"sepa_active": false,
"sepa_iban": "",
"sepa_iban_account_name": "",
"sepa_bic": "",
"sepa_mandate_id": "",
"sepa_mandate_date": null,
"sepa_sequence_type": "RCUR",
"credit_card_number": "",
"credit_card_reference": "",
"credit_card_type": null,
"tax_number_validated_at": null,
"tax_number_valid": null,
"invoice_workflow_id": null,
"estimate_workflow_id": null,
"si_identifier": "",
"si_identifier_type": null,
"moneybird_payments_mandate": false,
"created_at": "2025-02-17T10:45:32.215Z",
"updated_at": "2025-02-17T10:45:32.215Z",
"version": 1739789132,
"sales_invoices_url": "https://moneybird.dev/123/sales_invoices/71e4fff9e5dd26ea185ee279fa4209b376ca51b1ce99c3f2d84b4d47d91ebcf3/all",
"notes": [],
"custom_fields": [],
"contact_people": [
{
"id": "446241555614795501",
"contact_id": "446241555606406891",
"administration_id": 123,
"firstname": "Mark",
"lastname": "van Vliet",
"phone": null,
"email": null,
"department": null,
"created_at": "2025-02-17T10:45:32.223Z",
"updated_at": "2025-02-17T10:45:32.223Z",
"version": 1739789132
}
],
"archived": false,
"events": [
{
"administration_id": 123,
"user_id": 17397890963220,
"action": "contact_created",
"link_entity_id": null,
"link_entity_type": null,
"data": {},
"created_at": "2025-02-17T10:45:32.233Z",
"updated_at": "2025-02-17T10:45:32.233Z"
}
]
}
]
Get contact
Returns all information about a contact.
Parameters
Parameter | Type | Description |
---|---|---|
include_archived |
Boolean |
Example: return a contact
Request
curl -s -H "Content-Type: application/json" -H "Authorization: Bearer 84ec207ad0154a508f798e615a998ac1fd752926d00f955fb1df3e144cba44ab" \
-XGET \
https://moneybird.com/api/v2/123/contacts/446241554210752111.json?
Response
Status: 200 OK
{
"id": "446241554210752111",
"administration_id": 123,
"company_name": "Foobar Holding B.V.",
"firstname": null,
"lastname": "Appleseed",
"address1": "Hoofdstraat 12",
"address2": "",
"zipcode": "1234 AB",
"city": "Amsterdam",
"country": "NL",
"phone": "",
"delivery_method": "Email",
"customer_id": "1",
"tax_number": "",
"chamber_of_commerce": "",
"bank_account": "",
"is_trusted": false,
"max_transfer_amount": null,
"attention": "",
"email": "info@example.com",
"email_ubl": true,
"send_invoices_to_attention": "",
"send_invoices_to_email": "info@example.com",
"send_estimates_to_attention": "",
"send_estimates_to_email": "info@example.com",
"sepa_active": false,
"sepa_iban": "",
"sepa_iban_account_name": "",
"sepa_bic": "",
"sepa_mandate_id": "",
"sepa_mandate_date": null,
"sepa_sequence_type": "RCUR",
"credit_card_number": "",
"credit_card_reference": "",
"credit_card_type": null,
"tax_number_validated_at": null,
"tax_number_valid": null,
"invoice_workflow_id": null,
"estimate_workflow_id": null,
"si_identifier": "",
"si_identifier_type": null,
"moneybird_payments_mandate": false,
"created_at": "2025-02-17T10:45:30.884Z",
"updated_at": "2025-02-17T10:45:30.911Z",
"version": 1739789130,
"sales_invoices_url": "https://moneybird.dev/123/sales_invoices/e6f4a99aa8eac97dd8572a2d1665ceaf205354789fee901b033ab729c0a49fc5/all",
"notes": [],
"custom_fields": [],
"contact_people": [
{
"id": "446241554218092145",
"contact_id": "446241554210752111",
"administration_id": 123,
"firstname": "John",
"lastname": "Appleseed",
"phone": null,
"email": null,
"department": null,
"created_at": "2025-02-17T10:45:30.891Z",
"updated_at": "2025-02-17T10:45:30.891Z",
"version": 1739789130
}
],
"archived": false,
"events": [
{
"administration_id": 123,
"user_id": 17397890963220,
"action": "contact_created",
"link_entity_id": null,
"link_entity_type": null,
"data": {},
"created_at": "2025-02-17T10:45:30.901Z",
"updated_at": "2025-02-17T10:45:30.901Z"
}
]
}
Example: returns sepa_iban as bank_account
Request
curl -s -H "Content-Type: application/json" -H "Authorization: Bearer 84ec207ad0154a508f798e615a998ac1fd752926d00f955fb1df3e144cba44ab" \
-XGET \
https://moneybird.com/api/v2/123/contacts/446241554473944701.json?
Response
Status: 200 OK
{
"id": "446241554473944701",
"administration_id": 123,
"company_name": "Foobar Holding B.V.",
"firstname": null,
"lastname": "Appleseed",
"address1": "Hoofdstraat 12",
"address2": "",
"zipcode": "1234 AB",
"city": "Amsterdam",
"country": "NL",
"phone": "",
"delivery_method": "Email",
"customer_id": "1",
"tax_number": "",
"chamber_of_commerce": "",
"bank_account": "NL50TEST0166567191",
"is_trusted": false,
"max_transfer_amount": null,
"attention": "",
"email": "info@example.com",
"email_ubl": true,
"send_invoices_to_attention": "",
"send_invoices_to_email": "info@example.com",
"send_estimates_to_attention": "",
"send_estimates_to_email": "info@example.com",
"sepa_active": false,
"sepa_iban": "NL50TEST0166567191",
"sepa_iban_account_name": "",
"sepa_bic": "",
"sepa_mandate_id": "",
"sepa_mandate_date": null,
"sepa_sequence_type": "RCUR",
"credit_card_number": "",
"credit_card_reference": "",
"credit_card_type": null,
"tax_number_validated_at": null,
"tax_number_valid": null,
"invoice_workflow_id": null,
"estimate_workflow_id": null,
"si_identifier": "",
"si_identifier_type": null,
"moneybird_payments_mandate": false,
"created_at": "2025-02-17T10:45:31.135Z",
"updated_at": "2025-02-17T10:45:31.224Z",
"version": 1739789131,
"sales_invoices_url": "https://moneybird.dev/123/sales_invoices/689add66ebef9d2de036ecae68d413e92d553e523e087bd365c9de5bd7da644c/all",
"notes": [],
"custom_fields": [],
"contact_people": [
{
"id": "446241554484430463",
"contact_id": "446241554473944701",
"administration_id": 123,
"firstname": "John",
"lastname": "Appleseed",
"phone": null,
"email": null,
"department": null,
"created_at": "2025-02-17T10:45:31.146Z",
"updated_at": "2025-02-17T10:45:31.146Z",
"version": 1739789131
}
],
"archived": false,
"events": [
{
"administration_id": 123,
"user_id": 17397890963220,
"action": "contact_created",
"link_entity_id": null,
"link_entity_type": null,
"data": {},
"created_at": "2025-02-17T10:45:31.160Z",
"updated_at": "2025-02-17T10:45:31.160Z"
}
]
}
Example: returns 404 when contact does not exist
Request
curl -s -H "Content-Type: application/json" -H "Authorization: Bearer 84ec207ad0154a508f798e615a998ac1fd752926d00f955fb1df3e144cba44ab" \
-XGET \
https://moneybird.com/api/v2/123/contacts/34123123.json?
Response
Status: 404 Not Found
{
"error": "record not found",
"symbolic": {
"id": "not_found"
}
}
Get contact by customer id
Returns all information about a contact by the given customer id
Parameters
Parameter | Type | Description |
---|---|---|
customer_id |
String |
Required Should be unique for the administration. |
Example: return a contact
Request
curl -s -H "Content-Type: application/json" -H "Authorization: Bearer 84ec207ad0154a508f798e615a998ac1fd752926d00f955fb1df3e144cba44ab" \
-XGET \
https://moneybird.com/api/v2/123/contacts/customer_id/1.json?
Response
Status: 200 OK
{
"id": "446241554811586202",
"administration_id": 123,
"company_name": "Foobar Holding B.V.",
"firstname": null,
"lastname": "Appleseed",
"address1": "Hoofdstraat 12",
"address2": "",
"zipcode": "1234 AB",
"city": "Amsterdam",
"country": "NL",
"phone": "",
"delivery_method": "Email",
"customer_id": "1",
"tax_number": "",
"chamber_of_commerce": "",
"bank_account": "",
"is_trusted": false,
"max_transfer_amount": null,
"attention": "",
"email": "info@example.com",
"email_ubl": true,
"send_invoices_to_attention": "",
"send_invoices_to_email": "info@example.com",
"send_estimates_to_attention": "",
"send_estimates_to_email": "info@example.com",
"sepa_active": false,
"sepa_iban": "",
"sepa_iban_account_name": "",
"sepa_bic": "",
"sepa_mandate_id": "",
"sepa_mandate_date": null,
"sepa_sequence_type": "RCUR",
"credit_card_number": "",
"credit_card_reference": "",
"credit_card_type": null,
"tax_number_validated_at": null,
"tax_number_valid": null,
"invoice_workflow_id": null,
"estimate_workflow_id": null,
"si_identifier": "",
"si_identifier_type": null,
"moneybird_payments_mandate": false,
"created_at": "2025-02-17T10:45:31.456Z",
"updated_at": "2025-02-17T10:45:31.487Z",
"version": 1739789131,
"sales_invoices_url": "https://moneybird.dev/123/sales_invoices/21c19d62c7c70905ceb7110afe61fc8e752bec59895e7246c260041ed802dd49/all",
"notes": [],
"custom_fields": [],
"contact_people": [
{
"id": "446241554823120540",
"contact_id": "446241554811586202",
"administration_id": 123,
"firstname": "John",
"lastname": "Appleseed",
"phone": null,
"email": null,
"department": null,
"created_at": "2025-02-17T10:45:31.469Z",
"updated_at": "2025-02-17T10:45:31.469Z",
"version": 1739789131
}
],
"archived": false,
"events": [
{
"administration_id": 123,
"user_id": 17397890963220,
"action": "contact_created",
"link_entity_id": null,
"link_entity_type": null,
"data": {},
"created_at": "2025-02-17T10:45:31.477Z",
"updated_at": "2025-02-17T10:45:31.477Z"
}
]
}
Example: returns 404 when contact does not exist
Request
curl -s -H "Content-Type: application/json" -H "Authorization: Bearer 84ec207ad0154a508f798e615a998ac1fd752926d00f955fb1df3e144cba44ab" \
-XGET \
https://moneybird.com/api/v2/123/contacts/customer_id/34123123.json?
Response
Status: 404 Not Found
{
"error": "record not found",
"symbolic": {
"customer_id": "not_found"
}
}
Create a new contact
Creating a new contact in the administration requires at least a company_name
or a firstname
and lastname
.
When filling a custom field, both id
and value
are required. See the custom field example for more information.
Parameters
Parameter | Type | Description |
---|---|---|
contact[company_name] |
String |
A contact requires a non-blank |
contact[address1] |
String |
|
contact[address2] |
String |
|
contact[zipcode] |
String |
|
contact[city] |
String |
|
contact[country] |
String |
ISO two-character country code, e.g. NL or DE. |
contact[phone] |
String |
|
contact[delivery_method] |
String |
Can be |
contact[customer_id] |
String |
Will be assigned automatically if empty. Should be unique for the administration. |
contact[tax_number] |
String |
|
contact[firstname] |
String |
A contact requires a non-blank |
contact[lastname] |
String |
A contact requires a non-blank |
contact[chamber_of_commerce] |
String |
|
contact[bank_account] |
String |
|
contact[send_invoices_to_attention] |
String |
|
contact[send_invoices_to_email] |
String |
Should be one or more valid email addresses, separated by a comma. |
contact[send_estimates_to_attention] |
String |
|
contact[send_estimates_to_email] |
String |
Should be one or more valid email addresses, separated by a comma. |
contact[sepa_active] |
Boolean |
When |
contact[sepa_iban] |
String |
Should be a valid IBAN. |
contact[sepa_iban_account_name] |
String |
|
contact[sepa_bic] |
String |
Should be a valid BIC. |
contact[sepa_mandate_id] |
String |
Should be unique for the administration. |
contact[sepa_mandate_date] |
String |
Should be a date in the past. |
contact[sepa_sequence_type] |
String |
Can be |
contact[si_identifier_type] |
String |
Can be |
contact[si_identifier] |
String |
|
contact[invoice_workflow_id] |
Integer |
Should be a valid invoice workflow id. |
contact[estimate_workflow_id] |
Integer |
Should be a valid estimate workflow id. |
contact[email_ubl] |
Boolean |
|
contact[direct_debit] |
Boolean |
|
contact[custom_fields_attributes][id] |
Integer |
Required |
contact[custom_fields_attributes][value] |
String |
Required |
contact[contact_person][firstname] |
String |
Required |
contact[contact_person][lastname] |
String |
Required |
from_checkout |
Boolean |
Example: create a new contact
Request
curl -s -H "Content-Type: application/json" -H "Authorization: Bearer 84ec207ad0154a508f798e615a998ac1fd752926d00f955fb1df3e144cba44ab" \
-XPOST \
-d '{"contact":{"company_name":"Test B.V."}}' \
https://moneybird.com/api/v2/123/contacts.json
Response
Status: 201 Created
{
"id": "446241555871696639",
"administration_id": 123,
"company_name": "Test B.V.",
"firstname": "",
"lastname": "",
"address1": "",
"address2": "",
"zipcode": "",
"city": "",
"country": "NL",
"phone": "",
"delivery_method": "Email",
"customer_id": "3",
"tax_number": "",
"chamber_of_commerce": "",
"bank_account": "",
"is_trusted": false,
"max_transfer_amount": null,
"attention": "",
"email": "",
"email_ubl": true,
"send_invoices_to_attention": "",
"send_invoices_to_email": "",
"send_estimates_to_attention": "",
"send_estimates_to_email": "",
"sepa_active": false,
"sepa_iban": "",
"sepa_iban_account_name": "",
"sepa_bic": "",
"sepa_mandate_id": "",
"sepa_mandate_date": null,
"sepa_sequence_type": "RCUR",
"credit_card_number": "",
"credit_card_reference": "",
"credit_card_type": null,
"tax_number_validated_at": null,
"tax_number_valid": null,
"invoice_workflow_id": null,
"estimate_workflow_id": null,
"si_identifier": "",
"si_identifier_type": null,
"moneybird_payments_mandate": false,
"created_at": "2025-02-17T10:45:32.468Z",
"updated_at": "2025-02-17T10:45:32.468Z",
"version": 1739789132,
"sales_invoices_url": "https://moneybird.dev/123/sales_invoices/7fe6ea36f05790d45e55fc8f60f9fe7670e8da1971c7dbd5828f60ed40f4e475/all",
"notes": [],
"custom_fields": [],
"contact_people": [],
"archived": false,
"events": [
{
"administration_id": 123,
"user_id": 17397890963220,
"action": "contact_created",
"link_entity_id": null,
"link_entity_type": null,
"data": {},
"created_at": "2025-02-17T10:45:32.472Z",
"updated_at": "2025-02-17T10:45:32.472Z"
}
]
}
Example: adding values for custom fields
Request
curl -s -H "Content-Type: application/json" -H "Authorization: Bearer 84ec207ad0154a508f798e615a998ac1fd752926d00f955fb1df3e144cba44ab" \
-XPOST \
-d '{"contact":{"company_name":"Test B.V.","custom_fields_attributes":{"0":{"id":446241556005914385,"value":"Field value"}}}}' \
https://moneybird.com/api/v2/123/contacts.json
Response
Status: 201 Created
{
"id": "446241556067780371",
"administration_id": 123,
"company_name": "Test B.V.",
"firstname": "",
"lastname": "",
"address1": "",
"address2": "",
"zipcode": "",
"city": "",
"country": "NL",
"phone": "",
"delivery_method": "Email",
"customer_id": "3",
"tax_number": "",
"chamber_of_commerce": "",
"bank_account": "",
"is_trusted": false,
"max_transfer_amount": null,
"attention": "",
"email": "",
"email_ubl": true,
"send_invoices_to_attention": "",
"send_invoices_to_email": "",
"send_estimates_to_attention": "",
"send_estimates_to_email": "",
"sepa_active": false,
"sepa_iban": "",
"sepa_iban_account_name": "",
"sepa_bic": "",
"sepa_mandate_id": "",
"sepa_mandate_date": null,
"sepa_sequence_type": "RCUR",
"credit_card_number": "",
"credit_card_reference": "",
"credit_card_type": null,
"tax_number_validated_at": null,
"tax_number_valid": null,
"invoice_workflow_id": null,
"estimate_workflow_id": null,
"si_identifier": "",
"si_identifier_type": null,
"moneybird_payments_mandate": false,
"created_at": "2025-02-17T10:45:32.655Z",
"updated_at": "2025-02-17T10:45:32.655Z",
"version": 1739789132,
"sales_invoices_url": "https://moneybird.dev/123/sales_invoices/7e164a2a239d503ce49b0ef235459f5663583d8ab8916e849c251b04476a040c/all",
"notes": [],
"custom_fields": [
{
"id": "446241556005914385",
"name": "Number",
"value": "Field value"
}
],
"contact_people": [],
"archived": false,
"events": [
{
"administration_id": 123,
"user_id": 17397890963220,
"action": "contact_created",
"link_entity_id": null,
"link_entity_type": null,
"data": {},
"created_at": "2025-02-17T10:45:32.660Z",
"updated_at": "2025-02-17T10:45:32.660Z"
}
]
}
Example: returns an error when custom field cannot be found
Request
curl -s -H "Content-Type: application/json" -H "Authorization: Bearer 84ec207ad0154a508f798e615a998ac1fd752926d00f955fb1df3e144cba44ab" \
-XPOST \
-d '{"contact":{"custom_fields_attributes":{"0":{"id":1234,"value":"Field value"}}}}' \
https://moneybird.com/api/v2/123/contacts.json
Response
Status: 404 Not Found
{
"error": "Custom field with id 1234 not found for administration",
"symbolic": {
"custom_fields_attributes": "not_found"
}
}
Example: returns an error when fields are not provided
Request
curl -s -H "Content-Type: application/json" -H "Authorization: Bearer 84ec207ad0154a508f798e615a998ac1fd752926d00f955fb1df3e144cba44ab" \
-XPOST \
-d '{}' \
https://moneybird.com/api/v2/123/contacts.json
Response
Status: 400 Bad Request
{
"error": "Contact is required",
"symbolic": {
"contact": "required"
}
}
Example: returns an error when record is invalid
Request
curl -s -H "Content-Type: application/json" -H "Authorization: Bearer 84ec207ad0154a508f798e615a998ac1fd752926d00f955fb1df3e144cba44ab" \
-XPOST \
-d '{"contact":{"company_name":"","firstname":"","lastname":""}}' \
https://moneybird.com/api/v2/123/contacts.json
Response
Status: 422 Unprocessable Entity
{
"error": {
"firstname": [
"is verplicht"
],
"lastname": [
"is verplicht"
],
"company_name": [
"is verplicht"
]
}
}
Example: create a new contact with mandate_date in timezone gap
Request
curl -s -H "Content-Type: application/json" -H "Authorization: Bearer 84ec207ad0154a508f798e615a998ac1fd752926d00f955fb1df3e144cba44ab" \
-XPOST \
-d '{"contact":{"company_name":"Test B.V.","sepa_active":true,"sepa_iban":"NL91ABNA0417164300","sepa_iban_account_name":"Foo Bar","sepa_mandate_date":"2017-6-30","sepa_mandate_id":"NL123214"}}' \
https://moneybird.com/api/v2/123/contacts.json
Response
Status: 201 Created
{
"id": "446241556651837262",
"administration_id": 123,
"company_name": "Test B.V.",
"firstname": "",
"lastname": "",
"address1": "",
"address2": "",
"zipcode": "",
"city": "",
"country": "NL",
"phone": "",
"delivery_method": "Email",
"customer_id": "3",
"tax_number": "",
"chamber_of_commerce": "",
"bank_account": "NL91ABNA0417164300",
"is_trusted": false,
"max_transfer_amount": null,
"attention": "",
"email": "",
"email_ubl": true,
"send_invoices_to_attention": "",
"send_invoices_to_email": "",
"send_estimates_to_attention": "",
"send_estimates_to_email": "",
"sepa_active": true,
"sepa_iban": "NL91ABNA0417164300",
"sepa_iban_account_name": "Foo Bar",
"sepa_bic": "ABNANL2A",
"sepa_mandate_id": "NL123214",
"sepa_mandate_date": "2017-06-30",
"sepa_sequence_type": "RCUR",
"credit_card_number": "",
"credit_card_reference": "",
"credit_card_type": null,
"tax_number_validated_at": null,
"tax_number_valid": null,
"invoice_workflow_id": null,
"estimate_workflow_id": null,
"si_identifier": "",
"si_identifier_type": null,
"moneybird_payments_mandate": false,
"created_at": "2017-06-30T23:30:00.050Z",
"updated_at": "2017-06-30T23:30:00.050Z",
"version": 1498865400,
"sales_invoices_url": "https://moneybird.dev/123/sales_invoices/590c41b0b2d37fe1a8fa87df9d413d7884c28577409847c47f67e96e781c9603/all",
"notes": [],
"custom_fields": [],
"contact_people": [],
"archived": false,
"events": [
{
"administration_id": 123,
"user_id": 17397890963220,
"action": "contact_created",
"link_entity_id": null,
"link_entity_type": null,
"data": {},
"created_at": "2017-06-30T23:30:00.054Z",
"updated_at": "2017-06-30T23:30:00.054Z"
}
]
}
Example: create a new contact with mandate_date without timezone gap
Request
curl -s -H "Content-Type: application/json" -H "Authorization: Bearer 84ec207ad0154a508f798e615a998ac1fd752926d00f955fb1df3e144cba44ab" \
-XPOST \
-d '{"contact":{"company_name":"Test B.V.","sepa_active":true,"sepa_iban":"NL91ABNA0417164300","sepa_iban_account_name":"Foo Bar","sepa_mandate_date":"2017-6-30","sepa_mandate_id":"NL123214"}}' \
https://moneybird.com/api/v2/123/contacts.json
Response
Status: 422 Unprocessable Entity
{
"error": {
"sepa_mandate_date": [
"mag niet vandaag of in de toekomst liggen"
]
}
}
Example: create a new contact with given SI identifier
Request
curl -s -H "Content-Type: application/json" -H "Authorization: Bearer 84ec207ad0154a508f798e615a998ac1fd752926d00f955fb1df3e144cba44ab" \
-XPOST \
-d '{"contact":{"company_name":"Test B.V.","si_identifier":"1234567","si_identifier_type":"NL:KVK"}}' \
https://moneybird.com/api/v2/123/contacts.json
Response
Status: 201 Created
{
"id": "446241556953827181",
"administration_id": 123,
"company_name": "Test B.V.",
"firstname": "",
"lastname": "",
"address1": "",
"address2": "",
"zipcode": "",
"city": "",
"country": "NL",
"phone": "",
"delivery_method": "Email",
"customer_id": "3",
"tax_number": "",
"chamber_of_commerce": "",
"bank_account": "",
"is_trusted": false,
"max_transfer_amount": null,
"attention": "",
"email": "",
"email_ubl": true,
"send_invoices_to_attention": "",
"send_invoices_to_email": "",
"send_estimates_to_attention": "",
"send_estimates_to_email": "",
"sepa_active": false,
"sepa_iban": "",
"sepa_iban_account_name": "",
"sepa_bic": "",
"sepa_mandate_id": "",
"sepa_mandate_date": null,
"sepa_sequence_type": "RCUR",
"credit_card_number": "",
"credit_card_reference": "",
"credit_card_type": null,
"tax_number_validated_at": null,
"tax_number_valid": null,
"invoice_workflow_id": null,
"estimate_workflow_id": null,
"si_identifier": "1234567",
"si_identifier_type": "NL:KVK",
"moneybird_payments_mandate": false,
"created_at": "2025-02-17T10:45:33.500Z",
"updated_at": "2025-02-17T10:45:33.500Z",
"version": 1739789133,
"sales_invoices_url": "https://moneybird.dev/123/sales_invoices/8e8dab9dfa5108b77271108b60eaeb70e932d16d606ac867691f7ba592c6f5e0/all",
"notes": [],
"custom_fields": [],
"contact_people": [],
"archived": false,
"events": [
{
"administration_id": 123,
"user_id": 17397890963220,
"action": "contact_created",
"link_entity_id": null,
"link_entity_type": null,
"data": {},
"created_at": "2025-02-17T10:45:33.506Z",
"updated_at": "2025-02-17T10:45:33.506Z"
}
]
}
Update a contact
When updating a contact, you only need to provide the information you want to change. Attributes you don’t provide in the request will not be updated. Optional attributes can be removed by setting them to an empty string value.
Parameters
Parameter | Type | Description |
---|---|---|
contact[company_name] |
String |
A contact requires a non-blank |
contact[address1] |
String |
|
contact[address2] |
String |
|
contact[zipcode] |
String |
|
contact[city] |
String |
|
contact[country] |
String |
ISO two-character country code, e.g. NL or DE. |
contact[phone] |
String |
|
contact[delivery_method] |
String |
Can be |
contact[email_ubl] |
Boolean |
|
contact[customer_id] |
String |
Will be assigned automatically if empty. Should be unique for the administration. |
contact[tax_number] |
String |
|
contact[firstname] |
String |
A contact requires a non-blank |
contact[lastname] |
String |
A contact requires a non-blank |
contact[chamber_of_commerce] |
String |
|
contact[bank_account] |
String |
|
contact[send_invoices_to_attention] |
String |
|
contact[send_invoices_to_email] |
String |
Should be one or more valid email addresses, separated by a comma. |
contact[send_estimates_to_attention] |
String |
|
contact[send_estimates_to_email] |
String |
Should be one or more valid email addresses, separated by a comma. |
contact[sepa_active] |
Boolean |
When |
contact[sepa_iban] |
String |
Should be a valid IBAN. |
contact[sepa_iban_account_name] |
String |
|
contact[sepa_bic] |
String |
Should be a valid BIC. |
contact[sepa_mandate_id] |
String |
Should be unique for the administration. |
contact[sepa_mandate_date] |
String |
Should be a date in the past. |
contact[sepa_sequence_type] |
String |
Can be |
contact[invoice_workflow_id] |
Integer |
Should be a valid invoice workflow id. |
contact[estimate_workflow_id] |
Integer |
Should be a valid estimate workflow id. |
contact[si_identifier_type] |
String |
Can be |
contact[si_identifier] |
String |
|
contact[direct_debit] |
Boolean |
|
contact[custom_fields_attributes][id] |
Integer |
Required |
contact[custom_fields_attributes][value] |
String |
Required |
Example: update a contact
Request
curl -s -H "Content-Type: application/json" -H "Authorization: Bearer 84ec207ad0154a508f798e615a998ac1fd752926d00f955fb1df3e144cba44ab" \
-XPATCH \
-d '{"contact":{"company_name":"Test B.V."}}' \
https://moneybird.com/api/v2/123/contacts/446241557031421809.json
Response
Status: 200 OK
{
"id": "446241557031421809",
"administration_id": 123,
"company_name": "Test B.V.",
"firstname": null,
"lastname": "Appleseed",
"address1": "Hoofdstraat 12",
"address2": "",
"zipcode": "1234 AB",
"city": "Amsterdam",
"country": "NL",
"phone": "",
"delivery_method": "Email",
"customer_id": "1",
"tax_number": "",
"chamber_of_commerce": "",
"bank_account": "",
"is_trusted": false,
"max_transfer_amount": null,
"attention": "",
"email": "info@example.com",
"email_ubl": true,
"send_invoices_to_attention": "",
"send_invoices_to_email": "info@example.com",
"send_estimates_to_attention": "",
"send_estimates_to_email": "info@example.com",
"sepa_active": false,
"sepa_iban": "",
"sepa_iban_account_name": "",
"sepa_bic": "",
"sepa_mandate_id": "",
"sepa_mandate_date": null,
"sepa_sequence_type": "RCUR",
"credit_card_number": "",
"credit_card_reference": "",
"credit_card_type": null,
"tax_number_validated_at": null,
"tax_number_valid": null,
"invoice_workflow_id": null,
"estimate_workflow_id": null,
"si_identifier": "",
"si_identifier_type": null,
"moneybird_payments_mandate": false,
"created_at": "2025-02-17T10:45:33.574Z",
"updated_at": "2025-02-17T10:45:33.674Z",
"version": 1739789133,
"sales_invoices_url": "https://moneybird.dev/123/sales_invoices/e5f929fd96d90f0bf98992e3f45eb6db45596b334c5b68ea05673f22cc14b2b0/all",
"notes": [],
"custom_fields": [],
"contact_people": [
{
"id": "446241557040858995",
"contact_id": "446241557031421809",
"administration_id": 123,
"firstname": "John",
"lastname": "Appleseed",
"phone": null,
"email": null,
"department": null,
"created_at": "2025-02-17T10:45:33.584Z",
"updated_at": "2025-02-17T10:45:33.584Z",
"version": 1739789133
},
{
"id": "446241557164590976",
"contact_id": "446241557031421809",
"administration_id": 123,
"firstname": null,
"lastname": "Appleseed",
"phone": null,
"email": null,
"department": null,
"created_at": "2025-02-17T10:45:33.702Z",
"updated_at": "2025-02-17T10:45:33.702Z",
"version": 1739789133
}
],
"archived": false,
"events": [
{
"administration_id": 123,
"user_id": 17397890963220,
"action": "contact_created",
"link_entity_id": null,
"link_entity_type": null,
"data": {},
"created_at": "2025-02-17T10:45:33.591Z",
"updated_at": "2025-02-17T10:45:33.591Z"
},
{
"administration_id": 123,
"user_id": 17397890963220,
"action": "contact_changed",
"link_entity_id": null,
"link_entity_type": null,
"data": {
"changes": {
"company_name": [
"Foobar Holding B.V.",
"Test B.V."
]
}
},
"created_at": "2025-02-17T10:45:33.678Z",
"updated_at": "2025-02-17T10:45:33.678Z"
}
]
}
Example: update a contact that has SEPA activated
Request
curl -s -H "Content-Type: application/json" -H "Authorization: Bearer 84ec207ad0154a508f798e615a998ac1fd752926d00f955fb1df3e144cba44ab" \
-XPATCH \
-d '{"contact":{"company_name":"Test B.V."}}' \
https://moneybird.com/api/v2/123/contacts/446241557263157131.json
Response
Status: 200 OK
{
"id": "446241557263157131",
"administration_id": 123,
"company_name": "Test B.V.",
"firstname": null,
"lastname": null,
"address1": "1 Infinite Loop",
"address2": "",
"zipcode": "123456",
"city": "Redmond",
"country": "NL",
"phone": "",
"delivery_method": "Email",
"customer_id": "2",
"tax_number": "",
"chamber_of_commerce": "",
"bank_account": "NL50TEST0166567191",
"is_trusted": false,
"max_transfer_amount": null,
"attention": "",
"email": "info@example.com",
"email_ubl": true,
"send_invoices_to_attention": "",
"send_invoices_to_email": "info@example.com",
"send_estimates_to_attention": "",
"send_estimates_to_email": "info@example.com",
"sepa_active": true,
"sepa_iban": "NL50TEST0166567191",
"sepa_iban_account_name": "Foobar Holding B.V.",
"sepa_bic": "RABONL2U",
"sepa_mandate_id": "MAN12313",
"sepa_mandate_date": "2014-01-01",
"sepa_sequence_type": "RCUR",
"credit_card_number": "",
"credit_card_reference": "",
"credit_card_type": null,
"tax_number_validated_at": null,
"tax_number_valid": null,
"invoice_workflow_id": null,
"estimate_workflow_id": null,
"si_identifier": "",
"si_identifier_type": null,
"moneybird_payments_mandate": false,
"created_at": "2025-02-17T10:45:33.796Z",
"updated_at": "2025-02-17T10:45:33.862Z",
"version": 1739789133,
"sales_invoices_url": "https://moneybird.dev/123/sales_invoices/fa600a894281d93058c68d66916f455ec0f7e903e7e3ade3d88e1ce55a06cbef/all",
"notes": [],
"custom_fields": [],
"contact_people": [
{
"id": "446241557268400013",
"contact_id": "446241557263157131",
"administration_id": 123,
"firstname": "John",
"lastname": "Doe",
"phone": null,
"email": null,
"department": null,
"created_at": "2025-02-17T10:45:33.801Z",
"updated_at": "2025-02-17T10:45:33.801Z",
"version": 1739789133
}
],
"archived": false,
"events": [
{
"administration_id": 123,
"user_id": 17397890963220,
"action": "contact_created",
"link_entity_id": null,
"link_entity_type": null,
"data": {},
"created_at": "2025-02-17T10:45:33.807Z",
"updated_at": "2025-02-17T10:45:33.807Z"
},
{
"administration_id": 123,
"user_id": 17397890963220,
"action": "contact_changed",
"link_entity_id": null,
"link_entity_type": null,
"data": {
"changes": {
"company_name": [
"Foobar Holding B.V.",
"Test B.V."
]
}
},
"created_at": "2025-02-17T10:45:33.866Z",
"updated_at": "2025-02-17T10:45:33.866Z"
}
]
}
Example: update the SEPA sequence type
Request
curl -s -H "Content-Type: application/json" -H "Authorization: Bearer 84ec207ad0154a508f798e615a998ac1fd752926d00f955fb1df3e144cba44ab" \
-XPATCH \
-d '{"contact":{"sepa_sequence_type":"FNAL"}}' \
https://moneybird.com/api/v2/123/contacts/446241557457143707.json
Response
Status: 200 OK
{
"id": "446241557457143707",
"administration_id": 123,
"company_name": "Foobar Holding B.V.",
"firstname": null,
"lastname": null,
"address1": "1 Infinite Loop",
"address2": "",
"zipcode": "123456",
"city": "Redmond",
"country": "NL",
"phone": "",
"delivery_method": "Email",
"customer_id": "2",
"tax_number": "",
"chamber_of_commerce": "",
"bank_account": "NL50TEST0166567191",
"is_trusted": false,
"max_transfer_amount": null,
"attention": "",
"email": "info@example.com",
"email_ubl": true,
"send_invoices_to_attention": "",
"send_invoices_to_email": "info@example.com",
"send_estimates_to_attention": "",
"send_estimates_to_email": "info@example.com",
"sepa_active": true,
"sepa_iban": "NL50TEST0166567191",
"sepa_iban_account_name": "Foobar Holding B.V.",
"sepa_bic": "RABONL2U",
"sepa_mandate_id": "MAN12313",
"sepa_mandate_date": "2014-01-01",
"sepa_sequence_type": "FNAL",
"credit_card_number": "",
"credit_card_reference": "",
"credit_card_type": null,
"tax_number_validated_at": null,
"tax_number_valid": null,
"invoice_workflow_id": null,
"estimate_workflow_id": null,
"si_identifier": "",
"si_identifier_type": null,
"moneybird_payments_mandate": false,
"created_at": "2025-02-17T10:45:33.980Z",
"updated_at": "2025-02-17T10:45:34.053Z",
"version": 1739789134,
"sales_invoices_url": "https://moneybird.dev/123/sales_invoices/d0e34c12fa87704fc4b41e5e8670f48330b4da273b509d09f511811d9445e756/all",
"notes": [],
"custom_fields": [],
"contact_people": [
{
"id": "446241557464483741",
"contact_id": "446241557457143707",
"administration_id": 123,
"firstname": "John",
"lastname": "Doe",
"phone": null,
"email": null,
"department": null,
"created_at": "2025-02-17T10:45:33.987Z",
"updated_at": "2025-02-17T10:45:33.987Z",
"version": 1739789133
}
],
"archived": false,
"events": [
{
"administration_id": 123,
"user_id": 17397890963220,
"action": "contact_created",
"link_entity_id": null,
"link_entity_type": null,
"data": {},
"created_at": "2025-02-17T10:45:33.997Z",
"updated_at": "2025-02-17T10:45:33.997Z"
},
{
"administration_id": 123,
"user_id": 17397890963220,
"action": "contact_changed",
"link_entity_id": null,
"link_entity_type": null,
"data": {
"changes": {
"sepa_sequence_type": [
"RCUR",
"FNAL"
]
}
},
"created_at": "2025-02-17T10:45:34.058Z",
"updated_at": "2025-02-17T10:45:34.058Z"
}
]
}
Example: returns an error when record is invalid
Request
curl -s -H "Content-Type: application/json" -H "Authorization: Bearer 84ec207ad0154a508f798e615a998ac1fd752926d00f955fb1df3e144cba44ab" \
-XPATCH \
-d '{"contact":{"company_name":"","firstname":"","lastname":""}}' \
https://moneybird.com/api/v2/123/contacts/446241557621770148.json
Response
Status: 422 Unprocessable Entity
{
"error": {
"firstname": [
"is verplicht"
],
"lastname": [
"is verplicht"
],
"company_name": [
"is verplicht"
]
}
}
Example: returns a 404 status when the contact is not found
Request
curl -s -H "Content-Type: application/json" -H "Authorization: Bearer 84ec207ad0154a508f798e615a998ac1fd752926d00f955fb1df3e144cba44ab" \
-XPATCH \
-d '{"contact":{"company_name":"Test B.V."}}' \
https://moneybird.com/api/v2/123/contacts/1564321.json
Response
Status: 404 Not Found
{
"error": "record not found",
"symbolic": {
"id": "not_found"
}
}
Example: updates a contact with given SI identifier
Request
curl -s -H "Content-Type: application/json" -H "Authorization: Bearer 84ec207ad0154a508f798e615a998ac1fd752926d00f955fb1df3e144cba44ab" \
-XPATCH \
-d '{"contact":{"si_identifier":"1234567","si_identifier_type":"NL:KVK"}}' \
https://moneybird.com/api/v2/123/contacts/446241557908031424.json
Response
Status: 200 OK
{
"id": "446241557908031424",
"administration_id": 123,
"company_name": "Foobar Holding B.V.",
"firstname": null,
"lastname": "Appleseed",
"address1": "Hoofdstraat 12",
"address2": "",
"zipcode": "1234 AB",
"city": "Amsterdam",
"country": "NL",
"phone": "",
"delivery_method": "Email",
"customer_id": "1",
"tax_number": "",
"chamber_of_commerce": "",
"bank_account": "",
"is_trusted": false,
"max_transfer_amount": null,
"attention": "",
"email": "info@example.com",
"email_ubl": true,
"send_invoices_to_attention": "",
"send_invoices_to_email": "info@example.com",
"send_estimates_to_attention": "",
"send_estimates_to_email": "info@example.com",
"sepa_active": false,
"sepa_iban": "",
"sepa_iban_account_name": "",
"sepa_bic": "",
"sepa_mandate_id": "",
"sepa_mandate_date": null,
"sepa_sequence_type": "RCUR",
"credit_card_number": "",
"credit_card_reference": "",
"credit_card_type": null,
"tax_number_validated_at": null,
"tax_number_valid": null,
"invoice_workflow_id": null,
"estimate_workflow_id": null,
"si_identifier": "1234567",
"si_identifier_type": "NL:KVK",
"moneybird_payments_mandate": false,
"created_at": "2025-02-17T10:45:34.410Z",
"updated_at": "2025-02-17T10:45:34.501Z",
"version": 1739789134,
"sales_invoices_url": "https://moneybird.dev/123/sales_invoices/cbdda25d76f27a8416a8ef991d5a83436f54c7dc128bbbfebe22dd659fe0b725/all",
"notes": [],
"custom_fields": [],
"contact_people": [
{
"id": "446241557914322882",
"contact_id": "446241557908031424",
"administration_id": 123,
"firstname": "John",
"lastname": "Appleseed",
"phone": null,
"email": null,
"department": null,
"created_at": "2025-02-17T10:45:34.416Z",
"updated_at": "2025-02-17T10:45:34.416Z",
"version": 1739789134
},
{
"id": "446241558014986191",
"contact_id": "446241557908031424",
"administration_id": 123,
"firstname": null,
"lastname": "Appleseed",
"phone": null,
"email": null,
"department": null,
"created_at": "2025-02-17T10:45:34.513Z",
"updated_at": "2025-02-17T10:45:34.513Z",
"version": 1739789134
}
],
"archived": false,
"events": [
{
"administration_id": 123,
"user_id": 17397890963220,
"action": "contact_created",
"link_entity_id": null,
"link_entity_type": null,
"data": {},
"created_at": "2025-02-17T10:45:34.425Z",
"updated_at": "2025-02-17T10:45:34.425Z"
},
{
"administration_id": 123,
"user_id": 17397890963220,
"action": "contact_changed",
"link_entity_id": null,
"link_entity_type": null,
"data": {
"changes": {
"si_identifier": [
"",
"1234567"
]
}
},
"created_at": "2025-02-17T10:45:34.506Z",
"updated_at": "2025-02-17T10:45:34.506Z"
}
]
}
Example: creates a contact person when company name, firstname and lastname exist together
Request
curl -s -H "Content-Type: application/json" -H "Authorization: Bearer 84ec207ad0154a508f798e615a998ac1fd752926d00f955fb1df3e144cba44ab" \
-XPATCH \
-d '{"contact":{"firstname":"Money","lastname":"Bird"}}' \
https://moneybird.com/api/v2/123/contacts/446241558297053172.json
Response
Status: 200 OK
{
"id": "446241558297053172",
"administration_id": 123,
"company_name": "Moneybird B.V.",
"firstname": "Money",
"lastname": "Bird",
"address1": null,
"address2": null,
"zipcode": null,
"city": null,
"country": "NL",
"phone": null,
"delivery_method": "Email",
"customer_id": "6c9079608c6857853f9ccab368c859070cc95a17bb47ec467fb32fa8bca16699",
"tax_number": null,
"chamber_of_commerce": null,
"bank_account": null,
"is_trusted": false,
"max_transfer_amount": null,
"attention": null,
"email": null,
"email_ubl": false,
"send_invoices_to_attention": null,
"send_invoices_to_email": null,
"send_estimates_to_attention": null,
"send_estimates_to_email": null,
"sepa_active": false,
"sepa_iban": null,
"sepa_iban_account_name": null,
"sepa_bic": null,
"sepa_mandate_id": null,
"sepa_mandate_date": null,
"sepa_sequence_type": "RCUR",
"credit_card_number": null,
"credit_card_reference": null,
"credit_card_type": null,
"tax_number_validated_at": null,
"tax_number_valid": null,
"invoice_workflow_id": null,
"estimate_workflow_id": null,
"si_identifier": null,
"si_identifier_type": null,
"moneybird_payments_mandate": false,
"created_at": "2025-02-17T10:45:34.782Z",
"updated_at": "2025-02-17T10:45:34.832Z",
"version": 1739789134,
"sales_invoices_url": "https://moneybird.dev/123/sales_invoices/b657a192e7214961be2ef8900c9b1a98d8fc160beb7565ecb364a7d545819093/all",
"notes": [],
"custom_fields": [],
"contact_people": [
{
"id": "446241558365210616",
"contact_id": "446241558297053172",
"administration_id": 123,
"firstname": "Money",
"lastname": "Bird",
"phone": null,
"email": null,
"department": null,
"created_at": "2025-02-17T10:45:34.846Z",
"updated_at": "2025-02-17T10:45:34.846Z",
"version": 1739789134
}
],
"archived": false,
"events": [
{
"administration_id": 123,
"user_id": 17397890963220,
"action": "contact_changed",
"link_entity_id": null,
"link_entity_type": null,
"data": {
"changes": {
"firstname": [
null,
"Money"
],
"lastname": [
null,
"Bird"
]
}
},
"created_at": "2025-02-17T10:45:34.837Z",
"updated_at": "2025-02-17T10:45:34.837Z"
}
]
}
Example: does not allow making the contact trusted through the API
Request
curl -s -H "Content-Type: application/json" -H "Authorization: Bearer 84ec207ad0154a508f798e615a998ac1fd752926d00f955fb1df3e144cba44ab" \
-XPATCH \
-d '{"contact":{"is_trusted":true}}' \
https://moneybird.com/api/v2/123/contacts/446241558429173756.json
Response
Status: 400 Bad Request
{
"error": "An contact can only be trusted during the approval of a payment.",
"symbolic": {
"is_trusted": "permission"
}
}
Delete a contact
Example: delete a contact
Request
curl -s -H "Content-Type: application/json" -H "Authorization: Bearer 84ec207ad0154a508f798e615a998ac1fd752926d00f955fb1df3e144cba44ab" \
-XDELETE \
-d '{}' \
https://moneybird.com/api/v2/123/contacts/446241558578070538.json
Response
Example: archives the contact when deleting was not possible
Request
curl -s -H "Content-Type: application/json" -H "Authorization: Bearer 84ec207ad0154a508f798e615a998ac1fd752926d00f955fb1df3e144cba44ab" \
-XDELETE \
-d '{}' \
https://moneybird.com/api/v2/123/contacts/446241558810854427.json
Response
Example: returns a 404 status when the contact is not found
Request
curl -s -H "Content-Type: application/json" -H "Authorization: Bearer 84ec207ad0154a508f798e615a998ac1fd752926d00f955fb1df3e144cba44ab" \
-XDELETE \
-d '{}' \
https://moneybird.com/api/v2/123/contacts/1564321.json
Response
Status: 404 Not Found
{
"error": "record not found",
"symbolic": {
"id": "not_found"
}
}
Example: delete a contact
Request
curl -s -H "Content-Type: application/json" -H "Authorization: Bearer 84ec207ad0154a508f798e615a998ac1fd752926d00f955fb1df3e144cba44ab" \
-XDELETE \
-d '{}' \
https://moneybird.com/api/v2/123/contacts/446241560072291484/contact_people/446241560076485790.json
Response
Example: returns a 404 status when the contact is not found
Request
curl -s -H "Content-Type: application/json" -H "Authorization: Bearer 84ec207ad0154a508f798e615a998ac1fd752926d00f955fb1df3e144cba44ab" \
-XDELETE \
-d '{}' \
https://moneybird.com/api/v2/123/contacts/446241560221189292/contact_people/1564321.json
Response
Status: 404 Not Found
{
"error": "record not found",
"symbolic": {
"id": "not_found"
}
}
Create an additional charge to be invoiced at start of next period
At the end of the current period, the additional charges for a contact are merged where possible and an invoice will be created for them. The invoice will be scheduled for sending at the first day of the next month.
Example: creates a usage charge
Request
curl -s -H "Content-Type: application/json" -H "Authorization: Bearer 84ec207ad0154a508f798e615a998ac1fd752926d00f955fb1df3e144cba44ab" \
-XPOST \
-d '{"product_id":446241560431953094,"amount":"5 x","price":100.0,"period":"20210601..20210630","description":"Transaction Costs"}' \
https://moneybird.com/api/v2/123/contacts/446241560363795642/additional_charges
Response
Status: 201 Created
{
"id": "446241560496964808",
"administration_id": 123,
"contact_id": "446241560363795642",
"subscription_id": null,
"product_id": "446241560431953094",
"detail_id": null,
"amount": "5 x",
"price": "100.0",
"period": "202106..202106",
"description": "Transaction Costs"
}
Get additional charges
Get the additional charges of the given contact.
Parameters
Parameter | Type | Description |
---|---|---|
include_billed |
Boolean |
If true, includes the additional charges that have already been billed. Default is false. |
Example: views additional charges of a contact
Request
curl -s -H "Content-Type: application/json" -H "Authorization: Bearer 84ec207ad0154a508f798e615a998ac1fd752926d00f955fb1df3e144cba44ab" \
-XGET \
https://moneybird.com/api/v2/123/contacts/446241560548345035/additional_charges?
Response
Status: 200 OK
[
{
"id": "446241560600773848",
"administration_id": 123,
"contact_id": "446241560548345035",
"subscription_id": null,
"product_id": "446241560597628119",
"detail_id": null,
"amount": "1 x",
"price": "100.0",
"period": "202106..202106",
"description": "Transaction Costs"
}
]
Example: does return billed additional charges if include_billed is true
Request
curl -s -H "Content-Type: application/json" -H "Authorization: Bearer 84ec207ad0154a508f798e615a998ac1fd752926d00f955fb1df3e144cba44ab" \
-XGET \
https://moneybird.com/api/v2/123/contacts/446241561294931234/additional_charges.json?include_billed=true
Response
Status: 200 OK
[
{
"id": "446241561350505775",
"administration_id": 123,
"contact_id": "446241561294931234",
"subscription_id": null,
"product_id": "446241561347360046",
"detail_id": null,
"amount": "1 x",
"price": "100.0",
"period": "202106..202106",
"description": "Transaction Costs"
},
{
"id": "446241561463752002",
"administration_id": 123,
"contact_id": "446241561294931234",
"subscription_id": null,
"product_id": "446241561355748656",
"detail_id": "446241561458509121",
"amount": "1 x",
"price": "100.0",
"period": "202106..202106",
"description": "Transaction Costs"
}
]
Adds note to entity
Parameters
Parameter | Type | Description |
---|---|---|
note[note] |
String |
Required. Text for the note or to-do. |
note[todo] |
Boolean |
If |
note[assignee_id] |
Integer |
Assign to-do to user. Should be a valid user id. If assignee_id is provided the note will be a to-do. |
Example: create a note
Request
curl -s -H "Content-Type: application/json" -H "Authorization: Bearer 84ec207ad0154a508f798e615a998ac1fd752926d00f955fb1df3e144cba44ab" \
-XPOST \
-d '{"note":{"note":"Text of the note","assignee_id":446241561605309777,"todo":true}}' \
https://moneybird.com/api/v2/123/contacts/446241561556026693/notes.json
Response
Status: 201 Created
{
"id": "446241561670321491",
"administration_id": 123,
"entity_id": "446241561556026693",
"entity_type": "Contact",
"user_id": 17397890963220,
"assignee_id": "446241561605309777",
"todo": true,
"note": "Text of the note",
"completed_at": null,
"completed_by_id": null,
"todo_type": null,
"data": {},
"created_at": "2025-02-17T10:45:37.997Z",
"updated_at": "2025-02-17T10:45:37.997Z"
}
Destroys note from entity
Example: destroy a note
Request
curl -s -H "Content-Type: application/json" -H "Authorization: Bearer 84ec207ad0154a508f798e615a998ac1fd752926d00f955fb1df3e144cba44ab" \
-XDELETE \
-d '{}' \
https://moneybird.com/api/v2/123/contacts/446241561726944600/notes/446241561773081956.json
Response
Get contact person
Returns all information about a contact person.
Create a new contact person
Creating a new contact person in the administration requires at least a contact_person
hash including firstname
and lastname
.
Parameters
Parameter | Type | Description |
---|---|---|
contact_person[firstname] |
String |
|
contact_person[lastname] |
String |
|
contact_person[phone] |
String |
|
contact_person[email] |
String |
Should be a valid email addresses. |
contact_person[department] |
String |
Update a contact person
When updating a contact, you only need to provide the information you want to change. Attributes you don’t provide in the request will not be updated.
Parameters
Parameter | Type | Description |
---|---|---|
contact_person[firstname] |
String |
|
contact_person[lastname] |
String |
|
contact_person[phone] |
String |
|
contact_person[email] |
String |
Should be a valid email addresses. |
contact_person[department] |
String |
Delete a contact person
Get Moneybird Payments mandate
Returns information about the stored Moneybird Payments mandate. Only available when Moneybird Payments is enabled for the administration.
Parameters
Parameter | Type | Description |
---|---|---|
contact_id |
Integer |
Required Should be a valid contact ID. |
Example: returns information about the stored Moneybird Payments mandate
Request
curl -s -H "Content-Type: application/json" -H "Authorization: Bearer 84ec207ad0154a508f798e615a998ac1fd752926d00f955fb1df3e144cba44ab" \
-XGET \
https://moneybird.com/api/v2/123/contacts/446241561894716779/moneybird_payments_mandate.json?
Response
Status: 200 OK
{
"type": "idealtestissuer5",
"sepa_mandate": true,
"bank": "Test Issuer 5",
"iban": "NL81TEST0536169128",
"bic": "TESTNL05",
"iban_account_name": "E. Klaassen",
"card_expiry_month": null,
"card_expiry_year": null,
"card_final_digits": null,
"created_at": "2022-04-07T13:31:09.000Z"
}
Example: returns limited information if mandate exists, but only limited information is available
Request
curl -s -H "Content-Type: application/json" -H "Authorization: Bearer 84ec207ad0154a508f798e615a998ac1fd752926d00f955fb1df3e144cba44ab" \
-XGET \
https://moneybird.com/api/v2/123/contacts/446241562075071871/moneybird_payments_mandate.json?
Response
Status: 200 OK
{
"type": "mccorporatecredit",
"sepa_mandate": false,
"bank": null,
"iban": null,
"bic": null,
"iban_account_name": null,
"card_expiry_month": "3",
"card_expiry_year": "2030",
"card_final_digits": "0010",
"created_at": "2022-04-11T09:17:56.000Z"
}
Example: does return not found when there is no Moneybird Payments mandate found
Request
curl -s -H "Content-Type: application/json" -H "Authorization: Bearer 84ec207ad0154a508f798e615a998ac1fd752926d00f955fb1df3e144cba44ab" \
-XGET \
https://moneybird.com/api/v2/123/contacts/446241562257524115/moneybird_payments_mandate.json?
Response
Example: does not allow access if Moneybird Payments is disabled for the administration
Request
curl -s -H "Content-Type: application/json" -H "Authorization: Bearer 84ec207ad0154a508f798e615a998ac1fd752926d00f955fb1df3e144cba44ab" \
-XGET \
https://moneybird.com/api/v2/123/contacts/446241562424247718/moneybird_payments_mandate.json?
Response
Request a new Moneybird Payments mandate
Sends a request for a Moneybird Payments mandate to a contact via e-mail. Your contact will receive an email containing a link to authorise direct debit payments through Moneybird Payments. Your contact is required to make a 15 cent payment. Only available when Moneybird Payments is enabled for the administration.
Parameters
Parameter | Type | Description |
---|---|---|
mandate_request[email_message] |
String |
|
mandate_request[identity_id] |
Integer |
Should be a valid identity id. |
Example: requests a new Moneybird Payments mandate
Request
curl -s -H "Content-Type: application/json" -H "Authorization: Bearer 84ec207ad0154a508f798e615a998ac1fd752926d00f955fb1df3e144cba44ab" \
-XPOST \
-d '{}' \
https://moneybird.com/api/v2/123/contacts/446241562576291252/moneybird_payments_mandate.json
Response
Example: allows for a custom message within the request e-mail
Request
curl -s -H "Content-Type: application/json" -H "Authorization: Bearer 84ec207ad0154a508f798e615a998ac1fd752926d00f955fb1df3e144cba44ab" \
-XPOST \
-d '{"mandate_request":{"email_message":"We use direct debit for our services, for which we require your authorisation. You can authorise us for direct debit through the button below. This requires you to make a one-time payment of 15 cents. This way we can verify your bank account."}}' \
https://moneybird.com/api/v2/123/contacts/446241562772374984/moneybird_payments_mandate.json
Response
Example: does not allow access if Moneybird Payments is disabled for the administration
Request
curl -s -H "Content-Type: application/json" -H "Authorization: Bearer 84ec207ad0154a508f798e615a998ac1fd752926d00f955fb1df3e144cba44ab" \
-XPOST \
-d '{}' \
https://moneybird.com/api/v2/123/contacts/446241562962167260/moneybird_payments_mandate.json
Response
Request an URL for setting up a Moneybird Payments mandate
Obtains an URL for setting up a Moneybird Payments mandate. You must provide this URL to your contact to set-up the mandate. Your contact is required to make a 15 cent payment. Every generated URL using this endpoint is valid for 14 days after creation. Only available when Moneybird Payments is enabled for the administration.
Parameters
Parameter | Type | Description |
---|---|---|
mandate_request[identity_id] |
Integer |
Should be a valid identity id. |
Example: requests a new Moneybird Payments mandate URL
Request
curl -s -H "Content-Type: application/json" -H "Authorization: Bearer 84ec207ad0154a508f798e615a998ac1fd752926d00f955fb1df3e144cba44ab" \
-XPOST \
-d '{}' \
https://moneybird.com/api/v2/123/contacts/446241563106870762/moneybird_payments_mandate/url.json
Response
Status: 201 Created
{
"url": "https://moneybird.dev/123/mandate_requests/zICBpl9yYWlsc4KkZGF0Ydk6MTczOTc4OTA5NjMyMjAgNDQ2MjQxNTYzMTA2ODcwNzYyIDQ0NjI0MTUxODk4OTA4MzgwMiBhZHllbqNleHDHCwfOZ8WIU84gGeFYAA--783f487db2c18ace9c42b08ab3ceed6431e55642"
}
Example: does not allow access if Moneybird Payments is disabled for the administration
Request
curl -s -H "Content-Type: application/json" -H "Authorization: Bearer 84ec207ad0154a508f798e615a998ac1fd752926d00f955fb1df3e144cba44ab" \
-XPOST \
-d '{}' \
https://moneybird.com/api/v2/123/contacts/446241563330217470/moneybird_payments_mandate/url.json
Response
Delete a stored Moneybird Payments mandate
Deletes the stored Moneybird Payments mandate for the contact. Only available when Moneybird Payments is enabled for the administration.
Parameters
Parameter | Type | Description |
---|---|---|
contact_id |
Integer |
Required Should be a valid contact id. |
Example: destroys the stored Moneybird Payments mandate
Request
curl -s -H "Content-Type: application/json" -H "Authorization: Bearer 84ec207ad0154a508f798e615a998ac1fd752926d00f955fb1df3e144cba44ab" \
-XDELETE \
-d '{}' \
https://moneybird.com/api/v2/123/contacts/446241563472823820/moneybird_payments_mandate.json
Response
Example: does not allow access if Moneybird Payments is disabled for the administration
Request
curl -s -H "Content-Type: application/json" -H "Authorization: Bearer 84ec207ad0154a508f798e615a998ac1fd752926d00f955fb1df3e144cba44ab" \
-XDELETE \
-d '{}' \
https://moneybird.com/api/v2/123/contacts/446241563643741729/moneybird_payments_mandate.json