> ## Knowledge Base Index
> Fetch the complete knowledge base index at: https://help.fincome.co/sitemap.xml
> Use this file to discover available pages before exploring further.
> Pure-Markdown content can be obtained by appending a '.md' suffix to the content URLs listed in the sitemap (without the trailing slash).

# Mapping d'intégration Pennylane

![](https://storage.crisp.chat/users/helpdesk/website/-/6/2/0/e/620ea71851239000/pennylane_895psi.webp =100x100)
# Connexion à Pennylane

[Suivez ce guide](https://help.fincome.co/fr/article/connecter-mon-compte-pennylane-18yk9ro/) pour établir la connexion à l'API Pennylane.
---
# Données synchronisées

| **Entité** | **Champs clés synchronisés** |
| ---- |
| Clients | id, nom, email, pays, code_postal, référence_client |
| Produits (Products) | id, nom |
| Prix (Prices) | id, montant_HT, devise (lié_au_produit) |
| Abonnements (Subscriptions) | id, client lié, statut, dates de début et de fin, montant_mensuel |
| Factures (Invoices) | <p>id, statut, date, numéro, client<br>• Lignes : produit_lié, montant_HT, TVA, devise, quantité, période, description</p> |
| Avoirs (Crédit Notes) | Extraits des credit_notes rattachés à une facture |
---
# Fonctionnement détaillé de l'intégration

* Mapping structuré : toutes les entités sont mappées champ par champ à partir de la structure Pennylane
* Détection des abonnements : basée sur les modèles de facturation (invoice_template.line_items)
* Montants HT et taxes : analysés ligne par ligne, avec conversion en devise de base
* Avoirs intégrés : via les credit_notes de facture, avec montant inversé
* Périodes de service : extraites automatiquement (period_start, period_end)
---
# À savoir

* Factures en brouillon (is_draft) : non synchronisées
* Remises : non remontées actuellement (champ forcé à 0)
* Synchronisation quotidienne : toutes les nuits automatiquement
* Suppression de données dans Pennylane : non propagée dans Fincome
* Références personnalisées : supportées via le champ reference des clients
* Synchronisation incrémentale non supportée: les données doivent être extraites en intégralité
---
# Vue d'ensemble de l'intégration

| Élément | Détail |
| ---- |
| Méthode d’intégration | OAuth 2.0 ou clé API Pennylane |
| Entités prises en charge | Clients, Produits, Prix, Abonnements, Factures, Avoirs |
| Fréquence de synchronisation | Quotidienne (nuit) |
| Portée de l’import initial | Données disponibles via API |
| Méthode de synchronisation | API REST avec pagination |
| Suppression de données Pennylane | Non supportée |
---
# Paramètres de données

| Comportement / Réglage | Fonctionnement dans Fincome |
| ---- |
| Pays / Code postal client | Détection via plusieurs champs prioritaires (country_alpha2, etc.) |
| Abonnements | À partir des modèles de facturation (template) |
| Montants HT / taxes | Champs currency_price_before_tax, currency_tax |
| Avoirs | Lignes inversées, avec structure identique aux factures |
| Remises | Non disponibles (remontées à 0) |
| Conversion de devise | Basée sur currency et date |
| Périodes de facturation | period_start, period_end extraits par Fincome |
---
# Mapping technique (Pennylane → Fincome)

### Clients

| Champ Pennylane | Champ Fincome |
| ---- |
| source_id | original_id |
| name | name |
| email | email |
| country_alpha2, billing_address.country_alpha2, delivery_address.country_alpha2 | country |
| postal_code, billing_address.postal_code, delivery_address.postal_code | zip_code |
| reference | custom_axis_field.reference |

### Produits & Prix

| Champ Pennylane | Champ Fincome |
| ---- |
| source_id | original_id (produit & prix) |
| label | name (produit & prix) |
| price_before_tax | amount |
| currency | currency_code |

### Abonnements

| Champ Pennylane | Champ Fincome |
| ---- |
| invoice_template.line_items\[].product_id | price_id |
| invoice_template.currency | currency_code |
| invoice_template.line_items\[].subscription_set_id | subscription_set_id |
| start | subscription_start_date |
| stopped_at | canceled_at |
| finish | effective_cancellation_date |
| activated_at | deal_closed_date |

### Factures & Lignes

| Champ Pennylane | Champ Fincome |
| ---- |
| id | original_id (facture) |
| date | date |
| invoice_number | invoice_number |
| status | status |
| customer.source_id | customer_id |

### Lignes de facture

| Champ Pennylane | Champ Fincome |
| ---- |
| id | original_id (ligne) |
| product_id | price_id |
| currency_price_before_tax | amount_excluding_tax_after_discount |
| currency_tax | tax_amount |
| label | description |
| quantity | quantity |
| currency | currency_code |
| Périodes | period_start, period_end |

### Avoirs

| Champ Pennylane | Champ Fincome |
| ---- |
| credit_notes\[].id | original_id |
| currency_price_before_tax | amount (inversé) |
| currency_tax | tax_amount (inversé) |
| currency | currency_code |
| Montant remisé | discount_amount = 0 (forcé) |
| Avoir rattaché à facture | credit_note_id, invoice_id |
---
# Prochaines étapes

* Consultez vos KPIs dans les vues MRR, Churn, et Cohortes
* Ajoutez d’autres sources de facturation (Stripe, Chargebee, etc.)
* Enrichissez vos données clients (segmentation, taille d’entreprise...)
* Planifiez une session avec votre Customer Success pour aller plus loin
