Skip to content

Commit

Permalink
chore: stage work
Browse files Browse the repository at this point in the history
  • Loading branch information
fraxken committed Oct 10, 2024
1 parent 839ec33 commit c8247d7
Show file tree
Hide file tree
Showing 4 changed files with 171 additions and 17 deletions.
3 changes: 0 additions & 3 deletions docs/MAD/api/entries.md
Original file line number Diff line number Diff line change
Expand Up @@ -47,9 +47,6 @@ Le paramétrage de la route se fait exclusivement par le biais des [querystrings

Le JSON renvoyé correspondra à la [spécification suivante](../specs/v1.0.0/entries.md).

> [!CAUTION]
> Pour éviter les extractions abusives nous avons volontairement limité à un exercice par requête API. Si vous souhaitez extraire l'intégralité des mouvements nous vous recommandons d'itérer sur l'intégralité des exercices séquentiellement.
## 💬 Consulter les écritures sur l'interface MyUnisoft

Sur MyUnisoft, il existe plusieurs moyens de récupérer et/ou consulter les écritures:
Expand Down
150 changes: 150 additions & 0 deletions docs/MAD/api/movements.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,150 @@
---
prev:
text: 💃 Introduction
link: MAD/introduction.md
next:
text: Écriture et Mouvements (Spec)
link: MAD/specs/v1.0.0/entries.md
---

> [!CAUTION]
> Cette API est encore à un stade expérimental et certaines informations peuvent manquer.
# Export des mouvements

L'API d'export ci-dessous vous permettra de récupérer les mouvements par deux biais distincts;

- Avec un [exercice](./exercice.md)
- Sur une période données de maximums **12 mois**.

Il n'est pas possible de mélanger les deux.

```bash
curl --location \
--request GET 'https://api.myunisoft.fr/api/v1/mad/movements?idExercice=1&version=1.0.0' \
--header 'X-Third-Party-Secret: nompartenaire-L8vlKfjJ5y7zwFj2J49xo53V' \
--header 'Authorization: Bearer {{API_TOKEN}}' \
--header 'Content-Type: application/json'
```

## 🔧 Paramètres de la requête

Le paramétrage de cette route s'effectue uniquement via des [query strings](https://en.wikipedia.org/wiki/Query_string).

| nom | description | obligatoire |
| --- | --- | :---: |
| version | version du format | ✔️ |
| idExercice | Identifiant de l'exercice ||
| startDate | Date de début d'extraction au format `YYYY-MM-DD` ||
| endDate | Date de fin d'extraction au format `YYYY-MM-DD` ||
| classAccount | Inclut uniquement les comptes commençant par la classe/catégorie spécifiée. Peut prendre une ou plusieurs racines. ||
| lettering | Filtre les mouvements selon l'état du lettrage : `none`, `partial`, ou `complete` ||

> [!NOTE]
> L'écart maximum entre la date de début et de fin doit être de maximums 12 mois.
> [!IMPORTANT]
> 🔹 Accès cabinet
> L'accès cabinet nécessitera la présence de l'en-tête HTTP `society-id` avec l'id du dossier de production (la société concernée par la demande d'extraction).
## 🔬 Réponse

Le JSON renvoyé correspondra aux mouvements selon la [spécification suivante](../specs/v1.0.0/entries.md).

La différence majeure est que les informations liées à l'écriture sont présentes dans un sous-objet `entry`.

Voici un exemple :

```json
{
"producerId": "148627082",
"description": "MC DONALDS",
"dueDate": null,
"freeNumber": null,
"invoiceNumber": "0210123784",
"currency": {
"code": "EUR"
},
"value": {
"credit": 0,
"debit": 264.44,
"amount": -264.44
},
"entry": {
"producerId": "49016246",
"date": "2022-01-21",
"dueDate": null,
"journal": {
"producerId": "178745",
"customerReferenceCode": "AC",
"name": "JOURNAL D'ACHATS",
"type": "Achat"
},
"additionalProducerProperties": {
"source": {
"name": "FEC",
"thirdParty": null
},
"partnerMetadata": null,
"comment": null,
"createdAt": 1642719600,
"accountedAt": "2022-01-21"
},
"attachments": {}
},
"attachments": {},
"account": {
"producerId": "9267210",
"number": "6226100000",
"name": "HONORAIRES COMPTABLES"
},
"payment": null,
"analytics": [
{
"producerId": "4412",
"code": "AXE 1",
"name": "Axe 1",
"sections": [
{
"producerId": "499295",
"amount": 264.44,
"rate": 100,
"code": "AXE1SEC3",
"name": "Axe1Sec3"
}
]
},
{
"producerId": "4413",
"code": "AXE 2",
"name": "Axe 2",
"sections": [
{
"producerId": "499296",
"amount": 264.44,
"rate": 100,
"code": "ATTENTE",
"name": "Section d'attente"
}
]
}
],
"lettering": {
"state": "none",
"value": null
}
}
```

