Klanten

Klanten

Klanten (relations) ophalen en beheren, inclusief incasso-mandaat. Scope: relations.read / relations.write. Velden: type (company|private), company_name, firstname, lastname, email, phone, city, country, external_id, payment_term, quote_expiration_days. Nested client: { … } mag op create/update.

Klanten ophalen

GET /v1/clients
Authorization: HTTP
name: httpBearer
type: http
scheme: bearer
Query
Naam Type Beschrijving
page integer
per_page integer
search string
contact_type string company|private; other values ignored
Request body

Geen

Response
data array
id string
type string

`company` or `private`.

Enum
company private
company_name string
firstname string
lastname string
email string
phone string
address string
zipcode string
city string
country string
company_registration_number string

Company registration number.

vat_number string
website string
iban string
bank_account_name string
bic string
payment_term integer

Payment term in days.

quote_expiration_days integer

Quote validity in days.

default_revenue_account string

Default revenue account label.

email_invoices string
email_reminders string
mail_salutation string
debtor_number string
meta object
page integer
per_page integer
total integer
pages integer

Examples

GET /v1/clients
curl -X GET "https://api.appficient.nl/v1/clients" \
  -H "Authorization: Bearer apf_xxxxxxxx" \
  -H "Accept: application/json"

Curl, Node en response staan rechts naast dit endpoint.

Klant aanmaken

POST /v1/clients

Company needs `company_name`; private needs a name

Authorization: HTTP
name: httpBearer
type: http
scheme: bearer
Headers
Naam Type Beschrijving
Idempotency-Key string Optional. Replay within 24h returns the same response.
Request body
type string

`company` or `private`.

Enum
company private
company_name string

For companies.

firstname string

For private clients.

lastname string
email string
phone string
address string
zipcode string
city string
country string
company_registration_number string
vat_number string
website string
iban string
bank_account_name string
bic string
external_id string
payment_term integer
quote_expiration_days integer
email_invoices string
email_reminders string
mail_salutation string
Response
data object

Client.

id string
type string

`company` or `private`.

Enum
company private
company_name string
firstname string
lastname string
email string
phone string
address string
zipcode string
city string
country string
company_registration_number string

Company registration number.

vat_number string
website string
iban string
bank_account_name string
bic string
payment_term integer

Payment term in days.

quote_expiration_days integer

Quote validity in days.

default_revenue_account string

Default revenue account label.

email_invoices string
email_reminders string
mail_salutation string
debtor_number string
meta object

Examples

POST /v1/clients
curl -X POST "https://api.appficient.nl/v1/clients" \
  -H "Authorization: Bearer apf_xxxxxxxx" \
  -H "Accept: application/json" \
  -H "Content-Type: application/json" \
  -d '{
    "type": "company",
    "company_name": "string",
    "firstname": "string",
    "lastname": "string",
    "email": "string",
    "phone": "string",
    "address": "string",
    "zipcode": "string",
    "city": "string",
    "country": "string",
    "company_registration_number": "string",
    "vat_number": "string",
    "website": "string",
    "iban": "string",
    "bank_account_name": "string",
    "bic": "string",
    "external_id": "string",
    "payment_term": 0,
    "quote_expiration_days": 0,
    "email_invoices": "string",
    "email_reminders": "string",
    "mail_salutation": "string"
}'

Curl, Node en response staan rechts naast dit endpoint.

Klant ophalen

GET /v1/clients/{id}
Authorization: HTTP
name: httpBearer
type: http
scheme: bearer
Path
Naam Type Beschrijving
id Required string
Request body

Geen

Response
data object

Client.

id string
type string

`company` or `private`.

Enum
company private
company_name string
firstname string
lastname string
email string
phone string
address string
zipcode string
city string
country string
company_registration_number string

Company registration number.

vat_number string
website string
iban string
bank_account_name string
bic string
payment_term integer

Payment term in days.

quote_expiration_days integer

Quote validity in days.

default_revenue_account string

Default revenue account label.

email_invoices string
email_reminders string
mail_salutation string
debtor_number string
meta object

Examples

GET /v1/clients/{id}
curl -X GET "https://api.appficient.nl/v1/clients/{id}" \
  -H "Authorization: Bearer apf_xxxxxxxx" \
  -H "Accept: application/json"

Curl, Node en response staan rechts naast dit endpoint.

Klant bijwerken

PATCH /v1/clients/{id}

Partial update

Authorization: HTTP
name: httpBearer
type: http
scheme: bearer
Path
Naam Type Beschrijving
id Required string
Request body
type string

`company` or `private`.

