Associés et participations
À qui appartient une entreprise et dans quoi elle détient des participations.
Cette page décrit à qui appartient une entreprise et dans quelles entreprises elle détient elle-même des parts. Quatre fonctionnalités fournissent les données : shareholders (Associés), shareholders_deep (Associés approfondis), ubos (Bénéficiaires effectifs) et shareholdings (Participations). Les exemples de réponses proviennent de requêtes d’exemple pour Hetzner Online GmbH, Ansbach HRB 6089.
Les données proviennent du Handelsregister (registre du commerce) : des Gesellschafterlisten (listes des associés) qu’une GmbH ou une UG dépose à chaque modification, des actes constitutifs et des associés inscrits des sociétés de personnes.
Chaque fonctionnalité ne coûte que si elle renvoie des données. Une fonctionnalité que ton plan n’inclut pas est omise par l’API sans erreur et n’est pas facturée.
| Fonctionnalité | Ce qu’elle renvoie | Crédits | Disponible |
|---|---|---|---|
| shareholders | Associés : les associés actuels avec leurs parts et les listes d’associés antérieures | 5 | chaque compte · Bêta |
| shareholders_deep | Associés approfondis : détenteurs avec numéros de parts, depuis quand ils détiennent des parts et ce qui a changé en dernier | 80 | Max |
| ubos | Bénéficiaires effectifs (UBO) : les personnes derrière l’entreprise, calculées à partir des listes d’associés | 10 | chaque compte · Bêta |
| shareholdings | Participations : entreprises dans lesquelles l’entreprise détient elle-même des parts | 5 | chaque compte · Bêta |
Associés par forme juridique
Ce que le registre indique sur les propriétaires dépend de la forme juridique. Le tableau montre ce que tu obtiens typiquement.
| Forme juridique | Associés dans la réponse |
|---|---|
| GmbH, UG | Tous les associés de la liste des associés selon le § 40 GmbHG, avec valeur nominale et quote-part du capital social (Stammkapital), plus les listes antérieures. |
| AG, SE, KGaA | Seulement au cas par cas, car les actionnaires d’une AG ne figurent dans aucun registre public. |
| GmbH & Co. KG | Les commanditaires (Kommanditisten) du registre avec leur montant de responsabilité, en partie aussi la GmbH commandité. |
| KG, OHG | Les associés inscrits : pour une KG les commandités (Komplementäre) et les commanditaires, pour une OHG les associés indéfiniment responsables. |
| e.K. | L’exploitant. |
| eG | Aucun. La liste des membres d’une coopérative n’est pas publique. |
| PartG | Les associés inscrits. |
Associés
La fonctionnalité shareholders renvoie les associés actuels : pour une GmbH d’après la liste des associés la plus récente, pour les sociétés de personnes et les commerçants individuels d’après le registre. Elle coûte 5 crédits, mais seulement si elle nomme des associés actuels. Si elle ne renvoie que des listes antérieures, elle ne coûte rien.
Chaque entrée de entries décrit une personne ou une société. Une personne a first_name, last_name et birth_date, une société entity_name, country_code et registration_reference.
curl -G "https://handelsregister.ai/api/v1/fetch-organization" \ -H "x-api-key: TA_CLE_API" \ --data-urlencode 'q=Hetzner Online GmbH' \ --data-urlencode 'feature=shareholders'
import requests response = requests.get( "https://handelsregister.ai/api/v1/fetch-organization", headers={"x-api-key": "TA_CLE_API"}, params={ "q": "Hetzner Online GmbH", "feature": ["shareholders"], }, ) data = response.json()
const url = new URL("https://handelsregister.ai/api/v1/fetch-organization"); url.searchParams.append("q", "Hetzner Online GmbH"); url.searchParams.append("feature", "shareholders"); const response = await fetch(url, { headers: { "x-api-key": "TA_CLE_API" }, }); const data = await response.json();
| Champ | Signification | Exemple | Disponibilité |
|---|---|---|---|
| shareholdersobject|null |
Les associés de l’entreprise : état actuel dans entries, états antérieurs dans history.Vide si aucun associé n’est connu, par exemple pour une AG ou une eGshareholders · Bêta |
– |
le plus souvent: GmbH, UG, GmbH & Co. KG, KG, OHG, e.K., PartG rarement: AG, SE, KGaA jamais: eG |
| shareholders.entriesarray | Les associés actuels, une entrée par personne ou société. | – | comme ci-dessus |
| shareholders.entries[].shareholderobject | Qui détient la part : une personne ou une société, avec les champs ci-dessous. | – | comme ci-dessus |
| shareholders.entries[].shareholder.entity_idstring|null | Identifiant de la personne ou de la société, pour son propre profil de personne ou profil d’entreprise.Vide si l’associé n’a pas pu être rapproché avec certitude |
"dd1cfcd3a25b5a63d549d768e2fcaaaf" |
comme ci-dessus |
| shareholders.entries[].shareholder.first_namestring | Prénom d’une personne, avec tous les prénoms inscrits. | – |
toujours: e.K. le plus souvent: GmbH, UG, GmbH & Co. KG, KG, OHG, PartG rarement: AG, SE, KGaA jamais: eG |
| shareholders.entries[].shareholder.last_namestring | Nom de famille d’une personne. | – | comme ci-dessus |
| shareholders.entries[].shareholder.birth_datestring|null | Date de naissance d’une personne, au format YYYY-MM-DD.Vide si le document n’indique pas de date de naissance | – | comme ci-dessus |
| shareholders.entries[].shareholder.entity_namestring | Nom d’une société associée. |
"ENSoXX GmbH" |
le plus souvent: GmbH, UG, GmbH & Co. KG rarement: AG, SE, KGaA, KG, OHG jamais: e.K., eG, PartG |
| shareholders.entries[].shareholder.country_codestring|null | Pays d’une société sous forme de code ISO à trois lettres (ISO 3166-1 alpha-3), par exemple DEU. |
"DEU" |
comme ci-dessus |
| shareholders.entries[].shareholder.registration_referencestring|null | Inscription au registre d’une société sous forme de texte, telle qu’elle figure dans le document.Vide si le document n’indique pas d’inscription au registre, souvent pour les sociétés étrangères |
"AG Ansbach HRB 6105" |
comme ci-dessus |
| shareholders.entries[].shareholder.addressstring|null | Adresse, lieu de résidence ou siège sous forme de texte, tel qu’il figure dans le document.Vide si le document n’indique pas d’adresse |
"Gunzenhausen" |
le plus souvent: GmbH, UG, GmbH & Co. KG, KG, OHG, e.K., PartG rarement: AG, SE, KGaA jamais: eG |
| shareholders.entries[].contributionobject|null | Le montant de la participation avec amount et currency : pour une GmbH la valeur nominale des parts, pour les commanditaires le montant de responsabilité inscrit (Haftsumme).Vide si aucun montant n’est inscrit, par exemple pour les associés indéfiniment responsables ou l’exploitant d’un e.K | – |
le plus souvent: GmbH, UG, GmbH & Co. KG en partie: KG, OHG rarement: AG, SE, KGaA jamais: e.K., eG, PartG |
| shareholders.entries[].contribution_rationumber|null | Quote-part du capital sous forme décimale : 1 signifie 100 %, 0.245 signifie 24,5 %.Vide si aucune quote-part ne peut être déduite, par exemple pour les sociétés de personnes |
0.945 |
le plus souvent: GmbH, UG rarement: AG, SE, KGaA, GmbH & Co. KG, KG, OHG jamais: e.K., eG, PartG |
| shareholders.entries[].roleobject | Le rôle : label sous forme de code fixe, plus de et en avec un nom long et un nom court, par exemple Kommanditist et Kom. | – |
le plus souvent: GmbH, UG, GmbH & Co. KG, KG, OHG, e.K., PartG rarement: AG, SE, KGaA jamais: eG |
| shareholders.entries[].role.labelstring |
Le rôle sous forme de code fixe. De nouvelles valeurs peuvent s’ajouter.Valeurs: SHAREHOLDER associé selon la liste des associés, LIMITED_PARTNER commanditaire (Kommanditist), FULLY_LIABLE_PARTNER associé indéfiniment responsable (persönlich haftender Gesellschafter), PARTNER associé d’une PartG, OWNER exploitant d’un e.K. |
"SHAREHOLDER" |
comme ci-dessus |
| shareholders.total_capitalobject|null | Le capital selon la liste des associés, avec amount et currency, la base de contribution_ratio.Vide si la liste n’indique pas de capital, et pour les sociétés de personnes | – |
le plus souvent: GmbH, UG rarement: AG, SE, KGaA, GmbH & Co. KG, KG, OHG jamais: e.K., eG, PartG |
Avec l’entity_id d’un associé, tu récupères son propre profil d’entreprise ou profil de personne. Tu suis ainsi une chaîne de détention niveau par niveau.
Historique des associés
shareholders.history est inclus sans frais supplémentaires. Il contient la date de la liste actuelle et les listes d’associés antérieures, les plus récentes en premier.
Pour une KG ou une GmbH & Co. KG, les anciens associés figurent dans register_ownership, avec dates d’entrée et de sortie issues du registre. Pour les OHG, PartG et e.K., tu les trouves dans shareholders_deep.
| Champ | Signification | Exemple | Disponibilité |
|---|---|---|---|
| shareholders.historyobject |
États antérieurs des associés, sans frais supplémentaires.Vide si aucun état antérieur n’existe ; le champ manque alors, par exemple pour OHG, PartG ou e.Kshareholders · Bêta |
– |
le plus souvent: GmbH, UG en partie: GmbH & Co. KG, KG, OHG rarement: AG, SE, KGaA jamais: e.K., eG, PartG |
| shareholders.history.current_as_ofstring|null | Date de la liste des associés dont provient entries.Vide si les associés proviennent du registre |
"2015-08-21" |
le plus souvent: GmbH, UG rarement: AG, SE, KGaA, GmbH & Co. KG, KG, OHG jamais: e.K., eG, PartG |
| shareholders.history.pastarray | Listes d’associés antérieures, les plus récentes en premier.Vide si une seule liste existe | – | comme ci-dessus |
| shareholders.history.past[].as_ofstring | Date de cette liste des associés. |
"2015-07-28" |
comme ci-dessus |
| shareholders.history.past[].data.total_capitalobject|null | Le capital selon cette liste, avec amount et currency. Les listes anciennes l’indiquent parfois en DEM. | – | comme ci-dessus |
| shareholders.history.past[].data.shareholdersarray | Les associés selon cette liste, avec les mêmes champs que entries. | – | comme ci-dessus |
| shareholders.history.register_ownershipobject | Pour la KG et la GmbH & Co. KG : les anciens associés selon le registre, dans past. | – |
en partie: GmbH & Co. KG, KG, OHG jamais: GmbH, UG, AG, SE, KGaA, e.K., eG, PartG |
| shareholders.history.register_ownership.past[].shareholderobject | L’ancien associé, avec les mêmes champs que dans entries. | – | comme ci-dessus |
| shareholders.history.register_ownership.past[].roleobject | Son rôle, structuré comme role dans entries. | – | comme ci-dessus |
| shareholders.history.register_ownership.past[].effective_fromstring|null | Depuis quand il était inscrit, au format YYYY-MM-DD. |
"2022-01-07" |
comme ci-dessus |
| shareholders.history.register_ownership.past[].effective_tostring|null | Jusqu’à quand il était inscrit. |
"2026-07-06" |
comme ci-dessus |
| shareholders.history.register_ownership.past[].effective_to_inferredboolean | true si effective_to est déduit et non inscrit explicitement. |
false |
comme ci-dessus |
| shareholders.history.register_ownership.past[].contributionnull | Toujours null ici. | – | comme ci-dessus |
| shareholders.history.register_ownership.past[].contribution_rationull | Toujours null ici. | – | comme ci-dessus |
Associés approfondis
La fonctionnalité shareholders_deep est incluse dans le plan Max. Elle coûte 80 crédits, mais seulement si le document actuel nomme au moins un détenteur.
Elle lit toutes les listes d’associés d’une entreprise, pas seulement la plus récente. Elle montre ainsi depuis quand quelqu’un détient des parts, à quoi ressemblaient les états antérieurs et ce que la dernière liste a changé.
curl -G "https://handelsregister.ai/api/v1/fetch-organization" \ -H "x-api-key: TA_CLE_API" \ --data-urlencode 'q=Hetzner Online GmbH' \ --data-urlencode 'feature=shareholders_deep'
import requests response = requests.get( "https://handelsregister.ai/api/v1/fetch-organization", headers={"x-api-key": "TA_CLE_API"}, params={ "q": "Hetzner Online GmbH", "feature": ["shareholders_deep"], }, ) data = response.json()
const url = new URL("https://handelsregister.ai/api/v1/fetch-organization"); url.searchParams.append("q", "Hetzner Online GmbH"); url.searchParams.append("feature", "shareholders_deep"); const response = await fetch(url, { headers: { "x-api-key": "TA_CLE_API" }, }); const data = await response.json();
Le document. record indique d’où provient l’état actuel, share_capital donne le capital selon ce document.
| Champ | Signification | Exemple | Disponibilité |
|---|---|---|---|
| shareholders_deepobject|null |
Détenteurs, parts, documents antérieurs et dernière modification.Vide si aucun document actuel et aucun associé inscrit n’est connu, typique pour AG, SE et eGshareholders_deep · à partir de Max |
– |
le plus souvent: GmbH, UG, GmbH & Co. KG, KG, OHG, e.K., PartG rarement: AG, SE, KGaA jamais: eG |
| shareholders_deep.recordobject | Le document dont provient l’état actuel : date et source. | – | comme ci-dessus |
| shareholders_deep.record.datestring|null |
La date à laquelle se rapporte le document. Elle suit généralement de peu la modification que montre le document.Vide si les associés proviennent du registre (COMMERCIAL_REGISTER) |
"2015-08-18" |
le plus souvent: GmbH, UG rarement: AG, SE, KGaA, GmbH & Co. KG, KG, OHG jamais: e.K., eG, PartG |
| shareholders_deep.record.sourcestring |
Le type de document.Valeurs: SHAREHOLDER_LIST liste des associés (Gesellschafterliste), FOUNDING_DOCUMENT acte constitutif, c’est-à-dire Musterprotokoll (procès-verbal type) ou Gesellschaftsvertrag (statuts), COMMERCIAL_REGISTER associés ou exploitants inscrits au registre |
"SHAREHOLDER_LIST" |
le plus souvent: GmbH, UG, GmbH & Co. KG, KG, OHG, e.K., PartG rarement: AG, SE, KGaA jamais: eG |
| shareholders_deep.share_capitalobject|null | Le capital selon le document : valeur, devise et base.Vide si le document n’indique pas de capital, et toujours pour COMMERCIAL_REGISTER | – |
le plus souvent: GmbH, UG rarement: AG, SE, KGaA, GmbH & Co. KG, KG, OHG jamais: e.K., eG, PartG |
| shareholders_deep.share_capital.basisstring |
L’origine du montant.Valeurs: REPORTED indiqué dans le document, CALCULATED calculé à partir du nombre et de la valeur nominale des parts |
"REPORTED" |
comme ci-dessus |
Les détenteurs. Chaque entrée de entries est une ligne du document, la plus grande part en premier. Si quelqu’un a plusieurs lignes, il apparaît plusieurs fois dans la liste.
| Champ | Signification | Exemple | Disponibilité |
|---|---|---|---|
| shareholders_deep.entriesarray |
Les détenteurs actuels, une ligne du document par entrée, la plus grande part en premier.shareholders_deep · à partir de Max |
– |
le plus souvent: GmbH, UG, GmbH & Co. KG, KG, OHG, e.K., PartG rarement: AG, SE, KGaA jamais: eG |
| shareholders_deep.entries[].holderobject | Qui détient la part. type détermine les champs qui suivent. | – | comme ci-dessus |
| shareholders_deep.entries[].holder.typestring |
Le type de détenteur.Valeurs: ORGANIZATION société ou autre organisation, PERSON personne physique, JOINT part détenue en commun, par exemple par une communauté d’héritiers, avec members |
"ORGANIZATION" |
comme ci-dessus |
| shareholders_deep.entries[].holder.entity_idstring|null | Identifiant du détenteur, pour son propre profil d’entreprise ou profil de personne.Vide si le détenteur n’a pas pu être rapproché avec certitude, et toujours pour JOINT |
"dd1cfcd3a25b5a63d549d768e2fcaaaf" |
comme ci-dessus |
| shareholders_deep.entries[].holder.namestring | Le nom. Pour les détenteurs rapprochés le nom actuel, sinon tel que dans le document. |
"ENSoXX GmbH" |
comme ci-dessus |
| shareholders_deep.entries[].holder.birth_datestring|null | Uniquement pour les personnes : la date de naissance.Vide si le document n’en indique pas | – |
toujours: e.K. le plus souvent: GmbH, UG, GmbH & Co. KG, KG, OHG, PartG rarement: AG, SE, KGaA jamais: eG |
| shareholders_deep.entries[].holder.legal_formstring|null | Uniquement pour les organisations : la forme juridique sous forme de texte, par exemple GmbH ou Ltd. |
"GmbH" |
le plus souvent: GmbH, UG, GmbH & Co. KG rarement: AG, SE, KGaA, KG, OHG jamais: e.K., eG, PartG |
| shareholders_deep.entries[].holder.statusstring|null |
Uniquement pour les organisations : le statut actuel au registre.Vide si le détenteur n’est pas rapproché, et toujours dans les documents antérieurs de historyValeurs: ACTIVE active, INACTIVE plus active, par exemple radiée ou fusionnée |
"ACTIVE" |
comme ci-dessus |
| shareholders_deep.entries[].holder.citystring|null | Siège ou lieu de résidence. |
"Gunzenhausen" |
le plus souvent: GmbH, UG, GmbH & Co. KG, KG, OHG, e.K., PartG rarement: AG, SE, KGaA jamais: eG |
| shareholders_deep.entries[].holder.countrystring|null | Pays sous forme de code ISO à trois lettres (ISO 3166-1 alpha-3), par exemple DEU, AUT ou LUX. |
"DEU" |
comme ci-dessus |
| shareholders_deep.entries[].holder.registrationobject|null | Uniquement pour les organisations : court, register_type et register_number.Vide si aucune inscription au registre n’est lisible, par exemple pour de nombreuses sociétés étrangères | – |
le plus souvent: GmbH, UG, GmbH & Co. KG rarement: AG, SE, KGaA, KG, OHG jamais: e.K., eG, PartG |
| shareholders_deep.entries[].holder.registration_textstring|null | Uniquement pour les organisations : l’inscription au registre sous forme de texte, quand registration manque ou ne nomme pas de tribunal. |
null |
rarement |
| shareholders_deep.entries[].rolestring |
Le rôle du détenteur. De nouvelles valeurs peuvent s’ajouter.Valeurs: SHAREHOLDER associé selon la liste des associés ou l’acte constitutif, LIMITED_PARTNER commanditaire (Kommanditist), FULLY_LIABLE_PARTNER associé indéfiniment responsable (persönlich haftender Gesellschafter), PARTNER associé d’une PartG, OWNER exploitant d’un e.K. |
"SHAREHOLDER" |
le plus souvent: GmbH, UG, GmbH & Co. KG, KG, OHG, e.K., PartG rarement: AG, SE, KGaA jamais: eG |
| shareholders_deep.entries[].sincestring|null | Depuis quand le détenteur détient des parts. Pour les associés inscrits, la date d’inscription.Vide si aucune date ne peut être déterminée, et toujours pour JOINT |
"2015-08-18" |
comme ci-dessus |
| shareholders_deep.entries[].since_basisstring|null |
Le degré de certitude de since.Valeurs: ENTRY_RECORDED attesté à partir de cette date : la liste précédente ne nomme pas encore le détenteur, EARLIEST_RECORD déjà présent dans le plus ancien document disponible, donc associé au moins depuis cette date |
"ENTRY_RECORDED" |
comme ci-dessus |
La part. ownership décrit combien détient un détenteur : en pourcentage, en valeur nominale et par les numéros d’ordre des parts.
| Champ | Signification | Exemple | Disponibilité |
|---|---|---|---|
| shareholders_deep.entries[].ownershipobject |
La part du détenteur.shareholders_deep · à partir de Max |
– |
le plus souvent: GmbH, UG, GmbH & Co. KG, KG, OHG, e.K., PartG rarement: AG, SE, KGaA jamais: eG |
| shareholders_deep.entries[].ownership.percentagenumber|null | Quote-part du capital en pourcentage, de 0 à 100. Il s’agit de la participation directe, pas des droits de vote.Vide si la part ne peut pas être déterminée de façon fiable, et toujours pour les associés inscrits des sociétés de personnes |
94.5 |
le plus souvent: GmbH, UG rarement: AG, SE, KGaA, GmbH & Co. KG, KG, OHG jamais: e.K., eG, PartG |
| shareholders_deep.entries[].ownership.percentage_basisstring|null |
L’origine de percentage.Valeurs: REPORTED indiqué dans le document ou déduit de la valeur nominale et du capital du document, CALCULATED calculé à partir du nombre et de la valeur nominale des parts |
"REPORTED" |
comme ci-dessus |
| shareholders_deep.entries[].ownership.nominal_amountobject|null | Somme des valeurs nominales avec valeur et devise. Pour les commanditaires, le montant de responsabilité inscrit (Haftsumme).Vide si aucun montant n’est connu | – |
le plus souvent: GmbH, UG, GmbH & Co. KG en partie: KG, OHG rarement: AG, SE, KGaA jamais: e.K., eG, PartG |
| shareholders_deep.entries[].ownership.share_countinteger|null | Nombre de parts (Geschäftsanteile).Vide si le nombre n’est pas connu pour toutes les parts |
47250 |
le plus souvent: GmbH, UG rarement: AG, SE, KGaA, GmbH & Co. KG, KG, OHG jamais: e.K., eG, PartG |
| shareholders_deep.entries[].ownership.share_rangesarray | Les parts par leurs numéros d’ordre dans la liste, une plage par suite de parts identiques. | – | comme ci-dessus |
| shareholders_deep.entries[].ownership.share_ranges[].frominteger|null | Premier numéro d’ordre de la plage. |
1 |
comme ci-dessus |
| shareholders_deep.entries[].ownership.share_ranges[].tointeger|null | Dernier numéro d’ordre de la plage. |
47250 |
comme ci-dessus |
| shareholders_deep.entries[].ownership.share_ranges[].countinteger|null | Nombre de parts dans la plage. |
47250 |
comme ci-dessus |
| shareholders_deep.entries[].ownership.share_ranges[].nominal_valueobject|null | Valeur nominale par part dans la plage, avec valeur et devise. | – | comme ci-dessus |
Historique et modifications. history contient les documents antérieurs avec les mêmes champs. Les détenteurs y figurent tels qu’ils apparaissaient dans le document de l’époque. changes compare l’état actuel au précédent.
| Champ | Signification | Exemple | Disponibilité |
|---|---|---|---|
| shareholders_deep.historyarray |
Les documents antérieurs, les plus récents en premier, chacun avec record, share_capital et entries. Les anciens associés inscrits sont regroupés dans la dernière entrée.shareholders_deep · à partir de Max |
– |
le plus souvent: GmbH, UG rarement: AG, SE, KGaA, GmbH & Co. KG, KG, OHG jamais: e.K., eG, PartG |
| shareholders_deep.history[].entries[].holder.membersarray | Pour JOINT : les détenteurs communs de type PERSON ou ORGANIZATION, avec les mêmes champs que holder. | – | rarement |
| shareholders_deep.history[].entries[].untilstring|null | Uniquement dans l’élément de history avec COMMERCIAL_REGISTER : la date de sortie de l’associé. | – |
en partie: GmbH & Co. KG, KG, OHG, PartG rarement: e.K. jamais: GmbH, UG, AG, SE, KGaA, eG |
| shareholders_deep.changesobject|null | Ce qui a changé avec le document actuel par rapport au précédent.Vide si il n’existe pas de document antérieur, et quand l’état actuel provient du registre ou d’un acte constitutif | – |
le plus souvent: GmbH, UG rarement: AG, SE, KGaA, GmbH & Co. KG, KG, OHG jamais: e.K., eG, PartG |
| shareholders_deep.changes.compared_tostring|null | Date du document précédent. |
"2015-07-16" |
comme ci-dessus |
| shareholders_deep.changes.joinedarray | Nouveaux détenteurs : holder avec entity_id, type et name, plus percentage. | – | comme ci-dessus |
| shareholders_deep.changes.leftarray | Détenteurs sortis, avec la part qu’ils avaient en dernier. | – | comme ci-dessus |
| shareholders_deep.changes.changedarray | Détenteurs dont la part a changé. | – | comme ci-dessus |
| shareholders_deep.changes.changed[].percentage_beforenumber|null | Part en pourcentage dans le document précédent. |
100 |
comme ci-dessus |
| shareholders_deep.changes.changed[].percentage_afternumber|null | Part en pourcentage dans le document actuel. |
5.5 |
comme ci-dessus |
1{2 "entity_id": "94eb910fef13f94585c48c263fa446d4",3 "name": "Hetzner Online GmbH",4 "shareholders_deep": {5 "record": {6 "date": "2015-08-18",7 "source": "SHAREHOLDER_LIST"8 },9 "share_capital": {10 "value": 50000,11 "currency": "EUR",12 "basis": "REPORTED"13 },14 "entries": [15 {16 "holder": {17 "entity_id": "dd1cfcd3a25b5a63d549d768e2fcaaaf",18 "type": "ORGANIZATION",19 "name": "ENSoXX GmbH",20 "legal_form": "GmbH",21 "status": "ACTIVE",22 "city": "Gunzenhausen",23 "country": "DEU",24 "registration": {25 "court": "Ansbach",26 "register_type": "HRB",27 "register_number": "6105"28 },29 "registration_text": null30 },31 "role": "SHAREHOLDER",32 "ownership": {33 "percentage": 94.5,34 "percentage_basis": "REPORTED",35 "nominal_amount": {36 "value": 47250,37 "currency": "EUR"38 },39 "share_count": 47250,40 "share_ranges": [41 {42 "from": 1,43 "to": 47250,44 "count": 47250,45 "nominal_value": {46 "value": 1,47 "currency": "EUR"48 }49 }50 ]51 },52 "since": "2015-08-18",53 "since_basis": "ENTRY_RECORDED"54 },55 {56 "holder": {57 "entity_id": "08ed5f967956831ca6588930fd2693ed",58 "type": "PERSON",59 "name": "Max Felix Mustermann",60 "birth_date": "1976-01-15",61 "city": "Musterheim",62 "country": "DEU"63 },64 "role": "SHAREHOLDER",65 "ownership": {66 "percentage": 5.5,67 "percentage_basis": "REPORTED",68 "nominal_amount": {69 "value": 2750,70 "currency": "EUR"71 },72 "share_count": 2750,73 "share_ranges": [74 {75 "from": 47251,76 "to": 50000,77 "count": 2750,78 "nominal_value": {79 "value": 1,80 "currency": "EUR"81 }82 }83 ]84 },85 "since": "2015-07-16",86 "since_basis": "EARLIEST_RECORD"87 }88 ],89 "history": [90 {91 "record": {92 "date": "2015-07-16",93 "source": "SHAREHOLDER_LIST"94 },95 "share_capital": {96 "value": 50000,97 "currency": "EUR",98 "basis": "REPORTED"99 },100 "entries": [101 {102 "holder": {103 "entity_id": "08ed5f967956831ca6588930fd2693ed",104 "type": "PERSON",105 "name": "Max Mustermann",106 "birth_date": "1976-01-15",107 "city": null,108 "country": null109 },110 "role": "SHAREHOLDER",111 "ownership": {112 "percentage": 100,113 "percentage_basis": "REPORTED",114 "nominal_amount": {115 "value": 50000,116 "currency": "EUR"117 },118 "share_count": 50000,119 "share_ranges": [120 {121 "from": 1,122 "to": 50000,123 "count": 50000,124 "nominal_value": {125 "value": 1,126 "currency": "EUR"127 }128 }129 ]130 },131 "since": "2015-07-16",132 "since_basis": "EARLIEST_RECORD"133 }134 ]135 }136 ],137 "changes": {138 "compared_to": "2015-07-16",139 "joined": [140 {141 "holder": {142 "entity_id": "dd1cfcd3a25b5a63d549d768e2fcaaaf",143 "type": "ORGANIZATION",144 "name": "ENSoXX GmbH"145 },146 "percentage": 94.5147 }148 ],149 "left": [],150 "changed": [151 {152 "holder": {153 "entity_id": "08ed5f967956831ca6588930fd2693ed",154 "type": "PERSON",155 "name": "Max Felix Mustermann"156 },157 "percentage_before": 100,158 "percentage_after": 5.5159 }160 ]161 }162 }163}
Par rapport à shareholders, shareholders_deep ajoute les numéros de parts, la date depuis laquelle quelqu’un détient des parts, les modifications et les parts détenues en commun avec leurs membres. Pour des comparaisons entre entreprises et années, mieux vaut utiliser partout la même fonctionnalité.
Bénéficiaires effectifs
Les bénéficiaires effectifs sont les personnes physiques qui possèdent en fin de compte une entreprise. La fonctionnalité ubos suit les listes d’associés à travers les niveaux de détention jusqu’aux personnes. La liste nomme chaque personne avec une quote-part calculée, sans seuil minimal. Elle coûte 10 crédits quand elle renvoie des données.
Si une part ne peut être rattachée à une personne, elle figure dans unresolved_beneficial_owners avec la raison. Souvent, c’est une société étrangère qui la détient. Nos données couvrent les entreprises allemandes, nous ne connaissons donc pas les associés d’une société étrangère. coverage indique quel pourcentage du capital est rattaché à des personnes et combien reste ouvert. Les deux valeurs n’additionnent pas toujours 100. Pour le reste, les données sur les associés ne nomment aucun détenteur.
La fonctionnalité est facturée dès qu’elle renvoie un résultat. Cela vaut aussi quand toutes les parts figurent dans unresolved_beneficial_owners.
curl -G "https://handelsregister.ai/api/v1/fetch-organization" \ -H "x-api-key: TA_CLE_API" \ --data-urlencode 'q=Hetzner Online GmbH' \ --data-urlencode 'feature=ubos'
import requests response = requests.get( "https://handelsregister.ai/api/v1/fetch-organization", headers={"x-api-key": "TA_CLE_API"}, params={ "q": "Hetzner Online GmbH", "feature": ["ubos"], }, ) data = response.json()
const url = new URL("https://handelsregister.ai/api/v1/fetch-organization"); url.searchParams.append("q", "Hetzner Online GmbH"); url.searchParams.append("feature", "ubos"); const response = await fetch(url, { headers: { "x-api-key": "TA_CLE_API" }, }); const data = await response.json();
| Champ | Signification | Exemple | Disponibilité |
|---|---|---|---|
| ubosobject|null |
Les bénéficiaires effectifs, calculés à partir des listes d’associés à travers les niveaux de détention.Vide si aucune chaîne ne peut être construite à partir des listes d’associés, par exemple pour AG, eG ou e.Kubos · Bêta |
– |
le plus souvent: GmbH, UG rarement: AG, SE, KGaA, GmbH & Co. KG, KG, OHG jamais: e.K., eG, PartG |
| ubos.beneficial_ownersarray | Les personnes qui possèdent l’entreprise directement ou via d’autres sociétés.Vide si aucune part ne peut être rattachée à une personne | – | comme ci-dessus |
| ubos.beneficial_owners[].personobject | La personne, avec les champs ci-dessous. | – |
en partie: GmbH, UG rarement: AG, SE, KGaA, GmbH & Co. KG, KG, OHG jamais: e.K., eG, PartG |
| ubos.beneficial_owners[].person.entity_idstring|null | Identifiant de la personne, pour le profil de personne.Vide si la personne n’a pas pu être rapprochée avec certitude | – | comme ci-dessus |
| ubos.beneficial_owners[].person.namestring | Nom complet. | – | comme ci-dessus |
| ubos.beneficial_owners[].person.name_partsobject | Le nom décomposé : given et family, et canonical_name quand il est connu. | – | comme ci-dessus |
| ubos.beneficial_owners[].person.birth_datestring|null | Date de naissance. | – | comme ci-dessus |
| ubos.beneficial_owners[].person.locationobject|null | Lieu de résidence dans home : city, county, state et country.Vide si aucun lieu de résidence n’est connu | – | comme ci-dessus |
| ubos.beneficial_owners[].ownership_percentagenumber | Quote-part totale de la personne en pourcentage, additionnée sur tous les chemins. |
50 |
comme ci-dessus |
| ubos.beneficial_owners[].pathsarray | Chaque chemin vers la personne, avec la quote-part le long de ce chemin. | – | comme ci-dessus |
| ubos.beneficial_owners[].paths[].percentagenumber | Quote-part en pourcentage qui arrive par ce chemin. |
50 |
comme ci-dessus |
| ubos.beneficial_owners[].paths[].viaarray | Les sociétés de ce chemin, en premier l’associé direct de l’entreprise demandée (depth 1). Les champs sont les mêmes que dans via des parts non résolues.Vide si la personne détient ses parts directement | – | comme ci-dessus |
| Champ | Signification | Exemple | Disponibilité |
|---|---|---|---|
| ubos.unresolved_beneficial_ownersarray |
Parts qui n’ont pas pu être rattachées à une personne.Vide si toutes les parts sont résoluesubos · Bêta |
– |
le plus souvent: GmbH, UG rarement: AG, SE, KGaA, GmbH & Co. KG, KG, OHG jamais: e.K., eG, PartG |
| ubos.unresolved_beneficial_owners[].reasonstring |
Pourquoi la chaîne s’arrête ici. De nouvelles valeurs peuvent s’ajouter.Valeurs: unlinked l’associé est une société que nous ne pouvons rattacher à aucune inscription au registre allemand, généralement une société étrangère. Nous ne connaissons pas ses associés, la chaîne s’arrête donc ici, no_further_shareholder_data l’associé est une société allemande que nous connaissons, mais il n’existe pas de liste des associés pour elle, par exemple une KG, cycle la chaîne ramène à une société qui y figure déjà, par exemple quand une société détient ses propres parts, unknown on ne sait rien de l’associé, ni son nom ni sa quote-part |
"cycle" |
comme ci-dessus |
| ubos.unresolved_beneficial_owners[].namestring|null | Nom de l’associé où la chaîne s’arrête.Vide si la raison est unknown |
"ENSoXX Holding AG" |
comme ci-dessus |
| ubos.unresolved_beneficial_owners[].entity_idstring|null | Son identifiant, pour son propre profil d’entreprise.Vide si l’associé n’est rapproché d’aucune entreprise de nos données, c’est-à-dire pour les raisons unlinked et unknown |
"58d67a0bb99b2bc5644cb8daba58e6a6" |
comme ci-dessus |
| ubos.unresolved_beneficial_owners[].legal_formstring|null | Sa forme juridique. |
"AG" |
comme ci-dessus |
| ubos.unresolved_beneficial_owners[].addressobject|array | Son adresse avec street, house_number, postal_code, city, county, state, country et coordinates.Vide si aucune adresse n’est connue ; la valeur est alors une liste vide [] | – | comme ci-dessus |
| ubos.unresolved_beneficial_owners[].registrationobject|array | Son inscription au registre avec court, register_type et register_number, aussi issue de registres étrangers.Vide si aucune inscription n’est connue ; la valeur est alors une liste vide [] | – | comme ci-dessus |
| ubos.unresolved_beneficial_owners[].ownership_percentagenumber | La part non résolue en pourcentage, calculée jusqu’à l’entreprise demandée. Elle peut valoir 0. |
0 |
comme ci-dessus |
| ubos.unresolved_beneficial_owners[].viaarray | Les sociétés par lesquelles passe la chaîne jusqu’ici, en premier l’associé direct de l’entreprise demandée.Vide si la part non résolue est détenue directement dans l’entreprise demandée | – | comme ci-dessus |
| ubos.unresolved_beneficial_owners[].via[].depthinteger | Le niveau : 1 est un associé direct de l’entreprise demandée. À côté figurent le nom et l’entity_id de la société. |
1 |
comme ci-dessus |
| ubos.unresolved_beneficial_owners[].via[].step_percentagenumber | Quote-part en pourcentage à ce niveau. |
94.5 |
comme ci-dessus |
| ubos.coverageobject | Quelle part du capital est rattachée à des personnes et combien reste ouvert. Les deux valeurs n’additionnent pas toujours 100. | – | comme ci-dessus |
| ubos.coverage.resolved_percentagenumber | Rattaché à des personnes, en pourcentage. |
5.5 |
comme ci-dessus |
| ubos.coverage.unresolved_percentagenumber | Non rattaché à des personnes, en pourcentage. |
0 |
comme ci-dessus |
1{2 "entity_id": "94eb910fef13f94585c48c263fa446d4",3 "name": "Hetzner Online GmbH",4 "ubos": {5 "beneficial_owners": [6 {7 "person": {8 "entity_id": "08ed5f967956831ca6588930fd2693ed",9 "name": "Max Felix Mustermann",10 "birth_date": "1976-01-15",11 "name_parts": {12 "given": "Max Felix",13 "family": "Mustermann",14 "canonical_name": "Mustermann, Max Felix"15 },16 "location": {17 "home": {18 "city": "Musterheim",19 "county": "Musterheim (Landkreis)",20 "state": "Bayern",21 "country": "DEU"22 }23 }24 },25 "ownership_percentage": 5.5,26 "paths": [27 {28 "percentage": 5.5,29 "via": []30 }31 ]32 }33 ],34 "unresolved_beneficial_owners": [35 {36 "reason": "cycle",37 "entity_id": "58d67a0bb99b2bc5644cb8daba58e6a6",38 "name": "ENSoXX Holding AG",39 "legal_form": "AG",40 "address": {41 "house_number": "25",42 "street": "Industriestraße",43 "postal_code": "91710",44 "city": "Gunzenhausen",45 "county": "Weißenburg-Gunzenhausen",46 "state": "Bayern",47 "country": "DEU",48 "coordinates": {49 "latitude": 49.12483,50 "longitude": 10.7805251 }52 },53 "registration": {54 "court": "Ansbach",55 "register_type": "HRB",56 "register_number": "6211"57 },58 "ownership_percentage": 0,59 "via": [60 {61 "depth": 1,62 "name": "ENSoXX GmbH",63 "entity_id": "dd1cfcd3a25b5a63d549d768e2fcaaaf",64 "step_percentage": 94.565 },66 {67 "depth": 2,68 "name": "ENSoXX Holding AG",69 "entity_id": "58d67a0bb99b2bc5644cb8daba58e6a6",70 "step_percentage": 10071 }72 ]73 },74 {75 "reason": "unknown",76 "entity_id": null,77 "name": null,78 "legal_form": null,79 "address": [],80 "registration": [],81 "ownership_percentage": 0,82 "via": [83 {84 "depth": 1,85 "name": "ENSoXX GmbH",86 "entity_id": "dd1cfcd3a25b5a63d549d768e2fcaaaf",87 "step_percentage": 94.588 },89 {90 "depth": 2,91 "name": "ENSoXX Holding AG",92 "entity_id": "58d67a0bb99b2bc5644cb8daba58e6a6",93 "step_percentage": 10094 }95 ]96 },97 {98 "reason": "unknown",99 "entity_id": null,100 "name": null,101 "legal_form": null,102 "address": [],103 "registration": [],104 "ownership_percentage": 0,105 "via": [106 {107 "depth": 1,108 "name": "ENSoXX GmbH",109 "entity_id": "dd1cfcd3a25b5a63d549d768e2fcaaaf",110 "step_percentage": 94.5111 },112 {113 "depth": 2,114 "name": "ENSoXX Holding AG",115 "entity_id": "58d67a0bb99b2bc5644cb8daba58e6a6",116 "step_percentage": 100117 }118 ]119 }120 ],121 "coverage": {122 "resolved_percentage": 5.5,123 "unresolved_percentage": 0124 }125 }126}
Nous calculons les données à partir des listes d’associés. Les données sur les bénéficiaires effectifs du Transparenzregister (registre de transparence) ne sont plus accessibles au public depuis fin 2022.
Participations
La fonctionnalité shareholdings montre l’autre sens : dans quelles entreprises l’entreprise demandée détient des parts. Les participations proviennent des listes d’associés de ces entreprises. Elle coûte 5 crédits quand il y a des participations.
curl -G "https://handelsregister.ai/api/v1/fetch-organization" \ -H "x-api-key: TA_CLE_API" \ --data-urlencode 'q=Hetzner Online GmbH' \ --data-urlencode 'feature=shareholdings'
import requests response = requests.get( "https://handelsregister.ai/api/v1/fetch-organization", headers={"x-api-key": "TA_CLE_API"}, params={ "q": "Hetzner Online GmbH", "feature": ["shareholdings"], }, ) data = response.json()
const url = new URL("https://handelsregister.ai/api/v1/fetch-organization"); url.searchParams.append("q", "Hetzner Online GmbH"); url.searchParams.append("feature", "shareholdings"); const response = await fetch(url, { headers: { "x-api-key": "TA_CLE_API" }, }); const data = await response.json();
| Champ | Signification | Exemple | Disponibilité |
|---|---|---|---|
| shareholdingsobject|null |
Les entreprises dans lesquelles l’entreprise demandée détient des parts.Vide si aucune participation n’est connueshareholdings · Bêta |
– |
le plus souvent: AG, SE, KGaA en partie: GmbH, UG rarement: GmbH & Co. KG, KG, OHG, e.K., eG, PartG |
| shareholdings.holdings.currentarray | Les participations actuelles, une par entreprise. | – | comme ci-dessus |
| shareholdings.holdings.current[].organizationobject | L’entreprise dans laquelle les parts sont détenues. | – | comme ci-dessus |
| shareholdings.holdings.current[].organization.entity_idstring | Identifiant de l’entreprise, pour son profil d’entreprise. |
"63529c3a793e9f002196b4fd344e1241" |
comme ci-dessus |
| shareholdings.holdings.current[].organization.namestring|null | Nom de l’entreprise. |
"Hetzner Cloud GmbH" |
comme ci-dessus |
| shareholdings.holdings.current[].organization.legal_formstring|null | Forme juridique de l’entreprise. |
"GmbH" |
comme ci-dessus |
| shareholdings.holdings.current[].organization.statusstring|null | Statut de l’entreprise au registre, par exemple ACTIVE. |
"ACTIVE" |
comme ci-dessus |
| shareholdings.holdings.current[].organization.addressobject|array | Adresse de l’entreprise, structurée comme address dans les données de base.Vide si aucune adresse n’est connue ; la valeur est alors une liste vide [] | – | comme ci-dessus |
| shareholdings.holdings.current[].organization.registrationobject|array | Inscription au registre de l’entreprise avec court, register_type et register_number.Vide si aucune inscription n’est connue ; la valeur est alors une liste vide [] | – | comme ci-dessus |
| shareholdings.holdings.current[].ownership.percentagenumber|null | Part en pourcentage : 100 signifie 100 %.Vide si la liste ne permet pas d’établir de part |
100 |
comme ci-dessus |
| shareholdings.holdings.current[].ownership.contributionobject | Valeur nominale des parts avec amount et currency. | – | comme ci-dessus |
| shareholdings.holdings.current[].as_ofstring | Date de la liste des associés dont provient la participation. |
"2017-09-19" |
comme ci-dessus |
| shareholdings.summary.total_currentinteger | Nombre de participations actuelles. |
2 |
comme ci-dessus |
1{2 "entity_id": "94eb910fef13f94585c48c263fa446d4",3 "name": "Hetzner Online GmbH",4 "shareholdings": {5 "holdings": {6 "current": [7 {8 "organization": {9 "entity_id": "63529c3a793e9f002196b4fd344e1241",10 "name": "Hetzner Cloud GmbH",11 "status": "ACTIVE",12 "legal_form": "GmbH",13 "address": {14 "house_number": "12A",15 "street": "Feringastraße",16 "postal_code": "85774",17 "city": "Unterföhring",18 "county": "München (Landkreis)",19 "state": "Bayern",20 "country": "DEU",21 "coordinates": {22 "latitude": 48.17815,23 "longitude": 11.6348724 }25 },26 "registration": {27 "court": "München",28 "register_type": "HRB",29 "register_number": "226782"30 }31 },32 "ownership": {33 "percentage": 100,34 "contribution": {35 "amount": 25000,36 "currency": "EUR"37 }38 },39 "as_of": "2017-09-19"40 },41 {42 "organization": {43 "entity_id": "997f1b8314b8b56573208ae2334abb1d",44 "name": "possum Projekt 1 GmbH",45 "status": "ACTIVE",46 "legal_form": "GmbH",47 "address": {48 "house_number": "169-173",49 "street": "Meisenburgstraße",50 "postal_code": "45133",51 "city": "Essen",52 "county": "Essen",53 "state": "Nordrhein-Westfalen",54 "country": "DEU",55 "coordinates": {56 "latitude": 51.40102,57 "longitude": 6.9580558 }59 },60 "registration": {61 "court": "Essen",62 "register_type": "HRB",63 "register_number": "35604"64 }65 },66 "ownership": {67 "percentage": 100,68 "contribution": {69 "amount": 25000,70 "currency": "EUR"71 }72 },73 "as_of": "2026-08-18"74 }75 ]76 },77 "summary": {78 "total_current": 279 }80 }81}
Les participations d’une personne figurent dans le profil de personne, avec la même fonctionnalité.
Structures de groupe
Tu reconstitues les liens de groupe à partir de plusieurs données. shareholders et shareholdings montrent les participations un niveau au-dessus et en dessous, ubos les personnes au bout de la chaîne.
Le Réseau d’entreprises relie entreprises et personnes sur deux niveaux. Il inclut aussi les entreprises liées.
Les fusions, scissions et autres transformations figurent sous Fusions & acquisitions.