curl --request GET \
--url https://api.codaclean.io/v1/customers \
--header 'Authorization: Bearer <token>' \
--header 'x-api-key: <api-key>'import requests
url = "https://api.codaclean.io/v1/customers"
headers = {
"x-api-key": "<api-key>",
"Authorization": "Bearer <token>"
}
response = requests.get(url, headers=headers)
print(response.text)const options = {
method: 'GET',
headers: {'x-api-key': '<api-key>', Authorization: 'Bearer <token>'}
};
fetch('https://api.codaclean.io/v1/customers', options)
.then(res => res.json())
.then(res => console.log(res))
.catch(err => console.error(err));using RestSharp;
var options = new RestClientOptions("https://api.codaclean.io/v1/customers");
var client = new RestClient(options);
var request = new RestRequest("");
request.AddHeader("x-api-key", "<api-key>");
request.AddHeader("Authorization", "Bearer <token>");
var response = await client.GetAsync(request);
Console.WriteLine("{0}", response.Content);
[
{
"enterpriseNumber": "0764.042.472",
"name": "Boulangerie Dupont SRL",
"address": {
"street": "Rue du Marché 12",
"street2": "",
"zipCode": "1000",
"municipality": "Bruxelles",
"country": "Belgique"
},
"accountingRef": "DUPONT",
"bankAccounts": [
{
"iban": "BE49001163522171",
"currency": "EUR",
"bic": "GEBA BE BB"
},
{
"iban": "BE68001466139034",
"currency": "EUR",
"bic": "GEBA BE BB"
},
{
"iban": "BE40751680738663",
"currency": "EUR",
"bic": "AXAB BE 22"
},
{
"iban": "BE10732141110904",
"currency": "EUR",
"bic": "CREG BE BB"
},
{
"iban": "BE79104034016533",
"currency": "EUR",
"bic": "NICA BE BB"
},
{
"iban": "BE21103265210903",
"currency": "EUR",
"bic": "NICA BE BB"
}
],
"contact": {
"name": "Marie Dupont",
"function": "CEO",
"email": "marie.dupont@example.com",
"language": "nl"
},
"isConfidential": false,
"payrollProviders": [
{
"code": "sdworx",
"sourceCode": "sdworx"
},
{
"code": "twinntax",
"sourceCode": "Twinntax"
}
],
"id": "675b4183d350b74dad2f46ec"
},
{
"enterpriseNumber": "0755.556.457",
"name": "Garage Peeters BV",
"address": {
"street": "Kerkstraat 25",
"street2": "",
"zipCode": "1050",
"municipality": "Bruxelles",
"country": "Belgique"
},
"accountingRef": "PEETERS",
"bankAccounts": [
{
"iban": "BE59732578835326",
"currency": "EUR",
"bic": "CREG BE BB"
},
{
"iban": "BE87088425005794",
"currency": "EUR",
"bic": "GKCC BE BB"
},
{
"iban": "BE42088136494654",
"currency": "EUR",
"bic": "GKCC BE BB"
}
],
"contact": {
"name": "Jan Peeters",
"function": "CEO",
"email": "jan.peeters@example.com",
"language": "en"
},
"payrollProviders": [
{
"code": "partena_professional",
"sourceCode": "partena_professional"
},
{
"code": "twinntax",
"sourceCode": "Twinntax"
},
{
"code": "***other***",
"sourceCode": "*"
}
],
"id": "675b41d6d350b74dad2f46ed",
"isConfidential": false
}
]List all customers
Returns every customer visible to the user, as a plain array, without pagination.
For large portfolios, prefer POST /customers, which is paginated and filterable.
Only customers the user can access are included: usually all the accounting firm’s customers, or only some of them if the firm restricted the user in MyCodaclean.
Required scope: customers:read
curl --request GET \
--url https://api.codaclean.io/v1/customers \
--header 'Authorization: Bearer <token>' \
--header 'x-api-key: <api-key>'import requests
url = "https://api.codaclean.io/v1/customers"
headers = {
"x-api-key": "<api-key>",
"Authorization": "Bearer <token>"
}
response = requests.get(url, headers=headers)
print(response.text)const options = {
method: 'GET',
headers: {'x-api-key': '<api-key>', Authorization: 'Bearer <token>'}
};
fetch('https://api.codaclean.io/v1/customers', options)
.then(res => res.json())
.then(res => console.log(res))
.catch(err => console.error(err));using RestSharp;
var options = new RestClientOptions("https://api.codaclean.io/v1/customers");
var client = new RestClient(options);
var request = new RestRequest("");
request.AddHeader("x-api-key", "<api-key>");
request.AddHeader("Authorization", "Bearer <token>");
var response = await client.GetAsync(request);
Console.WriteLine("{0}", response.Content);
[
{
"enterpriseNumber": "0764.042.472",
"name": "Boulangerie Dupont SRL",
"address": {
"street": "Rue du Marché 12",
"street2": "",
"zipCode": "1000",
"municipality": "Bruxelles",
"country": "Belgique"
},
"accountingRef": "DUPONT",
"bankAccounts": [
{
"iban": "BE49001163522171",
"currency": "EUR",
"bic": "GEBA BE BB"
},
{
"iban": "BE68001466139034",
"currency": "EUR",
"bic": "GEBA BE BB"
},
{
"iban": "BE40751680738663",
"currency": "EUR",
"bic": "AXAB BE 22"
},
{
"iban": "BE10732141110904",
"currency": "EUR",
"bic": "CREG BE BB"
},
{
"iban": "BE79104034016533",
"currency": "EUR",
"bic": "NICA BE BB"
},
{
"iban": "BE21103265210903",
"currency": "EUR",
"bic": "NICA BE BB"
}
],
"contact": {
"name": "Marie Dupont",
"function": "CEO",
"email": "marie.dupont@example.com",
"language": "nl"
},
"isConfidential": false,
"payrollProviders": [
{
"code": "sdworx",
"sourceCode": "sdworx"
},
{
"code": "twinntax",
"sourceCode": "Twinntax"
}
],
"id": "675b4183d350b74dad2f46ec"
},
{
"enterpriseNumber": "0755.556.457",
"name": "Garage Peeters BV",
"address": {
"street": "Kerkstraat 25",
"street2": "",
"zipCode": "1050",
"municipality": "Bruxelles",
"country": "Belgique"
},
"accountingRef": "PEETERS",
"bankAccounts": [
{
"iban": "BE59732578835326",
"currency": "EUR",
"bic": "CREG BE BB"
},
{
"iban": "BE87088425005794",
"currency": "EUR",
"bic": "GKCC BE BB"
},
{
"iban": "BE42088136494654",
"currency": "EUR",
"bic": "GKCC BE BB"
}
],
"contact": {
"name": "Jan Peeters",
"function": "CEO",
"email": "jan.peeters@example.com",
"language": "en"
},
"payrollProviders": [
{
"code": "partena_professional",
"sourceCode": "partena_professional"
},
{
"code": "twinntax",
"sourceCode": "Twinntax"
},
{
"code": "***other***",
"sourceCode": "*"
}
],
"id": "675b41d6d350b74dad2f46ed",
"isConfidential": false
}
]Authorizations
Identifies the partner software. Issued by Codaclean. Required on every call, including POST /token.
Identifies the user and their accounting firm. Send the idToken returned by POST /token as Authorization: Bearer <idToken>. Valid for 1 hour.
Response
Customers visible to the user.
Belgian enterprise number, formatted 0123.456.789.
Show child attributes
Show child attributes
Contact person at the customer. Mandate signature requests are sent to this contact.
Show child attributes
Show child attributes
Show child attributes
Show child attributes
Show child attributes
Show child attributes

