Passer au contenu principal
NetSuite est le logiciel ERP et de comptabilité cloud d’Oracle, avec support multi-filiales (OneWorld).

Prérequis

Vous devez avoir un compte NetSuite avec les fonctionnalités SuiteTalk REST Web Services et Token-Based Authentication activées, et des droits administrateur sur Hyperline. Vous devez également créer un enregistrement Integration NetSuite avec Token-Based Authentication activé, et émettre un access token pour l’utilisateur/rôle utilisé par Hyperline. Le rôle doit avoir les permissions sur les clients, les factures, les avoirs, les paiements clients, les items, les comptes, les codes de taxe, les filiales et SuiteQL (REST Web Services + Log in using Access Tokens).

Activer Token-Based Authentication

Dans NetSuite, allez dans Setup > Company > Enable Features > SuiteCloud et activez :
  • Token-Based Authentication
  • SuiteTalk (REST Web Services) — s’il n’est pas déjà activé

Créer un enregistrement Integration

Cela génère la Consumer Key et le Consumer Secret utilisés par Hyperline. Dans NetSuite, allez dans Setup > Integrations > Manage Integrations > New et renseignez :
  • Name : par exemple Hyperline
  • State : Enabled
  • Activez Token-Based Authentication
Enregistrez l’enregistrement. NetSuite affiche la Consumer Key et le Consumer Secret une seule fois — copiez immédiatement les deux valeurs et stockez-les en lieu sûr.

Générer un access token

Cela génère le Token ID et le Token Secret utilisés par Hyperline. Dans NetSuite, allez dans Setup > Users/Roles > Access Tokens > New et choisissez :
  • Application Name : l’enregistrement d’intégration créé ci-dessus
  • User : l’utilisateur NetSuite dédié à Hyperline
  • Role : le rôle attribué à cet utilisateur (avec les permissions listées ci-dessus)
Enregistrez l’enregistrement. NetSuite affiche le Token ID et le Token Secret une seule fois — copiez immédiatement les deux valeurs et stockez-les en lieu sûr.

Configuration

1

Dans Hyperline, allez sur la page Settings > Integrations

2

Cliquez sur Connect sur la carte NetSuite

3

Saisissez vos identifiants Token-Based Authentication

Fournissez les cinq valeurs émises par NetSuite :
  • Account ID (votre realm NetSuite, par exemple 1234567 ou 1234567_SB1 pour les sandboxes)
  • Consumer Key
  • Consumer Secret
  • Token ID
  • Token Secret
Hyperline n’utilise pas OAuth 2.0. Tous les appels API sont signés avec OAuth 1.0a (HMAC-SHA256) en utilisant vos identifiants TBA.
4

Mappez vos entités de facturation aux filiales NetSuite

Sur la page Settings > Integrations > NetSuite, liez chaque entité de facturation Hyperline à une filiale NetSuite. La filiale détermine la devise, le pays et les comptes/codes de taxe/items disponibles affichés dans le reste de la configuration.
5

Configurez les mappings

Mappez vos produits, règles comptables, codes de taxe et tout mapping de champs client ou ligne. Voir Mapping ci-dessous.
6

C'est tout !

Votre compte Hyperline est prêt à envoyer des factures, notes de crédit et paiements vers NetSuite.

Mapping

Filiales

NetSuite exige une filiale sur chaque client et transaction. Chaque entité de facturation Hyperline doit être mappée à une filiale NetSuite sur la page des paramètres d’intégration. Les comptes OneWorld sont pris en charge — les comptes, items et codes de taxe sont automatiquement filtrés selon la filiale sélectionnée.

Clients