Enum
company private
company_name string

For companies.

firstname string

For private clients.

lastname string
email string
phone string
address string
zipcode string
city string
country string
company_registration_number string
vat_number string
website string
iban string
bank_account_name string
bic string
external_id string
payment_term integer
quote_expiration_days integer
email_invoices string
email_reminders string
mail_salutation string
Response
data object

Client.

id string
type string

`company` or `private`.

Enum
company private
company_name string
firstname string
lastname string
email string
phone string
address string
zipcode string
city string
country string
company_registration_number string

Company registration number.

vat_number string
website string
iban string
bank_account_name string
bic string
payment_term integer

Payment term in days.

quote_expiration_days integer

Quote validity in days.

default_revenue_account string

Default revenue account label.

email_invoices string
email_reminders string
mail_salutation string
debtor_number string
meta object

Examples

PATCH /v1/clients/{id}
curl -X PATCH "https://api.appficient.nl/v1/clients/{id}" \
  -H "Authorization: Bearer apf_xxxxxxxx" \
  -H "Accept: application/json" \
  -H "Content-Type: application/json" \
  -d '{
    "type": "company",
    "company_name": "string",
    "firstname": "string",
    "lastname": "string",
    "email": "string",
    "phone": "string",
    "address": "string",
    "zipcode": "string",
    "city": "string",
    "country": "string",
    "company_registration_number": "string",
    "vat_number": "string",
    "website": "string",
    "iban": "string",
    "bank_account_name": "string",
    "bic": "string",
    "external_id": "string",
    "payment_term": 0,
    "quote_expiration_days": 0,
    "email_invoices": "string",
    "email_reminders": "string",
    "mail_salutation": "string"
}'

Curl, Node en response staan rechts naast dit endpoint.

Direct debit verifiëren

POST /v1/clients/{id}/direct-debit/verification
Authorization: HTTP
name: httpBearer
type: http
scheme: bearer
Path
Naam Type Beschrijving
id Required string
Headers
Naam Type Beschrijving
Idempotency-Key string Optional. Replay within 24h returns the same response.
Request body
amount string
Example: 0.01
verification object
amount string
Response
data object
status string
Enum
created
payment_url string

Verification URL.

external_id string
amount string
provider string
canceled_previous boolean
meta object

Examples

POST /v1/clients/{id}/direct-debit/verification
curl -X POST "https://api.appficient.nl/v1/clients/{id}/direct-debit/verification" \
  -H "Authorization: Bearer apf_xxxxxxxx" \
  -H "Accept: application/json" \
  -H "Content-Type: application/json" \
  -d '{
    "amount": 0.01,
    "verification": {
        "amount": "string"
    }
}'

Curl, Node en response staan rechts naast dit endpoint.

Machtiging ophalen

GET /v1/clients/{id}/direct-debit/mandate

Optional `subscription_id` activates when authorized

Authorization: HTTP
name: httpBearer
type: http
scheme: bearer
Path
Naam Type Beschrijving
id Required string
Query
Naam Type Beschrijving
subscription_id string
Request body

Geen

Response
data object
client_found boolean
provider string
mandate_present boolean
mandate_authorized boolean
direct_debit_enabled integer
mandate_status string

Mandate status.

Enum
none pending verified authorized active
customer_id string

Provider customer id.

mandate_id string

Provider mandate id.

can_activate_subscription boolean
subscription_activation object
status string
Enum
skipped not_found activated update_failed not_authorized
meta object

Examples

GET /v1/clients/{id}/direct-debit/mandate
curl -X GET "https://api.appficient.nl/v1/clients/{id}/direct-debit/mandate" \
  -H "Authorization: Bearer apf_xxxxxxxx" \
  -H "Accept: application/json"

Curl, Node en response staan rechts naast dit endpoint.

Klant koppelen

POST /v1/clients/{id}/links

Body must include the `client_id` to link

Authorization: HTTP
name: httpBearer
type: http
scheme: bearer
Path
Naam Type Beschrijving
id Required string
Request body
client_id string Required

Person to link.

function string
department string
Response
data object
company_id string
client_id string
function string
department string
meta object

Examples

POST /v1/clients/{id}/links
curl -X POST "https://api.appficient.nl/v1/clients/{id}/links" \
  -H "Authorization: Bearer apf_xxxxxxxx" \
  -H "Accept: application/json" \
  -H "Content-Type: application/json" \
  -d '{
    "client_id": "a1b2c3d4-e5f6-7890-abcd-ef1234567890",
    "function": "string",
    "department": "string"
}'

Curl, Node en response staan rechts naast dit endpoint.