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

# NetSuite

> Comment connecter votre compte NetSuite : ce dont vous avez besoin et comment vous connecter.

# 🚨 Prérequis

Les conditions suivantes doivent être remplies dans votre compte NetSuite avant de commencer :

* Vous disposez d'un rôle **Administrator**, ou d'un rôle avec la permission **SuiteApp Marketplace** (nécessaire pour installer un bundle).
* Vous disposez du **Bundle ID** fourni par Chift : `703899` (ou par votre fournisseur, pour un bundle personnalisé).
* **Uniquement si votre éditeur de logiciel envoie des transactions bancaires vers NetSuite :** une configuration supplémentaire, décrite à l'étape 4 de la configuration. Elle dépend de la présence ou non de la SuiteApp **ZoneReconcile** sur votre compte.

Tout ce dont Chift a besoin (un script, un rôle à privilèges minimaux, l'enregistrement d'intégration OAuth 2.0 et un dossier de pièces jointes) est livré par le bundle en un clic. Vous n'avez jamais à téléverser de fichiers, configurer des scripts manuellement, ni copier un Client ID ou un Secret.

L'ensemble de la configuration tient en quatre étapes : **activer les fonctionnalités → installer le bundle → attribuer le rôle → autoriser**. Si votre fournisseur envoie des transactions bancaires, ajoutez l'étape 4 avant d'autoriser.

# ⚙️ Configuration

Vous devez être connecté à votre compte NetSuite pour les étapes ci-dessous.

## ☑ 1. Activer les bonnes fonctionnalités de l'entreprise

Allez dans **Setup > Company > Enable Features > SuiteCloud**. Activez chacun des éléments suivants, enregistrez et acceptez toutes les demandes de conditions d'utilisation.

> [!WARNING]
>
> Cette étape doit être réalisée **avant l'installation du bundle** : sans Server SuiteScript activé, le script du bundle ne peut pas s'installer.

