Learn how Monite API Partners can manage their customers.

Overview

Entities represent the customers of Monite API partners and can be either organizations or individuals (persons).

An entity registers its operations and stores financial documents (such as payables or bank transactions) via the partner’s applications. Those financial documents are in turn stored and processed by Monite.

Create an entity representing your customer

To create a new entity, call POST /entities. The entity can be either an organization or an individual:

1curl -X POST 'https://api.sandbox.monite.com/v1/entities' \
2 -H 'X-Monite-Version: 2023-09-01' \
3 -H 'Authorization: Bearer YOUR_PARTNER_TOKEN' \
4 -H 'Content-Type: application/json' \
5 -d '{
6 "type": "organization",
7 "email": "sales@example.com",
8 "phone": "+4903023125000",
9 "website": "https://example.com",
10 "tax_id": "DE123456789",
11 "address": {
12 "country": "DE",
13 "city": "Berlin",
14 "state": "BE",
15 "postal_code": "10115",
16 "line1": "Flughafenstrasse 52"
17 },
18 "organization": {
19 "legal_name": "Acme Inc.",
20 "representative_provided": true,
21 "directors_provided": true,
22 "executives_provided": true,
23 "owners_provided": true,
24 "legal_entity_id": "506700GE1G29325QX363",
25 "business_structure": "private_corporation"
26 }
27 }'

Explanation of the request fields:

  • For organization entities:

    • business_structure - Required for EU and US entities to accept payments. Possible values:
      • EU: incorporated_partnership, private_corporation, public_corporation, unincorporated_partnership
      • US organizations: multi_member_llc, private_corporation, private_partnership, public_corporation, public_partnership, single_member_llc, sole_proprietorship, unincorporated_association
  • For individual entities:

    • id_number - Required for Dutch individuals to accept payments. The person’s Burgerservicenummer (BSN) or Dutch Citizen Service Number.
    • ssn_last_4 Required for US individual to accept payments. The last four digits of the person’s Social Security Number (SSN).
  • tax_id - the taxpayer registration number. If the entity will use Monite’s Account Receivable API, either tax_id or VAT ID, or both must be specified.

A successful response returns the unique ID assigned to the created entity, along with the rest of the entity information:

1{
2 "id": "aea39c7e-630f-4664-a449-de899ebd4912",
3 "created_at": "2022-04-21T14:23:01.691982+00:00",
4 "updated_at": "2022-04-21T14:23:01.691994+00:00",
5 ...
6}

Notes:

  • Spanish entities registered in the Canary Islands must use the country code IC instead of ES in their address.

    Spanish entities registered in Ceuta and Melilla must use the country code EA instead of ES.

  • Entities can use Monite payment rails to accept and send payments. For this, the entity must be onboarded. Providing as much information as possible during the entity’s registration process will make the onboarding process smoother.

  • After an entity is created, you must also add its bank accounts.

  • Entities of the organization type must also add information of the legally responsible individuals associated with the organization. See the Persons page for details.

You can provide the entity logo for use in the PDF documents generated by the entity (such as Accounts Receivable invoices and credit notes). The logo will also appear on the payment page if the entity uses Monite payment rails.

The logo image can be PNG or JPG up to 10 MB in size.

To upload the logo for an entity, call PUT /entities/{entity_id}/logo with a multipart/form-data body containing the image in the file field:

1curl -X PUT 'https://api.sandbox.monite.com/v1/entities/{entity_id}/logo' \
2 -H 'X-Monite-Version: 2023-09-01' \
3 -H 'Authorization: Bearer YOUR_PARTNER_TOKEN' \
4 -H 'Content-Type: multipart/form-data' \
5 -F 'file=@logo.png;type=image/png'

The specified logo is stored on Monite servers, and the successful response returns the logo file information:

1{
2 "id": "c5f499a7-19ea-4057-9191-112da7effa31",
3 "created_at": "2022-09-08T00:20:04.961397",
4 "file_type": "entity-logo",
5 "name": "upload",
6 "region": "eu-central-1",
7 "md5": "7537d5833741469a03162ce7a73bd4e8",
8 "mimetype": "image/png",
9 "url": "https://monite-file-saver-entity-logo-eu-central-1.s3.com/logo.png",
10 "size": 1691,
11 "previews": [],
12 "pages": []
13}

The logo file information will also returned in the logo response field when you retrieve entity information with GET /entities/{entity_id} or similar requests.

You can update the logo at any time later by uploading a new logo. You can also delete the logo by sending a DELETE request to the /entities/{entity_id}/logo.

List all entities

To get information about all the entities managed by the partner, call GET /entities. This endpoint supports the standard pagination, sorting, and filtering parameters.

Get a single entity

To get information about a specific entity, call GET /entities/{entity_id}:

1curl 'https://api.sandbox.monite.com/v1/entities/c5f499a7-19ea-4057-9191-112da7effa31' \
2 -H 'X-Monite-Version: 2023-09-01' \
3 -H 'Authorization: Bearer ACCESS_TOKEN'

Update entity information

To update the details of an existing entity, call PATCH /entities/{entity_id}:

1curl -X PATCH 'https://api.sandbox.monite.com/v1/entities/c5f499a7-19ea-4057-9191-112da7effa31' \
2 -H 'X-Monite-Version: 2023-09-01' \
3 -H 'Authorization: Bearer ACCESS_TOKEN' \
4 -H 'Content-Type: application/json' \
5 -d '{ "email": "info@example.com" }'

Access the current user’s entity

If you use entity user tokens to authenticate Monite API requests, the following endpoints let you access the current user’s entity without providing its ID:

To use these endpoints, the entity user in question must have a role with the entity.read and entity.update permissions, respectively.