Pour lier un client NetSuite existant à un client Hyperline, ouvrez la page du client Hyperline, cliquez sur Edit dans la section Integrations, et collez l’internal ID du client NetSuite. Pour un liage en masse lors de l’onboarding initial, contactez notre équipe de support ou utilisez ce point de terminaison de l’API. Si un client Hyperline n’est lié à aucun client NetSuite, le comportement dépend du Customer sync mode configuré dans les paramètres :
  • no synchronization — le client doit être lié manuellement avant qu’une facture puisse être poussée ; sinon, l’envoi de la facture échoue.
  • from Hyperline to NetSuite — le client est automatiquement créé dans NetSuite la première fois qu’il est nécessaire (généralement lors du premier envoi de facture).
Avant de créer un nouveau client dans NetSuite, Hyperline recherche dans le champ External ID de NetSuite un enregistrement correspondant à l’ID du client Hyperline, afin d’éviter les doublons. Les champs client suivants sont poussés vers NetSuite : nom de la société, email de facturation, numéro de taxe, filiale et adresse de facturation par défaut (ligne 1, ville, code postal, état, pays).

Mappings de champs personnalisés

Tout champ personnalisé au niveau de l’entité NetSuite (fieldtype = ENTITY) peut être mappé depuis la section Field mappings des paramètres d’intégration. La source peut être soit un champ client Hyperline intégré, soit une propriété personnalisée Hyperline définie sur l’entité client. Pour les champs NetSuite qui référencent un autre enregistrement (Location, Department, etc.), la valeur mappée doit être l’internal ID NetSuite de l’enregistrement référencé. Les champs Location font exception : Hyperline résout automatiquement un nom de location vers son ID NetSuite, vous pouvez donc mapper directement une propriété personnalisée contenant le nom de la location.

Mappings de champs personnalisés de facture

Tout champ personnalisé du corps de transaction NetSuite sur les factures peut être mappé depuis une propriété personnalisée de facture Hyperline. C’est utile pour envoyer des métadonnées de facture structurées telles que les références de contrat, les centres de coûts internes, les responsables commerciaux ou les dimensions de reporting. Créez d’abord la propriété personnalisée dans Hyperline, puis ouvrez la section Field mappings des paramètres de l’intégration NetSuite et mappez-la au champ de facture NetSuite correspondant.

Produits (items / SKU)

Chaque ligne de facture doit être mappée à un item NetSuite. Pour chaque produit Hyperline, allez dans la section Accounting de la page du produit et choisissez l’item NetSuite correspondant dans le sélecteur dédié — Hyperline récupère la liste des items directement depuis votre compte NetSuite.
Seuls les items de type Service, Non-Inventory Part et Inventory Part sont exposés par Hyperline. Les items inactifs sont filtrés.
Si la liste d’items NetSuite est longue, utilisez la recherche du sélecteur pour trouver l’item approprié. Hyperline charge les items NetSuite correspondants au fur et à mesure de votre recherche. Si un mapping de produit manque pour une ligne, l’envoi de la facture échoue avec une erreur claire afin que vous puissiez corriger le mapping et réessayer.

Règles de reconnaissance de revenu

Lorsque l’item NetSuite sélectionné dispose de règles de reconnaissance de revenu disponibles, vous pouvez mapper une Revenue recognition rule depuis la même section Accounting de la page du produit Hyperline. Sélectionnez d’abord l’item NetSuite, puis sélectionnez la règle à attacher aux lignes de facture pour ce produit et cette entité de facturation.

Comptes (facture + transaction)

NetSuite exige un income account sur chaque ligne de facture et un bank/AR account sur les paiements clients.
  • Compte de facture par ligne : résolu via vos règles comptables pour chaque ligne. Si aucune règle ne résout vers un compte, l’envoi de la facture échoue afin que vous puissiez corriger la règle et réessayer — aucune valeur par défaut silencieuse n’est appliquée.
  • Compte de paiement : résolu via les règles comptables. Si aucune règle ne résout vers un compte, l’envoi du paiement échoue afin que vous puissiez corriger la règle et réessayer.
  • Les comptes non-postables et statistiques sont filtrés — seuls les comptes GL postables sont disponibles à la sélection.

Codes de taxe

