> ## Documentation Index
> Fetch the complete documentation index at: https://docs-editions.oya.africa/llms.txt
> Use this file to discover all available pages before exploring further.

# Publications & Inventaire

> Gestion des publications et de l'inventaire physique.

# Section 4 — Publications & Inventaire

> **Rôles concernés :**
>
> * **Membre** : consultation des publications de l'équipe
> * **Éditeur** : consultation + création et modification d'inventaires
> * **Admin / Propriétaire** : accès complet à toutes les fonctionnalités

***

## 1. Gérer ses Publications

### 1.1 Qu'est-ce qu'une publication ?

Sur Oya Editions, il convient de distinguer deux niveaux :

| Concept               | Description                                                                                                                                                                                                                                                    |
| --------------------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| **Ouvrage / Article** | Le contenu brut : texte, chapitres, fichiers. C'est ce que l'auteur rédige et édite dans l'espace de travail.                                                                                                                                                  |
| **Publication**       | L'objet finalisé, rendu public sur la plateforme. Une publication est créée à partir d'un ouvrage ou d'un article une fois qu'il est prêt. Elle porte un titre, un ou plusieurs auteurs, une couverture, des thèmes, et est accessible via une URL de lecture. |

Une publication peut être de deux types :

* **Ouvrage** (`book`) : un livre numérique avec couverture au format portrait.
* **Article** (`article`) : un article avec bannière au format paysage.

> En résumé : on travaille sur un *ouvrage* ou un *article*, puis on le *publie* pour le rendre accessible aux lecteurs.

***

### 1.2 Accéder à la liste des publications

**Rôle requis :** Membre (et niveaux supérieurs)

1. Connectez-vous à votre espace Hub.
2. Dans la navigation latérale, cliquez sur l'onglet **Ressources**.
3. Sélectionnez **Publications** dans le menu de navigation par onglets.

