NetSuite
Le connecteur NetSuite vous permet d'effectuer des opérations d'insertion, de suppression, de mise à jour et de lecture sur les données NetSuite.
Avant de commencer
Avant d'utiliser le connecteur NetSuite, effectuez les tâches suivantes:
- Dans votre projet Google Cloud :
- Attribuez le rôle IAM roles/connectors.admin à l'utilisateur qui configure le connecteur.
- Attribuez les rôles IAM suivants au compte de service que vous souhaitez utiliser pour le connecteur :
roles/secretmanager.viewer
roles/secretmanager.secretAccessor
Un compte de service est un compte Google spécial destiné à représenter un utilisateur non humain qui doit s'authentifier et obtenir les autorisations permettant d'accéder aux données des API Google. Si vous ne possédez pas de compte de service, vous devez en créer un. Pour plus d'informations, consultez la section Créer un compte de service.
- Activez les services suivants :
secretmanager.googleapis.com
(API Secret Manager)connectors.googleapis.com
(API Connectors)
Pour savoir comment activer des services, consultez la page Activer des services.
Si ces services ou autorisations n'ont pas encore été activés pour votre projet, vous êtes invité à les activer lors de la configuration du connecteur.
Configurer le connecteur
Pour configurer le connecteur, vous devez créer une connexion à votre source de données (système backend). Une connexion est spécifique à une source de données. Cela signifie que si vous disposez de nombreuses sources de données, vous devez créer une connexion distincte pour chacune d'elles. Pour créer une connexion, procédez comme suit :
- Dans la console Cloud, accédez à la page Integration Connectors > Connections (Connecteurs d'intégration > Connexions), puis sélectionnez ou créez un projet Google Cloud.
- Cliquez sur + Créer pour ouvrir la page Créer une connexion.
- Dans la section Emplacement, choisissez l'emplacement de la connexion.
- Région : sélectionnez un emplacement dans la liste déroulante.
Les régions disponibles pour les connecteurs sont les suivantes :
Pour obtenir la liste de toutes les régions disponibles, consultez la section Emplacements.
- Cliquez sur Suivant.
- Région : sélectionnez un emplacement dans la liste déroulante.
- Dans la section Détails de connexion, procédez comme suit :
- Connecteur: sélectionnez Netsuite dans la liste déroulante des connecteurs disponibles.
- Version du connecteur : sélectionnez la version du connecteur dans la liste déroulante des versions disponibles.
- Dans le champ Nom de connexion, saisissez un nom pour l'instance de connexion.
Les noms de connexion doivent répondre aux critères suivants :
- Les noms de connexion peuvent contenir des lettres, des chiffres ou des traits d'union.
- Les lettres doivent être en minuscules.
- Les noms de connexion doivent commencer par une lettre et se terminer par une lettre ou un chiffre.
- Les noms de connexion ne peuvent pas dépasser 63 caractères.
- Saisissez éventuellement une Description pour l'instance de connexion.
- Compte de service : sélectionnez un compte de service disposant des rôles requis.
- Vous pouvez également configurer les paramètres du nœud de connexion :
- Nombre minimal de nœuds : saisissez le nombre minimal de nœuds de connexion.
- Nombre maximal de nœuds : saisissez le nombre maximal de nœuds de connexion.
Un nœud est une unité (ou instance répliquée) de connexion qui traite des transactions. Un plus grand nombre de nœuds est nécessaire afin de traiter plus de transactions pour une connexion. À l'inverse, moins de nœuds sont nécessaires pour traiter moins de transactions. Pour comprendre l'impact des nœuds sur la tarification de votre connecteur, consultez la section Tarifs des nœuds de connexion. Si vous ne saisissez aucune valeur, le nombre minimal de nœuds est défini par défaut sur 2 (pour une meilleure disponibilité) et le nombre maximal sur 50.
- ID de compte: compte d'entreprise auquel votre nom d'utilisateur est associé sur NetSuite.
- Mode Colonnes agrégées: indique comment traiter les colonnes agrégées.
- ID d'application: depuis la version 2020.1, les requêtes envoyées à NetSuite nécessitent un ID application.
- Autorisations liées aux champs personnalisés: liste d'autorisations relatives aux champs personnalisés, séparées par une virgule. Offre plus de contrôle qu'IncludeCustomFieldColumns .
- Include Child Tables (Inclure les tables enfants) : valeur booléenne indiquant si les tables enfants doivent être affichées.
- Inclure des colonnes de champs personnalisés: valeur booléenne indiquant si vous souhaitez inclure des colonnes de champs personnalisés.
- Inclure les tableaux de listes personnalisées: valeur booléenne indiquant si vous souhaitez utiliser des tableaux en fonction de listes personnalisées.
- Include Custom Record Tables (Inclure les tables d'enregistrements personnalisés) : valeur booléenne indiquant si vous souhaitez utiliser des tables basées sur des types d'enregistrements personnalisés.
- Inclure les colonnes de référence: liste d'éléments séparés par une virgule représentant les colonnes à inclure lors de la récupération des données d'un champ représentant une référence d'enregistrement.
- Nombre maximal de sessions simultanées: nombre maximal de sessions simultanées disponibles pour la connexion.
- Net Suite Date Format (Format de date Net Suite) : le format de date recommandé dans l'interface utilisateur de NetSuite.
- Net Suite Long Date Format: il s'agit du format de date longue à privilégier dans l'interface utilisateur de NetSuite.
- Dossier de métadonnées NetSuite: chemin d'accès à un répertoire permettant de télécharger des fichiers de métadonnées depuis NetSuite. Définissez ce paramètre pour optimiser les performances.
- Report doubles as Decimal (Signaler les doubles comme des nombres décimaux) : indique si les doubles doivent être indiqués sous forme de nombre décimal.
- Request Memorized Transactions (Demander des transactions mémorisées) : valeur booléenne indiquant si vous souhaitez demander des transactions mémorisées lors de la récupération des transactions depuis NetSuite.
- Role Id (ID du rôle) : le RoleId est l'InternalId du rôle qui sera utilisé pour se connecter à NetSuite. Laissez le champ vide pour utiliser le rôle par défaut de l'utilisateur.
-
Schéma : type de schéma à utiliser. Vous pouvez sélectionner l'une des valeurs suivantes :
- SuiteTalk : pour la connectivité basée sur le protocole SOAP.
- SuiteSQL : pour une connectivité basée sur REST.
- Use Async Services (Utiliser des services asynchrones) : valeur booléenne indiquant si vous souhaitez utiliser des services asynchrones lors de l'insertion, de la mise à jour et de la suppression.
- Use Internal Names For Customizations (Utiliser des noms internes pour la personnalisation) : une valeur booléenne indiquant si vous souhaitez utiliser des noms internes pour les personnalisations.
- Use Upserts (Utiliser des insertions) : valeur booléenne indiquant si vous souhaitez effectuer une opération d'insertion des données lorsqu'une opération d'insertion est effectuée.
- Décalage de fuseau horaire utilisateur: il s'agit du décalage horaire défini dans vos préférences NetSuite, sous Accueil > Préférences > Fuseau horaire. Ex. : EST.
- Profondeur d'analyse des lignes: nombre de lignes à analyser pour déterminer de manière dynamique les colonnes de la table.
- Utiliser un proxy : cochez cette case pour configurer un serveur proxy pour la connexion, et spécifiez les valeurs suivantes :
-
Schéma d'authentification du proxy : sélectionnez le type d'authentification pour l'authentification auprès du serveur proxy. Les types d'authentification suivants sont compatibles :
- Basique : authentification HTTP de base.
- Condensé : authentification HTTP par condensé.
- Utilisateur du proxy : nom d'utilisateur à utiliser pour l'authentification auprès du serveur proxy.
- Mot de passe du proxy : secret Secret Manager du mot de passe de l'utilisateur.
-
Type SSL du proxy : type SSL à utiliser lors de la connexion au serveur proxy. Les types d'authentification suivants sont compatibles :
- Auto : paramètre par défaut. Dans le cas d'une URL HTTPS, l'option "Tunnel" est utilisée. Dans le cas d'une URL HTTP, l'option "JAMAIS" est utilisée.
- Toujours : la connexion SSL est toujours activée.
- Jamais : la connexion n'est pas activée pour SSL.
- Tunnel : la connexion s'effectue via un proxy de tunnelisation. Le serveur proxy ouvre une connexion à l'hôte distant et le trafic transite par le proxy.
- Dans la section Serveur proxy, saisissez les détails du serveur proxy.
- Cliquez sur + Ajouter une destination.
- Sélectionnez un type de destination.
- Adresse de l'hôte : spécifiez le nom d'hôte ou l'adresse IP de la destination.
Si vous souhaitez établir une connexion privée à votre système backend, procédez comme suit :
- Créez un rattachement de service PSC.
- Créez un rattachement de point de terminaison, puis saisissez les détails du rattachement de point de terminaison dans le champ Adresse de l'hôte.
- Adresse de l'hôte : spécifiez le nom d'hôte ou l'adresse IP de la destination.
- Vous pouvez également cliquer sur + Ajouter une étiquette pour ajouter une étiquette à la connexion sous la forme d'une paire clé/valeur.
- Cliquez sur Suivant.
- Dans la section Destinations, saisissez les informations concernant l'hôte distant (système backend) auquel vous souhaitez vous connecter.
- Type de destination : vous pouvez spécifier les détails de destination sous la forme d'une adresse hôte ou d'un rattachement de service. Sélectionnez l'un des types de destination suivants :
- Adresse hôte : si vous souhaitez spécifier le nom d'hôte ou l'adresse IP de la destination.
- Rattachement de service : si vous souhaitez spécifier le point de terminaison privé pour vos adresses IP internes. Le rattachement de service vous permet de masquer vos adresses IP internes dans le réseau externe. Vous pouvez créer un rattachement de service dans Google Cloud à l'aide de la fonctionnalité Private Service Connect. Pour en savoir plus sur la configuration d'une instance Private Service Connect, consultez la page Publier des services gérés.
En fonction du type de destination sélectionné, saisissez l'adresse hôte ou le nom du rattachement de service.
Pour ajouter des destinations supplémentaires, cliquez sur + Ajouter une destination.
- Cliquez sur Suivant.
- Type de destination : vous pouvez spécifier les détails de destination sous la forme d'une adresse hôte ou d'un rattachement de service. Sélectionnez l'un des types de destination suivants :
-
Dans la section Authentification, saisissez les informations d'authentification.
- Sélectionnez un type d'authentification, puis saisissez les informations appropriées.
Les types d'authentification suivants sont compatibles avec la connexion NetSuite:
- Nom d'utilisateur et mot de passe
- Authentification par jeton
- Octroi de code d'autorisation OAuth 2.0
- Cliquez sur Suivant.
Pour comprendre comment configurer ces types d'authentification, consultez la section Configurer l'authentification.
- Sélectionnez un type d'authentification, puis saisissez les informations appropriées.
- Vérifiez vos informations de connexion et d'authentification.
- Cliquez sur Créer.
Configurer l'authentification
Saisissez les détails en fonction de l'authentification que vous souhaitez utiliser.
-
Nom d'utilisateur et mot de passe
Authentification par nom d'utilisateur et mot de passe. Ceci n'est valide que pour NetSuite 2020.2 ou version antérieure.
- Nom d'utilisateur : nom d'utilisateur du connecteur
- Mot de passe : Secret de Secret Manager contenant le mot de passe associé au connecteur.
-
Authentification par jeton
Authentification basée sur les jetons pour Netsuite. Il peut être utilisé pour les schémas
SuiteTalk
etSuiteQL
.- ID client OAuth: clé client affichée lors de la création de l'application.
- Code secret du client OAuth: code secret de Secret Manager contenant le code secret du client affiché lors de la création de l'application.
- OAuth Access Token (Jeton d'accès OAuth) : ID du jeton utilisé lors de la création du jeton d'accès.
- Code secret du jeton d'accès OAuth: code secret de Secret Manager contenant le code secret du jeton lors de la création du jeton.
- OAuth 2.0 - Code d'autorisation
- ID client : ID client utilisé pour demander des jetons d'accès.
- Champs d'application: liste des champs d'application requis, séparés par une virgule.
- Code secret du client : code secret du client utilisé pour demander des jetons d'accès.
L'autorisation de connexion s'effectue via un flux de connexion utilisateur Web. Ce champ n'est valide que pour le schéma SuiteQL
.
Pour le type d'authentification Authorization code
, après avoir créé la connexion, vous devez effectuer quelques étapes supplémentaires pour configurer l'authentification. Pour en savoir plus, consultez la section Étapes supplémentaires après la création de la connexion.
Étapes supplémentaires après la création de la connexion
Si vous avez sélectionné OAuth 2.0 - Authorization code
pour l'authentification, vous devez effectuer les étapes supplémentaires suivantes après avoir créé la connexion:
- Sur la page Connexions, localisez la connexion que vous venez de créer.
Notez que l'état du nouveau connecteur sera Autorisation requise.
- Cliquez sur Autorisation requise.
Le volet Modifier l'autorisation s'affiche.
- Copiez la valeur de l'URI de redirection dans votre application externe.
- Vérifiez les détails de l'autorisation.
- Cliquez sur Autoriser.
Si l'autorisation aboutit, l'état de la connexion sera défini sur Active sur la page Connexions.
Nouvelle autorisation pour le code d'autorisation
Si vous utilisez le type d'authentification Authorization code
et que vous avez modifié la configuration de votre application backend NetSuite, vous devez à nouveau autoriser votre connexion NetSuite. Pour autoriser à nouveau une connexion, procédez comme suit:
- Cliquez sur la connexion requise sur la page Connexions.
La page des détails de la connexion s'ouvre.
- Cliquez sur Edit (Modifier) pour modifier les détails de la connexion.
- Vérifiez les détails du champ OAuth 2.0 – Code d'autorisation dans la section Authentification.
Si nécessaire, apportez les modifications nécessaires.
- Cliquez sur Enregistrer. La page des détails de la connexion s'affiche.
- Cliquez sur Modifier l'autorisation dans la section Authentification. Le volet Authorize (Autoriser) s'affiche.
- Cliquez sur Autoriser.
Si l'autorisation aboutit, l'état de la connexion est défini sur Active sur la page Connexions.
Entités, opérations et actions
Tous les connecteurs Integration Connectors fournissent une couche d'abstraction pour les objets de l'application connectée. Vous ne pouvez accéder aux objets d'une application que via cette abstraction. L'abstraction vous est présentée en tant qu'entités, opérations et actions.
- Entité : une entité peut être considérée comme un objet ou un ensemble de propriétés dans l'application ou le service connecté. La définition d'une entité diffère d'un connecteur à l'autre. Par exemple, dans un connecteur de base de données, les tables sont les entités, dans un connecteur de serveur de fichiers, les dossiers sont les entités et, dans un connecteur de système de messagerie, les files d'attente sont les entités.
Toutefois, il est possible qu'un connecteur ne soit pas compatible ou ne possède aucune entité. Dans ce cas, la liste
Entities
est vide. - Opération : une opération est l'activité que vous pouvez effectuer sur une entité. Vous pouvez effectuer l'une des opérations suivantes sur une entité :
La sélection d'une entité dans la liste disponible génère une liste d'opérations disponibles pour l'entité. Pour obtenir une description détaillée des opérations, consultez les opérations d'entité de la tâche de connecteur. Toutefois, si un connecteur n'est compatible avec aucune des opérations d'entité, celles-ci ne sont pas répertoriées dans la liste
Operations
. - Action : une action est une fonction de première classe mise à la disposition de l'intégration via l'interface du connecteur. Une action vous permet de modifier une ou plusieurs entités, et varie d'un connecteur à l'autre. Toutefois, il est possible qu'un connecteur ne prenne en charge aucune action, auquel cas la liste
Actions
est vide.
Limites du système
Le connecteur NetSuite peut traiter une transaction par seconde et par nœud, et limite toute transaction au-delà de cette limite. Par défaut, Integration Connectors alloue deux nœuds par connexion (pour une meilleure disponibilité).
Pour en savoir plus sur les limites applicables à Integration Connectors, consultez la section Limites.
Exemples d'opérations d'entité
Cette section explique comment effectuer certaines opérations sur les entités dans ce connecteur.
Exemple – Lister toutes les notes de crédit
Cet exemple liste toutes les notes de crédit de l'entité CreditMemo
.
- Dans la boîte de dialogue
Configure connector task
, cliquez surEntities
. - Sélectionnez
CreditMemo
dans la listeEntity
. - Sélectionnez l'opération
List
, puis cliquez sur OK. - Si vous le souhaitez, dans la section Entrée de tâche de la tâche Connecteurs, vous pouvez filtrer votre ensemble de résultats en spécifiant une clause de filtre. Spécifiez la valeur de la clause de filtre toujours entre guillemets simples (').
Exemple : obtenir un enregistrement de note de crédit
Dans cet exemple, nous obtenons un enregistrement avec l'ID spécifié à partir de l'entité CreditMemo
.
- Dans la boîte de dialogue
Configure connector task
, cliquez surEntities
. - Sélectionnez
CreditMemo
dans la listeEntity
. - Sélectionnez l'opération
Get
, puis cliquez sur OK. - Dans la section Task Input (Entrée de la tâche) de la tâche Connectors (Connecteurs), cliquez sur EntityId (ID d'entité), puis saisissez
1083723
dans le champ Default Value (Valeur par défaut).Ici,
1083723
est un ID d'enregistrement unique dans l'entitéCreditMemo
.
Exemple : Créer un profil client
Cet exemple crée un enregistrement dans l'entité Customer
.
- Dans la boîte de dialogue
Configure connector task
, cliquez surEntities
. - Sélectionnez
Customer
dans la listeEntity
. - Sélectionnez l'opération
Create
, puis cliquez sur OK. - Dans la section Task Input (Entrée de la tâche) de la tâche Connectors (Connecteurs), cliquez sur
connectorInputPayload
, puis saisissez une valeur semblable à la suivante dans le champDefault Value
:{ "CompanyName": "Test1", "Email": "test3@gmail.com" }
Si l'intégration aboutit, le champ
connectorOutputPayload
de votre tâche de connecteur aura une valeur semblable à celle-ci:[{ "InternalId": "4767" }]
Exemple : Mettre à jour une commande
Cet exemple met à jour un enregistrement dans l'entité SalesOrder
.
- Dans la boîte de dialogue
Configure connector task
, cliquez surEntities
. - Sélectionnez
SalesOrder
dans la listeEntity
. - Sélectionnez l'opération
Update
, puis cliquez sur OK. - Dans la section Task Input (Entrée de la tâche) de la tâche Connectors (Connecteurs), cliquez sur
connectorInputPayload
, puis saisissez une valeur semblable à la suivante dans le champDefault Value
:{ "Email": "test2@gmail.com", "Entity_InternalId": "1709", "Item_InternalId": "945" }
- Cliquez sur entityId, puis saisissez
1086949
dans le champ Default Value (Valeur par défaut).Si l'intégration aboutit, le champ
connectorOutputPayload
de votre tâche de connecteur aura une valeur semblable à celle-ci:[{ "InternalId": "1086949" }]
Utiliser Terraform pour créer des connexions
Vous pouvez utiliser la ressource Terraform pour créer une connexion.Pour savoir comment appliquer ou supprimer une configuration Terraform, consultez la page Commandes Terraform de base.
Pour voir un exemple de modèle Terraform pour créer des connexions, consultez cet exemple de modèle.
Lorsque vous créez cette connexion à l'aide de Terraform, vous devez définir les variables suivantes dans votre fichier de configuration Terraform:
Nom du paramètre | Type de données | Requis | Description |
---|---|---|---|
account_id | STRING | Vrai | Compte d'entreprise auquel votre nom d'utilisateur est associé sur NetSuite. |
aggregate_column_mode | STRING | Faux | Indiquer comment traiter les colonnes agrégées. |
application_id | STRING | Faux | Depuis la version 2020.1, les requêtes envoyées à NetSuite nécessitent un ID application. |
custom_field_permissions | STRING | Faux | Liste d'autorisations de champs personnalisés séparées par une virgule. Offre plus de contrôle qu'IncludeCustomFieldColumns . |
include_child_tables | VALEUR BOOLÉENNE | Faux | Booléen indiquant si les tables enfants doivent être affichées. |
include_custom_field_columns | VALEUR BOOLÉENNE | Faux | Booléen indiquant si vous souhaitez inclure des colonnes de champs personnalisés. |
include_custom_list_tables | VALEUR BOOLÉENNE | Faux | Booléen indiquant si vous souhaitez utiliser des tableaux basés sur des listes personnalisées. |
include_custom_record_tables | VALEUR BOOLÉENNE | Faux | Booléen indiquant si vous souhaitez utiliser des tables basées sur des types d'enregistrements personnalisés. |
include_reference_columns | STRING | Faux | Liste séparée par des virgules représentant les colonnes à inclure lors de la récupération des données d'un champ représentant une référence d'enregistrement. |
maximum_concurrent_sessions | INTEGER | Faux | Nombre maximal de sessions simultanées disponibles pour la connexion. |
net_suite_date_format | STRING | Faux | Le format de date à utiliser dans l'interface utilisateur de NetSuite |
net_suite_long_date_format | STRING | Faux | Format de date longue à utiliser dans l'interface utilisateur de NetSuite. |
netsuite_metadata_folder | STRING | Faux | Chemin d'accès à un répertoire permettant de télécharger des fichiers de métadonnées à partir de NetSuite. Définissez ce paramètre pour optimiser les performances. |
report_doubles_as_decimal | VALEUR BOOLÉENNE | Faux | Indique si les doubles doivent être indiqués sous forme de nombre décimal. |
request_memorized_transactions | VALEUR BOOLÉENNE | Faux | Booléen indiquant si vous souhaitez demander des transactions mémorisées lors de la récupération de transactions depuis NetSuite. |
role_id | STRING | Faux | Le paramètre "RoleId" est l'InternalId du rôle qui sera utilisé pour se connecter à NetSuite. Laissez le champ vide pour utiliser le rôle par défaut de l'utilisateur. |
schema | STRING | Vrai | Type de schéma à utiliser. |
use_async_services | VALEUR BOOLÉENNE | Faux | Booléen indiquant si vous souhaitez utiliser des services asynchrones lors de l'insertion, de la mise à jour et de la suppression. |
use_internal_names_for_customizations | VALEUR BOOLÉENNE | Faux | Booléen indiquant si vous souhaitez utiliser des noms internes pour les personnalisations. |
use_upserts | VALEUR BOOLÉENNE | Faux | Booléen indiquant si vous souhaitez effectuer un upsert lors d'une opération d'insertion. |
user_timezone_offset | STRING | Faux | Décalage horaire de l'utilisateur tel que défini dans vos préférences NetSuite, sous Accueil > Préférences > Fuseau horaire. Ex. : EST. |
row_scan_depth | STRING | Faux | Nombre de lignes à analyser lors de la détermination dynamique des colonnes de la table. |
verbosité | STRING | Faux | Niveau de verbosité de la connexion, compris entre 1 et 5. Un niveau de verbosité plus élevé consignera tous les détails des communications (certificats de requête,de réponse et SSL). |
proxy_enabled | VALEUR BOOLÉENNE | Faux | Cochez cette case afin de configurer un serveur proxy pour la connexion. |
proxy_auth_scheme | ENUM | Faux | Type d'authentification à utiliser pour s'authentifier auprès du proxy ProxyServer. Les valeurs acceptées sont BASIC, DIGEST et NONE. |
proxy_user | STRING | Faux | Nom d'utilisateur à utiliser pour s'authentifier auprès du proxy ProxyServer. |
proxy_password | SECRET | Faux | Mot de passe à utiliser pour s'authentifier auprès du proxy ProxyServer. |
proxy_ssltype | ENUM | Faux | Type SSL à utiliser lors de la connexion au proxy ProxyServer. Les valeurs acceptées sont AUTO, ALWAYS, NEVER et TUNNEL. |
Utiliser la connexion NetSuite dans une intégration
Une fois la connexion créée, elle devient disponible dans Apigee Integration et Application Integration. Vous pouvez utiliser la connexion dans une intégration via la tâche "Connecteurs".
- Pour découvrir comment créer et utiliser la tâche "Connecteurs" dans Apigee Integration, consultez la page Tâche Connecteurs.
- Pour découvrir comment créer et utiliser la tâche "Connecteurs" dans Application Integration, consultez la section Tâche Connecteurs.
Obtenir de l'aide auprès de la communauté Google Cloud
Vous pouvez publier vos questions et discuter de ce connecteur sur les forums Cloud de la communauté Google Cloud.Étapes suivantes
- Découvrez comment suspendre et réactiver une connexion.
- Découvrez comment surveiller l'utilisation des connecteurs.
- Découvrez comment afficher les journaux d'un connecteur.