Les codes de taxe sont configurés au niveau de l’entité de facturation — configurez les codes de taxe avec calcul automatique dans les paramètres de taxe de l’entité de facturation. Les codes de taxe sont alors résolus selon ce qui est configuré dans Hyperline et poussés vers NetSuite sur chaque ligne. Les enregistrements salestaxitem et taxgroup sont tous deux exposés, filtrés par filiale.

Champs de ligne de facture

Tout champ personnalisé au niveau colonne NetSuite (fieldtype = COLUMN) sur la sous-liste de ligne de facture peut être mappé depuis la section Field mappings. Deux champs de ligne intégrés sont disponibles :
  • Period start — début de la période de facturation de la ligne
  • Period end — fin de la période de facturation de la ligne
Cela est généralement utilisé pour alimenter la reconnaissance de revenu de NetSuite ou les colonnes de reporting personnalisées.

Lien retour vers Hyperline

Hyperline peut renseigner deux champs personnalisés opt-in avec une URL cliquable vers l’enregistrement correspondant dans l’application Hyperline. Créez l’un ou l’autre de ces champs sur le type d’enregistrement NetSuite concerné et Hyperline le remplira à chaque envoi — aucun mapping supplémentaire requis.
ID de champ NetSuiteType d’enregistrementType de champValeur poussée
custentity_hyperline_urlCustomerFree-Form Texthttps://app.hyperline.co/app/customers/{id}
custbody_hyperline_urlTransactionFree-Form Texthttps://app.hyperline.co/app/invoices/{id}
Si le champ n’existe pas sur votre compte, Hyperline le saute simplement — pas d’erreur.

Synchronisation

Lorsque vous connectez votre compte NetSuite, Hyperline envoie automatiquement les factures, notes de crédit, clients et paiements avec leurs détails complets.
Par défaut, seules les données créées après la date de connexion sont synchronisées. Pour pousser des données plus anciennes, veuillez contacter notre équipe de support.
Vous pouvez également utiliser Resync depuis le menu d’actions de l’intégration pour synchroniser à nouveau les factures existantes, les factures manquantes et les clients liés après avoir corrigé les mappings ou reconnecté NetSuite. Utilisez la plage de dates d’émission optionnelle pour limiter les factures traitées. La synchronisation est à sens unique : Hyperline → NetSuite. NetSuite est interrogé en lecture seule pour récupérer les métadonnées (filiales, items, comptes, codes de taxe, champs personnalisés).

Synchronisation des clients

Hyperline prend en charge 2 modes pour les clients :
  • no synchronization : les clients ne sont pas créés automatiquement par Hyperline — ils doivent être liés manuellement avant qu’une facture puisse être poussée.
  • from Hyperline to NetSuite : les clients créés dans Hyperline sont automatiquement créés dans NetSuite avec leurs détails. Les mises à jour sont propagées.

Synchronisation des factures et notes de crédit

Les factures et notes de crédit sont poussées en tant qu’enregistrements Invoice et Credit Memo natifs de NetSuite. Lorsqu’une note de crédit est liée à une facture existante dans Hyperline, le credit memo NetSuite est automatiquement appliqué à cette facture pour le montant correspondant. Les mises à jour effectuées sur une facture dans Hyperline sont propagées automatiquement à l’enregistrement NetSuite correspondant.

Synchronisation des paiements

Les paiements utilisent un mode de synchronisation par méthode de paiement (carte, prélèvement SEPA / ACH / BACS, virement bancaire, Apple Pay, Google Pay, Stripe Link, externe, autre). Chacun peut être défini indépendamment à :
  • no synchronization : les paiements ne sont pas synchronisés.
  • from Hyperline to NetSuite : les paiements réglés dans Hyperline sont poussés en tant que Customer Payments NetSuite et appliqués à la facture correspondante.
Lorsqu’un paiement est mis à jour ou remboursé dans Hyperline, le Customer Payment NetSuite existant est supprimé et recréé pour maintenir la cohérence des deux systèmes. Le délai de synchronisation est de 5 minutes maximum.