---
title: API REST – Produits génériques et spécifiques
description: "Les produits génériques et spécifiques utilisent les opérations standard de l'API sur les Produits. Aucun endpoint métier supplémentaire n'est nécessaire : les mêmes champs, listes connexes, validations et calculs sont utilisés depuis Kafinea, l'API REST et le serveur MCP. Avant…"
url: "https://www.kafinea.com/fr/documentation/api/api-rest-produits-generiques-et-specifiques/"
updated: "2026-11-04"
category: Intégrations / API
---

# API REST – Produits génériques et spécifiques

Les produits génériques et spécifiques utilisent les opérations standard de l'API sur les Produits. Aucun endpoint métier supplémentaire n'est nécessaire : les mêmes champs, listes connexes, validations et calculs sont utilisés depuis Kafinea, l'API REST et le serveur MCP.

Avant une intégration, utilisez `describe` sur le module Produits. Si les champs attendus ne sont pas retournés, l'administrateur doit les rendre visibles dans le gestionnaire d'agencement.

---

## Créer ou modifier un produit générique

Utilisez `create` ou `revise` et renseignez la nature du produit ainsi que sa politique tarifaire. L'exemple suivant transforme un produit existant en produit générique avec un prix calculé depuis le spécifique le moins cher :

```bash
curl -X POST "https://apps.kafinea.com/{instance}/webservice.php" \
  --data-urlencode "operation=revise" \
  --data-urlencode "sessionName=YOUR_SESSION_ID" \
  --data-urlencode 'element={
    "id": "14x1201",
    "is_standard": 1,
    "standard_pricing_mode": "CHEAPEST_SPECIFIC",
    "standard_margin_pct": 25,
    "standard_price_rounding": "0.01"
  }'
```

Le prix est recalculé automatiquement après l'enregistrement. En mode de saisie manuelle, le prix fourni reste inchangé.

---

## Rattacher un produit spécifique

Deux chemins équivalents sont disponibles.

Vous pouvez réviser le produit spécifique en renseignant son produit générique parent :

```bash
curl -X POST "https://apps.kafinea.com/{instance}/webservice.php" \
  --data-urlencode "operation=revise" \
  --data-urlencode "sessionName=YOUR_SESSION_ID" \
  --data-urlencode 'element={
    "id": "14x1250",
    "is_standard": 0,
    "standard_parent_id": "14x1201"
  }'
```

Vous pouvez également utiliser la liste connexe déclarée sur le produit générique :

```bash
curl -X POST "https://apps.kafinea.com/{instance}/webservice.php" \
  --data-urlencode "operation=add_related" \
  --data-urlencode "sessionName=YOUR_SESSION_ID" \
  --data-urlencode "sourceRecordId=14x1201" \
  --data-urlencode "relatedRecordId=14x1250" \
  --data-urlencode "relationIdLabel=Specific Products"
```

Dans les deux cas, Kafinea valide que le parent est bien un produit générique, enregistre le spécifique par le chemin normal de la fiche et recalcule les prix concernés.

Pour retirer le rattachement, révisez le produit spécifique avec une valeur vide :

```json
{
  "id": "14x1250",
  "standard_parent_id": ""
}
```

---

## Lire les produits spécifiques

Utilisez `relatedtypes` pour découvrir la liste connexe, puis `query_related` avec son libellé exact. Vous pouvez aussi interroger directement les Produits avec `query` lorsque vous connaissez l'identifiant du parent.

Le serveur MCP expose les mêmes possibilités avec `relatedtypes`, `query_related`, `add_related`, `find_records`, `get_record` et `update_record`. Il n'introduit pas de vocabulaire propre aux produits génériques.

---

## Droits et recalculs

La lecture respecte les droits d'accès de l'utilisateur connecté. Un rattachement par liste connexe exige le droit de modifier le produit générique et le produit spécifique, car l'opération met à jour la fiche du spécifique.

Les recalculs nécessaires sont lancés automatiquement après les modifications de configuration, de coût, de prix, de rattachement ou d'offre fournisseur. Une erreur de validation ou d'autorisation interrompt l'opération avec un message explicite.

---

## Références associées

- [Les produits génériques](https://www.kafinea.com/fr/documentation/catalogue/les-produits-generiques/)
- [Opérations CRUD](https://www.kafinea.com/fr/documentation/api/api-rest-operations-crud/)
- [Opérations liées](https://www.kafinea.com/fr/documentation/api/api-rest-operations-liees/)
- [Requêtes et interrogation](https://www.kafinea.com/fr/documentation/api/api-rest-requetes-et-interrogation/)
- [Kits de produits](https://www.kafinea.com/fr/documentation/api/api-rest-kits-de-produits/)
