Partner Legal Entities
Manage legal entities on child tenants (Partner API only).
List legal entities on child tenant
GET
/bizzlink/tenants/{tenantId}/legal-entitiesList legal entities on child tenant
Responses
| Status | Description |
|---|---|
200 | Legal entity list |
403 | Not a partner or tenant not a child |
404 | Tenant not found |
Response Body — JsonApiListDocumentLegalEntityResponseAttributes
| Field | Type | Description |
|---|---|---|
JsonApiResourceLegalEntityResponseAttributes[] | ||
LegalEntityResponseAttributes | Resource-specific fields. | |
active | boolean | Whether the legal entity is active. |
addressCity | string | City. |
addressCountry | string | Country code (ISO 3166-1 alpha-2). |
addressPostalCode | string | Postal code. |
addressStreet | string | Street address. |
contactEmail | string | Contact email. |
contactName | string | Contact person name. |
contactPhone | string | Contact phone. |
createdAt | datetime | Timestamp when created. |
customerName | string | Legal entity name. |
legalEntityCode | string | Legal entity code. |
tradeRegisterNumber | string | Trade register number. |
updatedAt | datetime | Timestamp of last update. |
vatNumber | string | VAT number. |
id | string | Unique resource identifier (UUID). Use this value to poll the status endpoint or to reference the resource in subsequent requests. |
type | string | Resource type — matches the endpoint (e.g. 'invoices' for POST /documents/invoices, 'documents' for GET /documents/{id}/status). |
JsonApiLinks | ||
first | string | URL of the first page. |
last | string | URL of the last page. |
next | string | URL of the next page, null on last page. |
prev | string | URL of the previous page, null on first page. |
self | string | URL of the current page. |
JsonApiPaginationMeta | ||
page | integer | 1-based index of the current page. |
size | integer | Number of items per page. |
totalElements | integer | Total number of items across all pages. |
totalPages | integer | Total number of pages. |
cURL Request
curl -X GET https://gateway.vigasoft.lu/bizzlink/tenants/{tenantId}/legal-entities \
-H "Authorization: Bearer $API_TOKEN" \
-H "X-Bizzlink-Signature: t=$TIMESTAMP,v1=$SIGNATURE"Response
200 OK{
"data": [
{
"attributes": {
"active": true,
"addressCity": "string",
"addressCountry": "LU",
"addressPostalCode": "string",
"addressStreet": "string",
"contactEmail": "string",
"contactName": "string",
"contactPhone": "string",
"createdAt": "2026-01-01T00:00:00Z",
"customerName": "ACME Luxembourg S.A.",
"legalEntityCode": "ACME-LU",
"tradeRegisterNumber": "B123456",
"updatedAt": "2026-01-01T00:00:00Z",
"vatNumber": "LU12345678"
},
"id": "770e8400-e29b-41d4-a716-446655440000",
"type": "legal-entities"
}
],
"links": {
"first": "https://gateway.vigasoft.lu/bizzlink/documents?page%5Bnumber%5D=1&page%5Bsize%5D=20",
"last": "https://gateway.vigasoft.lu/bizzlink/documents?page%5Bnumber%5D=7&page%5Bsize%5D=20",
"next": "https://gateway.vigasoft.lu/bizzlink/documents?page%5Bnumber%5D=4&page%5Bsize%5D=20",
"prev": "https://gateway.vigasoft.lu/bizzlink/documents?page%5Bnumber%5D=2&page%5Bsize%5D=20",
"self": "https://gateway.vigasoft.lu/bizzlink/documents?page%5Bnumber%5D=3&page%5Bsize%5D=20"
},
"meta": {
"page": 1,
"size": 20,
"totalElements": 137,
"totalPages": 7
}
}Create legal entity on child tenant
POST
/bizzlink/tenants/{tenantId}/legal-entitiesCreate legal entity on child tenant
Request Body
| Field | Type | Description |
|---|---|---|
| required | object | Resource envelope. 'attributes' holds the domain fields; 'meta.scope' declares whether the resource belongs to the whole tenant or to a specific legal entity (Peppol ID). |
| required | LegalEntityCreateAttributes | The actual resource fields. |
addressCityrequired | string | City. |
addressCountryrequired | string | ISO 3166-1 alpha-2 country code. |
addressPostalCoderequired | string | Postal code. |
addressStreetrequired | string | Street address. |
contactEmailrequired | string | Contact email. |
contactName | string | Contact person name. |
contactPhone | string | Contact phone. |
customerNamerequired | string | Legal entity name. |
tradeRegisterNumberrequired | string | Trade register number. |
vatNumber | string | VAT number. |
JsonApiMeta | Optional JSON:API meta. Only used by scoped resources (e.g. email templates, notification emails) to declare their ownership scope. | |
| required | JsonApiScope | |
typerequired | string | Scope type. 'tenant' = applies to the whole tenant. 'legal-entity' = applies only to the Peppol ID given in 'value'. 'partner' = applies to all child tenants of the calling partner tenant; 'value' must be empty. |
value | string | Required when type='legal-entity': the Peppol ID (scheme:identifier) that owns this resource, e.g. '9938:lu28079289'. Must belong to the requesting tenant. Ignored when type='tenant'. Must be empty when type='partner'. |
type | string | Must be 'legal-entities' for this endpoint. |
Responses
| Status | Description |
|---|---|
201 | Legal entity created |
403 | Not a partner or tenant not a child |
404 | Tenant not found |
cURL Request
curl -X POST https://gateway.vigasoft.lu/bizzlink/tenants/{tenantId}/legal-entities \
-H "Authorization: Bearer $API_TOKEN" \
-H "X-Bizzlink-Signature: t=$TIMESTAMP,v1=$SIGNATURE" \
-H "Content-Type: application/json" \
-d '{
"data": {}
}'Update legal entity on child tenant
PATCH
/bizzlink/tenants/{tenantId}/legal-entities/{leId}Update legal entity on child tenant
Request Body
| Field | Type | Description |
|---|---|---|
| required | object | |
| required | LegalEntityCreateAttributes | |
addressCityrequired | string | City. |
addressCountryrequired | string | ISO 3166-1 alpha-2 country code. |
addressPostalCoderequired | string | Postal code. |
addressStreetrequired | string | Street address. |
contactEmailrequired | string | Contact email. |
contactName | string | Contact person name. |
contactPhone | string | Contact phone. |
customerNamerequired | string | Legal entity name. |
tradeRegisterNumberrequired | string | Trade register number. |
vatNumber | string | VAT number. |
id | string | |
JsonApiMeta | ||
| required | JsonApiScope | |
typerequired | string | Scope type. 'tenant' = applies to the whole tenant. 'legal-entity' = applies only to the Peppol ID given in 'value'. 'partner' = applies to all child tenants of the calling partner tenant; 'value' must be empty. |
value | string | Required when type='legal-entity': the Peppol ID (scheme:identifier) that owns this resource, e.g. '9938:lu28079289'. Must belong to the requesting tenant. Ignored when type='tenant'. Must be empty when type='partner'. |
type | string | Must be 'legal-entities' for this endpoint. |
Responses
| Status | Description |
|---|---|
200 | Legal entity updated |
403 | Not a partner or tenant not a child |
404 | Tenant or legal entity not found |
Response Body — JsonApiDocumentLegalEntityResponseAttributes
| Field | Type | Description |
|---|---|---|
JsonApiResourceLegalEntityResponseAttributes | ||
LegalEntityResponseAttributes | Resource-specific fields. | |
active | boolean | Whether the legal entity is active. |
addressCity | string | City. |
addressCountry | string | Country code (ISO 3166-1 alpha-2). |
addressPostalCode | string | Postal code. |
addressStreet | string | Street address. |
contactEmail | string | Contact email. |
contactName | string | Contact person name. |
contactPhone | string | Contact phone. |
createdAt | datetime | Timestamp when created. |
customerName | string | Legal entity name. |
legalEntityCode | string | Legal entity code. |
tradeRegisterNumber | string | Trade register number. |
updatedAt | datetime | Timestamp of last update. |
vatNumber | string | VAT number. |
id | string | Unique resource identifier (UUID). Use this value to poll the status endpoint or to reference the resource in subsequent requests. |
type | string | Resource type — matches the endpoint (e.g. 'invoices' for POST /documents/invoices, 'documents' for GET /documents/{id}/status). |
cURL Request
curl -X PATCH https://gateway.vigasoft.lu/bizzlink/tenants/{tenantId}/legal-entities/{leId} \
-H "Authorization: Bearer $API_TOKEN" \
-H "X-Bizzlink-Signature: t=$TIMESTAMP,v1=$SIGNATURE" \
-H "Content-Type: application/json" \
-d '{
"data": {}
}'Response
200 OK{
"data": {
"attributes": {
"active": true,
"addressCity": "string",
"addressCountry": "LU",
"addressPostalCode": "string",
"addressStreet": "string",
"contactEmail": "string",
"contactName": "string",
"contactPhone": "string",
"createdAt": "2026-01-01T00:00:00Z",
"customerName": "ACME Luxembourg S.A.",
"legalEntityCode": "ACME-LU",
"tradeRegisterNumber": "B123456",
"updatedAt": "2026-01-01T00:00:00Z",
"vatNumber": "LU12345678"
},
"id": "770e8400-e29b-41d4-a716-446655440000",
"type": "legal-entities"
}
}