## 💬 Consulter les mouvements sur l'interface MyUnisoft

Sur MyUnisoft, il existe plusieurs moyens de récupérer et/ou consulter les écritures:

- Par le biais de la saisie: `Tenue` > `Saisie/Consultation` > `Saisie`
- Par la **recherche rapide**: accessible via l'icône en forme de loupe en haut à droite.

![](../../images/quick_search.jpg)

L'avantage de la première option est qu'elle permet de consulter les factures en attente, ce qui est courant lors d'un import au format JSON nécessitant une étape de validation par le responsable de dossier.

![](../images/saisie_header.PNG)
28 changes: 21 additions & 7 deletions docs/MAD/introduction.md
Original file line number Diff line number Diff line change
Expand Up @@ -7,9 +7,6 @@ next: false

# MAD

> [!WARNING]
> Le format est encore au stade expérimental (des changements sont à prévoir)
MyUnisoft Accounting Data (raccourci en **MAD**) est un format JSON hybride supportant aussi bien l'export que l'import de données comptables.

Lors de la conception de ce nouveau format, nos objectifs étaient multiples :
Expand Down Expand Up @@ -77,17 +74,34 @@ Ces interfaces et types sont régulièrement présents dans les différentes str

## 🌍 API

Les différentes API sont disponibles sur notre [postman en ligne](https://docs.api.myunisoft.fr/) au sein du dossier racine MAD.
Les différentes API sont disponibles sur notre [Postman en ligne](https://docs.api.myunisoft.fr/) dans le dossier racine intitulé **MAD**.

> [!IMPORTANT]
> Toutes nos API vous demanderont de fournir le numéro de version MAD. La dernière version est actuellement `1.0.0`.
> Toutes nos API requièrent que vous fournissiez le numéro de version MAD. La dernière version disponible est actuellement `1.0.0`
- [Export du dossier de production](./api/accountingFolder.md)
- [Export des écritures et mouvements](./api/entries.md)
- [Récupérer une écriture et ses mouvements](./api/entry.md)
- [Export des comptes](./api/account.md)
- [Export des journaux](./api/journal.md)
- [Export des exercices](./api/exercice.md)
- [Export des axes et sections analytiques](./api/analytic.md)
- [Export des banques](./api/bank.md)
- [Export des méthodes de paiement](./api/payment.md)

---

MAD vous permet de récupérer les mouvements (lignes d'écriture) sous deux formes :

- Groupés par une entité/abstraction appelée [Écriture](https://www.compta-facile.com/qu-est-ce-qu-une-ecriture-comptable/).
- À plat (équivalent à un **FEC**, mais plus complet).

L'**écriture** garantit une liste de mouvements équilibrés sur plusieurs racines de comptes. Toutefois, cela peut poser problème si votre besoin est de filtrer des données selon des critères spécifiques, tels qu'une racine de compte (par exemple, 40 ou 41) ou par lettrage.

Les deux API offrent des fonctionnalités différentes et des options de filtrage distinctes.

- [Export des écritures (+ mouvements associés)](./api/entries.md)
- [Export des mouvements](./api/movements.md)
- [Récupérer une écriture et ses mouvements](./api/entry.md)

> [!IMPORTANT]
> Afin de limiter les extractions abusives de mouvements, nous avons volontairement restreint l'export à un exercice par requête API.
> Pour extraire l'intégralité des mouvements, nous vous recommandons d'itérer séquentiellement sur l'ensemble des exercices.
7 changes: 0 additions & 7 deletions docs/MAD/specs/v1.0.0/entries.md
Original file line number Diff line number Diff line change
Expand Up @@ -266,13 +266,6 @@ interface Movement {
name: string | null;
code: string | null;
} | null;
sections: {
producerId: string;
amount: number;
rate: number;
code: string;
name: string;
}[];
analytics: MovementAnalytics[];
}
```
Expand Down

0 comments on commit c8247d7

Please sign in to comment.