* **SuiteScript** → Client SuiteScript, Server SuiteScript

  ![](https://mintcdn.com/chift/31nQ8nkwKpxNtIUa/images/help/netsuite/netsuite-fr-1.png?fit=max\&auto=format\&n=31nQ8nkwKpxNtIUa\&q=85\&s=3ba2635e3ad761c1d31046bbba3e4437)

* **Manage Authentication** → OAuth 2.0

  ![](https://mintcdn.com/chift/31nQ8nkwKpxNtIUa/images/help/netsuite/netsuite-fr-2.png?fit=max\&auto=format\&n=31nQ8nkwKpxNtIUa\&q=85\&s=ba6e49f60084ec0409e05d173758bfea)

* **SuiteTalk (Web Services)** → REST Web Services

  ![](https://mintcdn.com/chift/31nQ8nkwKpxNtIUa/images/help/netsuite/netsuite-fr-3.png?fit=max\&auto=format\&n=31nQ8nkwKpxNtIUa\&q=85\&s=764fc03cf6734d721c6979bd47d44eb4)

* **Custom Records** → Custom Records

  ![](https://mintcdn.com/chift/31nQ8nkwKpxNtIUa/images/help/netsuite/netsuite-fr-4.png?fit=max\&auto=format\&n=31nQ8nkwKpxNtIUa\&q=85\&s=01512ae677e2d6bb83f244b9f04dcb36)

Si votre compte utilise des **custom segments** comme dimensions analytiques, activez également **SuiteCloud > Custom Segments** (vous accorderez la permission correspondante sur le rôle plus tard ; la permission n'apparaît qu'une fois la fonctionnalité activée).

## ☑ 2. Installer le bundle Chift

Allez dans **Customization > SuiteBundler > Search & Install Bundles**, saisissez le **Bundle ID** `703899`, examinez la liste des objets, puis cliquez sur **Install**.

![](https://mintcdn.com/chift/31nQ8nkwKpxNtIUa/images/help/netsuite/netsuite-fr-5.png?fit=max\&auto=format\&n=31nQ8nkwKpxNtIUa\&q=85\&s=7ba4ec0f5f5634ae1f3b1dbb89ecce96)

Le script et son déploiement, le rôle `Chift Integration`, l'enregistrement d'intégration et le dossier `Chift Attachments` sont tous installés en un clic.

Pour supprimer le bundle plus tard : **Customization > SuiteBundler > List of Installed Bundles** → sélectionnez le bundle → **Uninstall**.

## ☑ 3. Attribuer le rôle `Chift Integration` (et se reconnecter)

**Vous pouvez le faire maintenant ou au moment de la connexion.** Attribuer le rôle en amont est la solution la plus propre, mais s'il n'est pas défini ici, l'utilisateur peut toujours sélectionner (ou basculer vers) le bon rôle sur l'écran de consentement NetSuite pendant la connexion (voir *Vérifier le rôle lors de la connexion* dans la section Connexion ci-dessous).

Le bundle installe la **définition du rôle**, mais ne l'attribue pas à un utilisateur. Attribuez-le à l'utilisateur qui se connectera à Chift.

Attribuez le rôle via **Setup > Users/Roles > Manage Users >** l'utilisateur > sous-onglet **Access** > ajoutez `Chift Integration` > **Save**.

![](https://mintcdn.com/chift/31nQ8nkwKpxNtIUa/images/help/netsuite/netsuite-fr-6.png?fit=max\&auto=format\&n=31nQ8nkwKpxNtIUa\&q=85\&s=acb3090b40e0d9a9adfab521a3c0b721)

✅ **Recommandé : utilisez un utilisateur dédié à l'intégration.** Créez ou choisissez un employé dont le **seul** rôle est `Chift Integration` (pas d'Administrator, aucun autre rôle). C'est ce qui garantit une connexion à privilèges minimaux à l'exécution.

> [!WARNING]
>
> **Si vous utilisez votre propre rôle plutôt que ceux du bundle :** ajoutez-lui la permission `Manage own OAuth 2.0 Client Credentials certificates` (sous Setup). Sans elle, la connexion fonctionne toujours, mais reste sur le flux OAuth standard et nécessite une réautorisation environ tous les 30 jours. Avec cette permission, elle bascule vers une authentification basée sur certificat (machine-to-machine) et n'expire jamais. Vous devez également vous assurer que la permission Subsidiaries View/List est définie sur le rôle utilisé.

![](https://mintcdn.com/chift/31nQ8nkwKpxNtIUa/images/help/netsuite/netsuite-fr-7.png?fit=max\&auto=format\&n=31nQ8nkwKpxNtIUa\&q=85\&s=06a928fe8c81b7861a43fad994a94ac3)

> [!WARNING]
>
> **Vous DEVEZ vous déconnecter puis vous reconnecter après avoir attribué le rôle.** NetSuite met les rôles en cache par session, donc un rôle nouvellement attribué ne devient sélectionnable qu'après que l'utilisateur s'est déconnecté puis reconnecté. Si vous sautez cette étape, le rôle n'apparaîtra pas sur l'écran de consentement à l'étape suivante.

## ☑ 4. Préparer les transactions bancaires (uniquement si votre fournisseur les envoie)

Ignorez cette étape si votre éditeur de logiciel n'envoie pas de transactions bancaires vers NetSuite.

Une fois la configuration terminée et vos premiers relevés arrivés, consultez [Transactions bancaires](#bank-transactions) dans *Bon à savoir* pour savoir où les trouver et comment les rapprocher.

Les relevés bancaires parviennent à NetSuite de deux manières. Vous ne la choisissez pas : elle dépend uniquement de la présence ou non de la SuiteApp **ZoneReconcile** de Zone & Co sur votre compte. Pour vérifier, cherchez un menu **Transactions > Bank Reconciliation** : il n'existe que lorsque ZoneReconcile est installé.

Les transactions bancaires nécessitent le rôle `Chift Integration` (ou votre propre rôle avec les mêmes accès). `Chift Integration (Read Only)` ne peut pas importer de relevés bancaires.

> [tab] ZoneReconcile est installé
>
> Vos relevés bancaires sont écrits dans ZoneReconcile, et ZoneReconcile les rapproche de vos factures clients et fournisseurs ouvertes.
>
> Vérifiez d'abord la version du bundle d'intégration. Les relevés bancaires avec ZoneReconcile nécessitent la version 1.2 ou ultérieure du bundle de l'étape 2 de la configuration. Dans **Customization > SuiteBundler > List of Installed Bundles**, vérifiez sa version. Si elle est plus ancienne, ouvrez-le et cliquez sur **Update** : il ne se met jamais à jour tout seul. Si vous sautez cette étape, l'envoi des relevés bancaires échoue avec « Script extension version not valid. »
>
> Ensuite, donnez au rôle avec lequel vous vous connectez un accès **Full** aux deux types d'enregistrements bancaires de ZoneReconcile, **Bank Statement** et **Bank Statement Transaction**, ainsi qu'à **Lists > Perform Search**. Faites-le avant de vous connecter : sans cet accès, la connexion ne peut pas voir ZoneReconcile et échoue avec « Bank Statement Parsers is not installed. » Si vous l'accordez plus tard, testez à nouveau la connexion.
>
> Puis, dans ZoneReconcile, pour chaque compte bancaire qui recevra des relevés :
>
> 1. Créez sa **Bank Account Configuration**, sous **Setup > Bank Reconciliation Setup > Bank Account Configurations** (**Setup > ZoneReconcile Setup > Bank Account Configuration** dans les versions plus anciennes). Renseignez le compte général fourre-tout, le champ du nom de la contrepartie, et les comptes fournisseurs et clients par défaut. ZoneReconcile ne rapproche que les relevés d'un compte bancaire qui en possède une.
> 2. Définissez ses **Matching Preferences**, pour les débits et pour les crédits. Par exemple, **Match Open Credits on Exact match of amount** pour rapprocher les paiements clients par montant.
> 3. Définissez ses **Processing Preferences**.
>
> Devises : un compte bancaire dans une devise étrangère ne paie que des factures dans cette même devise. Un compte bancaire dans votre devise de base peut payer des factures dans n'importe quelle devise. Pour payer une facture en devise de base depuis un compte bancaire en devise étrangère, NetSuite a besoin d'un compte de transit : voir [Foreign Currencies](https://reconcile-help.zoneandco.com/hc/en-us/articles/30258767667227-Foreign-Currencies) de Zone & Co.
>
> Pour le rapprochement par numéro de document, ZoneReconcile ne prend en compte que les références d'au moins 4 caractères contenant un chiffre, sauf si **Allow non-numeric matches** est activé. Voir [Matching Preferences](https://reconcile-help.zoneandco.com/hc/en-us/articles/30258736554779-Configuring-and-Understanding-Matching-Preferences-in-ZoneReconcile).

> [tab] ZoneReconcile n'est pas installé
>
> Vos relevés bancaires passent par l'import de données bancaires natif de NetSuite, et vous les rapprochez dans **Match Bank Data**. Configurez-le une seule fois :
>
> Effectuez les étapes a à g avant de vous connecter.
>
> **a. Vérifiez la version du bundle d'intégration.** Les relevés bancaires sans ZoneReconcile nécessitent la version 1.4 ou ultérieure du bundle de l'étape 2 de la configuration. Dans **Customization > SuiteBundler > List of Installed Bundles**, vérifiez sa version. Si elle est plus ancienne, ouvrez-le et cliquez sur **Update** : il ne se met jamais à jour tout seul. La version 1.4 ajoute le plug-in **Chift Bank Statement Import** et le dossier File Cabinet `Chift Bank Statements`. Conservez exactement un dossier portant ce nom, et ne le renommez pas.
>
> **b. Installez la SuiteApp Bank Statement Parsers.** Allez dans **Customization > SuiteBundler > Search & Install Bundles**, cliquez sur **Advanced**, recherchez le Bundle ID `293699` (**Bank Statement Parsers**, par Oracle NetSuite, gratuit), et cliquez sur **Install**. Elle nécessite les mêmes fonctionnalités que l'étape 1 de la configuration. Le bundle affiche **Pending…** pendant quelques minutes après l'installation.
>
> **c. Activez les deux plug-ins.** Allez dans **Customization > Plug-ins > Manage Plug-ins**, cochez **Chift Bank Statement Import** et **CSV Plugin Implementation**, puis cliquez sur **Save**. Si l'un reste décoché, rien n'est importé et rien n'apparaît dans **Banking Import History**.
>
> **d. Créez une Financial Institution.** Allez dans **Setup > Accounting > Financial Institution > New**. Renseignez **Financial Institution**, par exemple le nom de votre banque, puis cliquez sur **Save**.
>
> ![Le nouvel enregistrement Financial Institution, avec son nom et sa description renseignés et un sous-onglet Format Profile: Configuration vide](https://mintcdn.com/chift/hyVdqC55TfThXJtB/images/help/netsuite/netsuite-14.png?fit=max\&auto=format\&n=hyVdqC55TfThXJtB\&q=85\&s=dbe561a72f601894dde368291509f8cb)
>
> **e. Ajoutez son profil de format.** Ouvrez la Financial Institution enregistrée en mode **View** : en mode **Edit**, **Add** ne fait rien. Dans le sous-onglet **Format Profile: Configuration**, cliquez sur **Add** et renseignez :
>
> | Champ | Valeur |
> | - | - |
> | **Profile Name** | N'importe quel nom, par exemple `Bank statements format profile` |
> | **Profile Type** | **Bank Reconciliation** |
> | **Connectivity Method** | **Chift Bank Statement Import** |
> | **Transaction Parser** | **CSV Plugin Implementation** |
>
> Cliquez sur **Save**. Ne conservez qu'un seul profil de format actif sur cette Financial Institution.
>
> ![Le formulaire Format Profile, avec Bank Reconciliation comme type de profil, Chift Bank Statement Import comme méthode de connectivité et CSV Plugin Implementation comme parser de transactions](https://mintcdn.com/chift/hyVdqC55TfThXJtB/images/help/netsuite/netsuite-15.png?fit=max\&auto=format\&n=hyVdqC55TfThXJtB\&q=85\&s=61028e09a484c263bce36714f7d346ae)
>
> Si **Chift Bank Statement Import** n'est pas dans la liste, vérifiez les étapes a et c. Si **CSV Plugin Implementation** n'est pas dans la liste, vérifiez les étapes b et c.
>
> **f. Laissez les paramètres du parser tels quels.** Dans le sous-onglet **Parser Configuration** du profil, conservez les valeurs par défaut. Un format de date personnalisé ne peut utiliser que `M`, `D` et `Y`, par exemple `DD/MM/YYYY`. Si vous modifiez les paramètres du parser plus tard, les relevés envoyés avant la modification et pas encore importés peuvent être cassés ou ignorés : supprimez ces fichiers du dossier `Chift Bank Statements` et demandez à votre fournisseur de les renvoyer.
>
> **g. Préparez chaque compte bancaire.** Pour chaque compte bancaire ou carte de crédit qui recevra des relevés, ouvrez-le dans **Lists > Accounting > Accounts**, cliquez sur **Edit**, activez-le pour **Match Bank Data** et **Reconcile Account Statement**, puis cliquez sur **Save**. Il lui faut également :
>
> * un numéro de compte, sans underscore (`_`), utilisé par aucun autre compte actif
> * une devise dont le **ISO Code** est le code ISO 4217 à trois lettres, par exemple `EUR` ou `GBP`
>
> Vous n'avez pas besoin de renseigner **Account Linking** : chaque compte bancaire y est ajouté lors de son premier relevé.
>
> **h. Après votre premier relevé : choisissez la fréquence d'import de NetSuite.** Une fois un compte bancaire lié, NetSuite importe les nouveaux relevés une fois par jour par défaut. Vous pouvez modifier cela dans le sous-onglet **Import Schedule** du profil : une **Unit of Time** (heure ou jour), une **Frequency**, une **Import Date**, une **Import Time** et un **Time Zone**. Renseignez-les tous, ou laissez-les tous vides. Voir [Setting Up a Bank Import Schedule](https://docs.oracle.com/en/cloud/saas/netsuite/ns-online-help/article_0107014921.html) d'Oracle.
>
> Vous choisirez cette Financial Institution lors de la connexion, dans le champ **Financial institution**.

***

# ⚡️ Connexion

Dans Chift, démarrez la connexion NetSuite et suivez les étapes.

**Étape 1 :** Choisissez un nom pour votre connexion.

![](https://mintcdn.com/chift/31nQ8nkwKpxNtIUa/images/help/netsuite/netsuite-fr-8.png?fit=max\&auto=format\&n=31nQ8nkwKpxNtIUa\&q=85\&s=6455b965ab5edc28a19d6747b150d11e)

**Étape 2 :** Renseignez votre **Account ID** NetSuite.

![](https://mintcdn.com/chift/31nQ8nkwKpxNtIUa/images/help/netsuite/netsuite-fr-9.png?fit=max\&auto=format\&n=31nQ8nkwKpxNtIUa\&q=85\&s=94546556899cc3c0fa12942583d7c3e7)

Votre Account ID se trouve au début de votre URL NetSuite, p. ex. `https://1234567.app.netsuite.com` → l'Account ID est `1234567`. Pour les comptes **sandbox**, remplacez le tiret de l'URL (`sb-`) par un underscore (`sb_`), p. ex. `sb-12345` se saisit `sb_12345`. ([documentation NetSuite](https://docs.oracle.com/en/cloud/saas/netsuite/ns-online-help/section_1498754928.html))

**Étape 3 :** Cliquez sur **Authorize**. Lorsque vous y êtes invité, saisissez vos identifiants (associés à l'application) pour connecter votre compte NetSuite.

![](https://mintcdn.com/chift/31nQ8nkwKpxNtIUa/images/help/netsuite/netsuite-fr-10.png?fit=max\&auto=format\&n=31nQ8nkwKpxNtIUa\&q=85\&s=49fcba09d9cf5604d9d149677fa0e0e9)

> [!WARNING]
>
> **Connectez-vous avec le rôle que vous voulez que Chift utilise, pas en tant qu'Administrator.** La connexion s'exécute avec **le rôle avec lequel l'utilisateur autorise**. Si un Administrator se connecte, elle s'exécute avec un accès administrateur complet. Connectez-vous en tant qu'utilisateur portant le rôle restreint que vous avez attribué à l'étape 3 de la configuration (lecture + écriture, lecture seule, ou votre propre rôle).

![](https://mintcdn.com/chift/31nQ8nkwKpxNtIUa/images/help/netsuite/netsuite-fr-11.png?fit=max\&auto=format\&n=31nQ8nkwKpxNtIUa\&q=85\&s=3a5f9441ba70adbb8b6902c78eacd06e)

***Vérifier le rôle lors de la connexion.*** *Sur l'écran de consentement, NetSuite affiche le rôle que la connexion utilisera. Si le bon rôle n'a pas été attribué lors de la préparation, ou si le mauvais est présélectionné, vérifiez-le ici et basculez vers le bon rôle avant de confirmer.*

![](https://mintcdn.com/chift/31nQ8nkwKpxNtIUa/images/help/netsuite/netsuite-fr-12.png?fit=max\&auto=format\&n=31nQ8nkwKpxNtIUa\&q=85\&s=3d65b3faedb6fbbc94f9cbc0be2e6d13)

Cliquez sur **Continue** et c'est tout : aucun Client ID, Client Secret ou URL de RESTlet à saisir. Les données comptables standard et les fonctionnalités reposant sur le script (pièces jointes ; transactions bancaires le cas échéant) passent toutes par la même connexion OAuth 2.0.

**Financial institution (uniquement si votre fournisseur envoie des transactions bancaires).** Après l'autorisation, la fenêtre de connexion peut demander une **Financial institution** :

* **ZoneReconcile n'est pas installé :** choisissez la Financial Institution que vous avez créée à l'étape 4 de la configuration. Seules celles dotées d'un profil de format configuré comme décrit y sont listées.
* **ZoneReconcile est installé :** la liste est vide. Laissez le champ tel quel.

***

# ℹ Bon à savoir

**Rôles et permissions.**

Le bundle livre deux rôles : `Chift Integration` (lecture + écriture) et `Chift Integration (Read Only)`. Vous pouvez aussi vous connecter avec **votre propre rôle NetSuite** adapté à vos besoins ; dans ce cas, contactez l'éditeur de logiciel depuis lequel vous initiez cette connexion, afin de connaître l'ensemble minimal de permissions requis pour le périmètre de votre intégration avec NetSuite.

🚨 **Rester en authentification machine-to-machine (sans reconnexions mensuelles).**

Quel que soit le rôle avec lequel vous vous connectez (du bundle ou le vôtre), il lui faut la permission `Manage own OAuth 2.0 Client Credentials certificates` (sous **Setup** dans la liste des permissions du rôle) pour que la connexion bascule vers l'authentification par certificat et cesse d'exiger une reconnexion tous les \~30 jours. Les rôles `Chift Integration` du bundle la possèdent déjà. Si vous utilisez votre propre rôle, ajoutez-la manuellement :

![](https://mintcdn.com/chift/31nQ8nkwKpxNtIUa/images/help/netsuite/netsuite-fr-13.png?fit=max\&auto=format\&n=31nQ8nkwKpxNtIUa\&q=85\&s=8f18acebb348b97274e87c95b4eb3060)

Vous aurez également besoin de cocher `Client Credentials (Machine To Machine) Grant` sur l'enregistrement d'intégration NetSuite lui-même (même écran que les cases de scope `REST Web Services` et `RESTlets`). Cela ne s'applique que si vous utilisez votre propre enregistrement d'intégration plutôt que le bundle Chift.

Sans les deux, la connexion continue de fonctionner normalement, elle reste simplement sur le flux standard et nécessite une réautorisation environ une fois par mois.

**Comptes OneWorld (multi-filiales).**

Le rôle `Chift Integration` est livré avec **Subsidiary Restrictions = All** afin que le connecteur puisse voir toutes les filiales. Si cette valeur est modifiée en *User Subsidiary*, ou si la préférence *Include Sub-Subsidiaries* de l'utilisateur est désactivée (**Home > Set Preferences > Restrict View**), les filiales enfants n'apparaîtront pas dans Chift. Reconnectez-vous après avoir modifié l'un ou l'autre.

**Dossier des pièces jointes.**

Le bundle livre un dossier File Cabinet `Chift Attachments` comme cible par défaut des pièces jointes stockées. Vous pouvez orienter Chift vers un autre dossier dans les paramètres post-connexion. Ne renommez **pas** le dossier du bundle : Chift le reconnaît par son nom exact `Chift Attachments`.

**Transactions bancaires.**

Les transactions bancaires nécessitent uniquement la configuration de l'étape 4. Les pièces jointes et toutes les fonctionnalités comptables standard n'en dépendent **pas**. Votre éditeur de logiciel envoie les lignes de relevé bancaire ; vous les rapprochez dans NetSuite ou dans ZoneReconcile.

*Si ZoneReconcile est installé*, vos relevés apparaissent dans ZoneReconcile, sous **Transactions > Bank Reconciliation**. Ils ne sont pas rapprochés automatiquement. Pour chaque relevé :

1. Ouvrez le relevé et cliquez sur **Run Match**. ZoneReconcile trouve les factures clients et fournisseurs correspondantes selon vos Matching Preferences.
2. Cliquez sur **Edit**, puis sur **Save**. C'est ce qui crée les paiements : **Run Match** seul ne comptabilise rien.

*Si ZoneReconcile n'est pas installé*, vos relevés apparaissent dans **Transactions > Bank > Bank Matching and Reconciliation > Match Bank Data** :

![Le menu Transactions de NetSuite ouvert sur Bank, Bank Matching and Reconciliation, Match Bank Data](https://mintcdn.com/chift/hyVdqC55TfThXJtB/images/help/netsuite/netsuite-16.png?fit=max\&auto=format\&n=hyVdqC55TfThXJtB\&q=85\&s=34b15b67d527ff02028b440eea109b5e)

1. Choisissez le compte bancaire dans **Account**. Un relevé envoyé par votre fournisseur est dans NetSuite, mais ses lignes n'apparaissent qu'après le prochain import. Le premier apparaît de lui-même en quelques minutes. Si ce n'est pas le cas, cliquez sur **Update Imported Bank Data**. Les suivants arrivent avec la planification d'import (étape 4 de la configuration, h), ou plus tôt avec **Update Imported Bank Data**. NetSuite autorise un import toutes les 60 minutes par Financial Institution, pour l'ensemble de ses comptes bancaires.

2. Dans l'onglet **To Be Matched**, les lignes de relevé se trouvent sous **Imported Bank Data**, et vos transactions NetSuite sous **Account Transactions**. Sélectionnez une ligne de chaque côté et cliquez sur **Match**. Lorsque aucune transaction ne correspond, sélectionnez uniquement la ligne de relevé et utilisez **Add Journal Entry**, **Add Charge** ou **Add Deposit**. Utilisez **Exclude** pour une ligne que vous ne souhaitez pas rapprocher.

   ![L'onglet To Be Matched de Match Bank Data, avec les lignes bancaires importées à gauche et les transactions de compte NetSuite à droite](https://mintcdn.com/chift/hyVdqC55TfThXJtB/images/help/netsuite/netsuite-17.png?fit=max\&auto=format\&n=hyVdqC55TfThXJtB\&q=85\&s=0947d423ccf39eaef3a0ca52e959f6f9)

3. Dans l'onglet **Review**, vérifiez les lignes rapprochées et cliquez sur **Submit Selected** ou **Submit All**. Les rapprochements ne sont enregistrés qu'au moment de la soumission. Jusque-là, **Undo Selected** renvoie une ligne vers **To Be Matched**.

   ![L'onglet Review de Match Bank Data, avec des lignes rapprochées sélectionnées et la confirmation Submit Selected Transactions](https://mintcdn.com/chift/hyVdqC55TfThXJtB/images/help/netsuite/netsuite-18.png?fit=max\&auto=format\&n=hyVdqC55TfThXJtB\&q=85\&s=e431e31323585f4d39f77bad2f02994f)

Une ligne bancaire est rapprochée d'un paiement ou d'une autre transaction, pas directement d'une facture client ou fournisseur ouverte.

***

# ❓ Dépannage

| Symptôme | Cause | Solution |
| - | - | - |
| La connexion demande une reconnexion tous les \~30 jours alors que tout le reste est correctement configuré | Le rôle personnalisé n'a pas la permission `Manage own OAuth 2.0 Client Credentials certificates`, ou l'enregistrement d'intégration n'a pas `Client Credentials (Machine To Machine) Grant` coché | Ajoutez la permission au rôle et/ou cochez le grant sur l'enregistrement d'intégration, puis lancez Test Connection |
| `INSUFFICIENT_PERMISSION` / « You do not have privileges to view this page » sur les appels de pièces jointes ou bancaires | Vous vous êtes connecté en tant qu'Administrator au lieu de l'utilisateur `Chift Integration`, ou le rôle du token ne fait pas partie de l'audience du déploiement du script | Reconnectez-vous en tant qu'utilisateur d'intégration dédié (étape 3 de la connexion). |
| Le rôle `Chift Integration` n'est pas sélectionnable sur l'écran de consentement | Rôle attribué mais session non rafraîchie | Déconnectez-vous et reconnectez-vous en tant qu'utilisateur d'intégration (étape 3 de la configuration), puis réessayez. |
| La liste des filiales n'affiche que la société mère (OneWorld) | Subsidiary Restrictions du rôle = *User Subsidiary*, ou *Include Sub-Subsidiaries* est désactivé | Définissez Subsidiary Restrictions = **All** sur le rôle, activez *Include Sub-Subsidiaries*, puis reconnectez-vous. |
| Le dossier `Chift Attachments` n'apparaît pas dans la liste déroulante des dossiers | Le dossier a été renommé | Conservez le nom exact `Chift Attachments`. |
| Le bundle ne s'installe pas (« script cannot be deployed ») | Fonctionnalité Server SuiteScript / Custom Records non activée | Réalisez l'étape 1 de la configuration avant l'installation. |
| Un endpoint spécifique renvoie une erreur 403 à l'exécution | Le rôle n'a pas cette permission de transaction/liste | Accordez la permission manquante au rôle `Chift Integration`. |
| « Bank Statement Parsers is not installed. » | La SuiteApp Bank Statement Parsers n'est pas installée, et ZoneReconcile n'est pas installé ou votre rôle ne peut pas lire ses enregistrements bancaires | Installez le bundle `293699` (étape 4 de la configuration, b). Si ZoneReconcile est installé, donnez à votre rôle l'accès à ses enregistrements bancaires (étape 4 de la configuration, onglet ZoneReconcile), puis testez à nouveau la connexion. |
| « The bank statements folder is not set up. » | Le dossier `Chift Bank Statements` installé par le bundle a été renommé, supprimé ou dupliqué | Conservez exactement un dossier actif portant ce nom exact (étape 4 de la configuration, a). |
| « No single bank reconciliation format profile is set up for the import. » | La Financial Institution n'a pas de profil de format avec **Chift Bank Statement Import** et **CSV Plugin Implementation**, ou en a plusieurs actifs | Conservez exactement un profil de format actif configuré comme à l'étape 4 de la configuration, e. |
| « No financial institution is selected for the bank statement import. » | Le champ **Financial institution** a été laissé vide | Choisissez votre Financial Institution dans les paramètres de connexion (section Connexion). |
| La liste **Financial institution** est vide, et ZoneReconcile n'est pas installé | Aucun profil de format actif n'utilise à la fois **Chift Bank Statement Import** et **CSV Plugin Implementation** | Configurez le profil de format (étape 4 de la configuration, e), puis rouvrez les paramètres de connexion. |
| « Script extension version not valid. » | Le bundle d'intégration installé sur votre compte est trop ancien pour les relevés bancaires : ils nécessitent la version 1.2 ou ultérieure avec ZoneReconcile, 1.4 ou ultérieure sans | Mettez à jour le bundle `703899` (étape 4 de la configuration : l'onglet ZoneReconcile, ou l'étape a sans ZoneReconcile). |
| « The bank account … is not enabled for bank data matching. » | Le compte bancaire n'est pas activé pour **Match Bank Data** | Activez-le pour **Match Bank Data** et **Reconcile Account Statement** (étape 4 de la configuration, g). |
| « NetSuite did not store the Account Linking row for bank account … » | Le compte bancaire n'a pas pu être ajouté au profil de format | Dans le sous-onglet **Account Linking** du profil de format, ajoutez le compte bancaire vous-même. |
| « The bank account number is missing or contains an underscore. » | Le compte bancaire NetSuite n'a pas de numéro de compte, ou celui-ci contient `_` | Donnez au compte bancaire un numéro sans `_` (étape 4 de la configuration, g). |
| « The currency symbol … in NetSuite is not the ISO 4217 code … » | Le **ISO Code** de la devise du compte bancaire n'est pas le code standard à trois lettres | Dans **Lists > Accounting > Currencies**, ouvrez la devise et définissez **ISO Code** sur le code ISO 4217, par exemple `EUR`. |
| « Bank account … is linked to another general ledger account … in NetSuite. » | Dans **Account Linking** du profil de format, ce numéro de compte est déjà lié à un autre compte | Corrigez ou supprimez cette ligne dans **Account Linking**. |
| « The date format … of the bank statement parser configuration is not supported. » | Le parser du profil de format utilise un format de date sans mois, jour et année | Dans **Parser Configuration** du profil de format, utilisez un format de date avec uniquement `M`, `D` et `Y` (étape 4 de la configuration, f). |
| Les relevés bancaires n'apparaissent pas dans **Match Bank Data** | Ils attendent le prochain import | Cliquez sur **Update Imported Bank Data**, au maximum une fois toutes les 60 minutes. |
| Toujours rien dans **Match Bank Data** ni dans **Banking Import History** après **Update Imported Bank Data** | Un plug-in n'est pas activé | Cochez **Chift Bank Statement Import** et **CSV Plugin Implementation** dans **Manage Plug-ins** (étape 4 de la configuration, c). |
| **Update Imported Bank Data** : « Your account is not configured with a bank connection » | Aucun relevé n'a encore été envoyé pour ce compte bancaire, il n'est donc pas lié au profil de format | Attendez que votre fournisseur envoie un premier relevé, puis réessayez. |
| « You can only import bank data for an account every 60 minutes. » | Un import a été lancé pour cette Financial Institution il y a moins d'une heure | Réessayez dans une heure, ou attendez l'import planifié. |
| « Record 'formatprofile' was not found », ou « You need the 'SuiteScript' permission » | Vous vous connectez avec votre propre rôle, et il lui manque **Setup > Financial Institution Records** ou **Setup > SuiteScript** | Accordez **Financial Institution Records** en **Full** et **SuiteScript** en **View**, ainsi que **Lists > Documents and Files** en **Create**. |


This documentation is built and hosted on [Mintlify](https://mintlify.com), a developer documentation platform.