Vous arrivez sur la page [https://hub.editions.oya.africa/pubs](https://hub.editions.oya.africa/pubs).

\[CAPTURE D'ECRAN: Vue de la liste des publications avec la navigation par onglets "Ressources" active et la liste des publications triées par date de mise à jour décroissante]

La liste affiche, pour chaque publication :

* Une miniature visuelle (couverture de livre ou bannière d'article)
* Le **type** de publication (Ouvrage ou Article), indiqué par un badge
* Les **thèmes** associés, affichés sous forme de badges secondaires
* Le **titre** de la publication (cliquable, ouvre la page de visualisation publique)
* Le ou les **auteurs**
* La **date de dernière mise à jour**
* Des boutons d'action : **Lire** et **Éditer**

Si aucune publication n'existe encore, un message "Aucune publication" s'affiche au centre de la page.

***

### 1.3 Créer une nouvelle publication

> La création d'une publication se fait depuis la gestion des **ouvrages** ou des **articles**, non depuis la page Publications. La page Publications est une vue en lecture seule listant les publications déjà créées.

**Rôle requis :** Éditeur, Admin, Propriétaire

Pour publier un ouvrage :

1. Allez dans **Hub > Ouvrages** ([https://hub.editions.oya.africa/books](https://hub.editions.oya.africa/books)).
2. Ouvrez l'ouvrage que vous souhaitez publier.
3. Suivez le processus de publication depuis la page d'édition de l'ouvrage.

Pour publier un article :

1. Allez dans **Hub > Articles** ([https://hub.editions.oya.africa/articles](https://hub.editions.oya.africa/articles)).
2. Ouvrez l'article que vous souhaitez publier.
3. Suivez le processus de publication depuis la page d'édition de l'article.

\[CAPTURE D'ECRAN: Page d'édition d'un ouvrage avec le bouton ou section de publication visible]

***

### 1.4 Lier un ouvrage ou article à une publication

La liaison est automatique : lorsqu'un ouvrage ou un article est publié, la publication qui en résulte lui est automatiquement associée. Cette relation est visible sur la liste des publications via les boutons **Éditer**, qui renvoient directement vers l'ouvrage ou l'article source :

* Pour une publication de type **Ouvrage** : le bouton "Éditer" redirige vers `https://hub.editions.oya.africa/books/{documentId}`.
* Pour une publication de type **Article** : le bouton "Éditer" redirige vers `https://hub.editions.oya.africa/articles/{documentId}`.

***

### 1.5 Consulter et modifier une publication

**Rôle requis :** Membre (lecture) / Éditeur, Admin (modification)

Depuis la liste des publications, deux actions sont disponibles pour chaque entrée :

| Bouton     | Action                                                                                                                                   |
| ---------- | ---------------------------------------------------------------------------------------------------------------------------------------- |
| **Lire**   | Ouvre la publication sur la plateforme publique dans un nouvel onglet (URL : `https://hub.editions.oya.africa/publications/{slug}/read`) |
| **Éditer** | Redirige vers l'ouvrage ou l'article source pour modification dans l'éditeur Hub                                                         |

\[CAPTURE D'ECRAN: Ligne de publication avec les boutons "Lire" et "Editer" visibles à droite]

***

## 2. Gestion de l'Inventaire

### 2.1 Qu'est-ce que l'inventaire ?

L'inventaire sur Oya Editions correspond au **stock physique** des ouvrages imprimés. Il permet de suivre :

* Le nombre d'**exemplaires disponibles** par pays de distribution
* Le nombre d'exemplaires **réservés** (commandes en cours)
* Le nombre d'exemplaires **vendus**
* Un **seuil d'alerte** pour être notifié quand le stock est bas

Chaque entrée d'inventaire est liée à une **publication** existante sur la plateforme. La relation entre une publication et son inventaire est de type 1:1.

> **Distinction physique / numérique :** Un ouvrage numérique (`isDigitalAsset: true`) a un stock défini à `-1`, ce qui signifie illimité. La gestion de stock décrite ici concerne principalement les ouvrages physiques.

***

### 2.2 Accéder à l'inventaire

**Rôle requis :** Éditeur, Admin, Propriétaire

1. Dans la navigation latérale du Hub, cliquez sur l'onglet **Business**.
2. Sélectionnez **Inventaire** (icône entrepôt).

Vous arrivez sur la page [https://hub.editions.oya.africa/inventory](https://hub.editions.oya.africa/inventory).

\[CAPTURE D'ECRAN: Page d'inventaire avec les statistiques en haut (4 cartes : Total ouvrages, Stock total, Stock faible, Vendus) et le tableau de stock en dessous]

La page affiche :

**Statistiques globales (4 cartes) :**

* **Total ouvrages** : nombre d'ouvrages différents en stock
* **Stock total** : somme de tous les exemplaires en stock
* **Stock faible** : nombre d'ouvrages dont le stock est en dessous du seuil d'alerte (badge "Alerte" rouge si > 0)
* **Vendus** : total des exemplaires vendus

**Tableau de stock** avec les colonnes :

* Ouvrage (titre)
* Stock total
* Réservé (en orange)
* Vendu (en vert)
* Statut global : `En stock`, `Stock faible` ou `Rupture`
* Dernière modification
* Actions : modifier, voir les détails, supprimer

***

### 2.3 Créer une entrée d'inventaire

**Rôle requis :** Éditeur, Admin, Propriétaire

1. Depuis la page [https://hub.editions.oya.africa/inventory](https://hub.editions.oya.africa/inventory), cliquez sur le bouton **Créer un inventaire** (en haut à droite).
2. Vous êtes redirigé vers [https://hub.editions.oya.africa/inventory/new](https://hub.editions.oya.africa/inventory/new).

\[CAPTURE D'ECRAN: Formulaire de création d'inventaire avec les champs : sélection de publication, titre du livre, prix, devise, et section pays/quantités]

Remplissez le formulaire :

**Etape 1 — Sélectionner la publication**

* Cliquez sur le champ **Publication** et recherchez la publication dans la liste déroulante avec recherche intégrée.
* Le **titre du livre** se pré-remplit automatiquement une fois la publication sélectionnée (modifiable).

**Etape 2 — Configurer le prix**

* Saisissez le **prix** de vente de l'exemplaire physique.
* Choisissez la **devise** parmi : XOF (Franc CFA), EUR (Euro), USD (Dollar).

**Etape 3 — Configurer les pays et les quantités**

* Cliquez sur la liste déroulante **"Sélectionnez un pays à ajouter"** et recherchez le pays.
* Cliquez sur **Ajouter** pour l'inclure dans la liste.
* Pour chaque pays ajouté, saisissez la **quantité disponible** dans le champ correspondant.
* Répétez l'opération pour chaque pays de distribution.
* Le **stock total** est affiché automatiquement en bas, en additionnant toutes les quantités.

> Au moins un pays doit être configuré. Chaque pays doit avoir une quantité valide (>= 0).

4. Cliquez sur **Créer l'inventaire** pour valider.

En cas de succès, vous êtes redirigé vers la liste d'inventaire avec un message de confirmation.

***

### 2.4 Consulter le stock par pays

**Rôle requis :** Éditeur, Admin, Propriétaire

Depuis le tableau de la page [https://hub.editions.oya.africa/inventory](https://hub.editions.oya.africa/inventory), la colonne **Stock total** indique le stock global. Pour voir le détail par pays :

* Si un seul pays est configuré : le stock de ce pays s'affiche directement avec son drapeau et un badge de statut.
* Si plusieurs pays sont configurés : un bouton affiche les drapeaux des pays concernés. En cliquant dessus, une **fenêtre popover** s'ouvre et liste pour chaque pays :
  * Le drapeau et le nom du pays
  * Le stock disponible
  * La quantité réservée
  * La quantité vendue
  * Le statut du stock (OK / Faible / Rupture)
  * Un bouton crayon pour modifier le stock du pays directement

\[CAPTURE D'ECRAN: Popover de stock par pays ouvert, montrant 2-3 pays avec leurs quantités et statuts respectifs]

***

### 2.5 Modifier le stock disponible

**Rôle requis :** Éditeur, Admin, Propriétaire

#### Via le bouton "Modifier" du tableau

1. Depuis [https://hub.editions.oya.africa/inventory](https://hub.editions.oya.africa/inventory), repérez l'ouvrage dans le tableau.
2. Cliquez sur l'icône **crayon** (modifier) dans la colonne Actions.
3. Vous êtes redirigé vers la page d'édition de cet inventaire (`https://hub.editions.oya.africa/inventory/{documentId}/edit`).
4. Modifiez les quantités par pays selon vos besoins.
5. Validez les modifications.

#### Via le bouton "Voir les détails"

1. Cliquez sur l'icône **oeil** (voir les détails) dans la colonne Actions.
2. Vous accédez à la fiche détaillée de l'inventaire (`https://hub.editions.oya.africa/inventory/{documentId}`).
3. Vous pouvez y modifier les stocks directement.

***

### 2.6 Configurer le seuil d'alerte de stock bas

Le **seuil d'alerte** (ou seuil de réserve) définit la valeur en dessous de laquelle un ouvrage est considéré en "stock faible".

**Lors de la création d'un inventaire :**

* Le seuil est défini dans le champ **"Seuil de réserve (alerte stock faible)"** du formulaire de création.
* Valeur par défaut : **10 exemplaires**.

**Lors de la modification d'un inventaire :**

1. Ouvrez la page d'édition de l'inventaire concerné.
2. Modifiez la valeur du seuil dans le champ dédié.
3. Sauvegardez.

**Comment le seuil fonctionne :**

| Condition            | Statut affiché | Couleur           |
| -------------------- | -------------- | ----------------- |
| `stock > seuil`      | En stock       | Badge gris/défaut |
| `0 < stock <= seuil` | Stock faible   | Badge rouge       |
| `stock = 0`          | Rupture        | Badge rouge       |

***

### 2.7 Exporter les données d'inventaire

**Rôle requis :** Éditeur, Admin, Propriétaire

Un bouton **Exporter** est disponible en haut à droite de la page d'inventaire, à côté du bouton "Créer un inventaire".

\[CAPTURE D'ECRAN: Barre d'actions en haut de la page inventaire avec les boutons "Créer un inventaire" et "Exporter"]

***

### 2.8 Supprimer une entrée d'inventaire

**Rôle requis :** Admin, Propriétaire

1. Depuis le tableau d'inventaire, cliquez sur l'icône **corbeille** dans la colonne Actions de la ligne concernée.
2. Une boîte de dialogue de confirmation s'affiche : "Êtes-vous sûr de vouloir supprimer \[titre] de votre stock ?"
3. Cliquez sur **Supprimer** pour confirmer. Cette action est irréversible.
4. Cliquez sur **Annuler** pour abandonner.

> Attention : la suppression efface toutes les données de stock associées à cet ouvrage. Cette action ne peut pas être annulée.

***

## 3. Disponibilité et Prix

### 3.1 Pays supportés

La plateforme Oya Editions supporte actuellement les pays africains suivants pour la distribution physique :

* **BJ** — Bénin
* **CI** — Côte d'Ivoire
* **GN** — Guinée

D'autres pays peuvent être ajoutés selon la configuration de la liste dans `config/countries.ts`.

***

### 3.2 Configurer la disponibilité géographique

La disponibilité géographique d'un ouvrage physique est définie lors de la **création ou modification de son inventaire**.

**Lors de la création :**

1. Dans le formulaire [https://hub.editions.oya.africa/inventory/new](https://hub.editions.oya.africa/inventory/new), section **"Pays de disponibilité et quantités"**.
2. Ajoutez les pays un à un via la liste déroulante avec recherche.
3. Définissez une quantité pour chaque pays ajouté.

**Lors de la modification :**

1. Depuis le tableau, cliquez sur le bouton Modifier (crayon) de l'inventaire.
2. Dans la section pays, cochez/décochez les pays de disponibilité.
3. Ajustez les quantités pour chaque pays coché.
4. Sauvegardez.

> Un ouvrage sans pays configuré n'est disponible nulle part. Il faut au minimum un pays avec une quantité définie.

***

### 3.3 Définir les prix par devise et région

Le prix d'un inventaire est unique et s'applique à l'ensemble des pays configurés. Il se définit en deux champs :

* **Prix** : valeur numérique (ex. : `2500`)
* **Devise** : XOF (Franc CFA), EUR (Euro) ou USD (Dollar américain)

\[CAPTURE D'ECRAN: Section "Prix et devise" du formulaire de création d'inventaire, avec les deux champs côte à côte]

**Pour modifier le prix d'un inventaire existant :**

1. Accédez à la page d'édition de l'inventaire (`https://hub.editions.oya.africa/inventory/{documentId}/edit`).
2. Modifiez les champs **Prix** et **Devise**.
3. Sauvegardez.

> Note : le prix défini dans l'inventaire correspond au prix de vente de la version physique de l'ouvrage. Il peut être différent du prix de la version numérique, qui est géré séparément.

***

### 3.4 Distinction inventaire physique / numérique

| Critère                | Physique               | Numérique       |
| ---------------------- | ---------------------- | --------------- |
| Champ `isDigitalAsset` | `false`                | `true`          |
| Stock                  | Nombre entier fini     | `-1` (illimité) |
| Affichage stock        | Nombre d'exemplaires   | "Numérique"     |
| Gestion par pays       | Oui, quantité par pays | Non applicable  |
| Seuil d'alerte         | Applicable             | Non applicable  |
| Gestion de rupture     | Oui                    | Non             |

Dans le tableau d'inventaire, les ouvrages numériques affichent le libellé **"Numérique"** à la place du nombre d'exemplaires dans la colonne Stock total.

***

## Résumé des permissions par section

| Action                                | Membre | Éditeur | Admin / Propriétaire |
| ------------------------------------- | :----: | :-----: | :------------------: |
| Consulter la liste des publications   |   Oui  |   Oui   |          Oui         |
| Lire une publication                  |   Oui  |   Oui   |          Oui         |
| Éditer un ouvrage/article source      |   Non  |   Oui   |          Oui         |
| Consulter l'inventaire                |   Non  |   Oui   |          Oui         |
| Créer un inventaire                   |   Non  |   Oui   |          Oui         |
| Modifier un inventaire (stock, seuil) |   Non  |   Oui   |          Oui         |
| Supprimer un inventaire               |   Non  |   Non   |          Oui         |
| Exporter l'inventaire                 |   Non  |   Oui   |          Oui         |

***

*Section suivante : [Section 5 — Commandes & Transactions](./05-commandes-et-transactions.md)*
