Customer Endpoint
Gérez les clients à travers différents systèmes ERP avec une API REST unifiée.
Créez, lisez et mettez à jour les informations clients pour Acomba, QuickBooks Online et autre système ERP.
/Entity/Customer/Entity/Customer/Entity/Customer/{id}Aperçu
L’entité Customer représente un client dans votre système ERP.
Cette API permet d’effectuer des opérations CRUD (Create, Read, Update) sur les clients
de manière standardisée, peu importe le système ERP sous-jacent.
L’API utilise des endpoints REST standards avec les méthodes HTTP appropriées :
GET /Entity/Customer– Récupérer une liste de clientsGET /Entity/Customer/{id}– Récupérer un client spécifiquePOST /Entity/Customer– Créer un nouveau clientPUT /Entity/Customer/{id}– Mettre à jour un client existant
Les champs disponibles et requis varient selon le système ERP. Consultez la matrice de support ci-dessous pour connaître les opérations supportées.
Matrice de Support
Opérations CRUD supportées pour l’entité Customer par système ERP :
| Système ERP | GET | POST | PUT |
|---|---|---|---|
| Acomba | ✓ Oui | ✓ Oui | ✓ Oui |
| QuickBooks Online | ✓ Oui | ✓ Oui | ✓ Oui |
| Avantage | ✓ Oui | ✗ Non | ✗ Non |
| Sage 50 | ✗ Non | ✗ Non | ✗ Non |
| Servex | ✗ Non | ✗ Non | ✗ Non |
| Servicentre | ✗ Non | ✗ Non | ✗ Non |
L’entité Customer n’est pas supportée pour Sage 50, Servex et Servicentre.
GET Customer
Récupère une liste de clients avec support de filtrage, pagination et sélection de champs.
/Entity/CustomerParamètres de requêtes
| Paramètre | Type | Requis | Description |
|---|---|---|---|
| $filter | string | Optionnel | Expression de filtrage de style OData |
| $select | string | Optionnel | Champs à retourner (séparés par des virgules) |
| $expand | string | Optionnel | Champs à épandre |
| $orderby | string | Optionnel | Permet de trier les résultats |
| $top | integer | Optionnel | Nombre maximum de résultats |
| $skip | integer | Optionnel | Nombre de résultats à ignorer (pagination) |
Pour plus de détails, veuillez consulter cet article : Composer une requête à l’API d’ERP Connector
GET /Entity/Customer Host: https://v4.api.onlineerp.solution.quebec/api Content-Type: application/json
[
{
"NomClient": "Ventes au comptoir",
"NoClient": "0Comptoir",
"FicheNomComplet": "0Comptoir - Ventes au comptoir",
"FicheChampsRecherche": "0Comptoir Ventes au comptoir Comptoir",
"NoUniqueSystemeSource": "1",
"ClientFacturation_NoUniqueSystemeSource": "0",
"CleTri1": "Comptoir",
"Pays": "CA",
"DateOuvertureDossier": "2004-01-01T00:00:00",
"NoVendeur": "9999",
"NoVendeur_NoUniqueSystemSource": "1",
"Territoire": "9999",
"Territoire_NoUniqueSystemeSource": "1",
"NoModeExpeditionDefaut": "0",
"NoModeExpeditionDefaut_NoUniqueSystemeSource": "0",
"LangueClient": "12",
"EmailPrincipal_EstEtatDeCompte": false,
"EmailPrincipal_EstEmailFacturation": false,
"EmailPrincipal_EstPublicite": false,
"Email2_EstEtatDeCompte": false,
"Email2_EstEmailFacturation": false,
"Email2_EstPublicite": false,
"Email3_EstEtatDeCompte": false,
"Email3_EstEmailFacturation": false,
"Email3_EstPublicite": false,
"Bool_ClientComptoir": true,
"EstActif": true,
"Fiche_DerniereModification": "2024-05-14T06:50:24",
"MargeCredit_MontantMarge": 0,
"MargeCredit_TypeMarge": 0,
"CompteRecevable_No": "0",
"NoGroupeTaxe": "TPS & TVQ",
"NoGroupeTaxe_NoUniqueSystemeSource": "2",
"PPA_Actif": false,
"Projet_NoUniqueSystemeSource": "0",
"ExtendedProperties": {},
"InfoAgeDesComptes": {
"NbJoursCycle": 0,
"NBCycle": 5,
"DateReference": "2099-01-01T00:00:00",
"DateCalcul": "1900-01-01T00:00:00",
"MontantDu_Cycle1_Courant": 0,
"MontantDu_Cycle2": 0,
"MontantDu_Cycle3": 0,
"MontantDu_Cycle4": 0,
"MontantDu_Cycle5": 0,
"MontantDu_Cycle6": 0,
"MontantDu_Cycle7": 0,
"MontantDu_Cycle8": 0,
"MontantDu_Cycle9": 0,
"MontantDu_Cycle10": 0,
"MontantDu_Cycle11": 0,
"MontantDu_Cycle12": 0,
"MontantDu_Total": 0,
"ListeFactureNonReglee": []
},
"NiveauPrixClient": 0,
"TermeDePaiement_No": "0",
"TermeDePaiement_NoUniqueSystemeSource": "0",
"ListeTelephonique": [
{
"TypeTel": 1
},
{
"TypeTel": 2
},
{
"TypeTel": 3
},
{
"TypeTel": 4
}
],
"Telephone_Principal": {
"TypeTel": 1
},
"Telephone_Telecopieur": {
"TypeTel": 2
},
"Telephone_3": {
"TypeTel": 3
},
"Telephone_4": {
"TypeTel": 4
},
"ListeTaxeException": []
}
]
POST Customer (Création)
Crée un nouveau client dans le système ERP. Le client ne doit pas déjà exister.
/Entity/CustomerUtilisez le header If-None-Match: * pour garantir que la création échouera si l’entité existe déjà.
Champs requis par ERP
| Champ | Type | Acomba | QuickBooks |
|---|---|---|---|
| NoClient | string | ✓ Required | Optional |
| NomClient | string | ✓ Required | ✓ Required |
POST /Entity/Customer
Host: https://v4.api.onlineerp.solution.quebec/api
Content-Type: application/json
If-None-Match: *
{
"NomClient": "Ventes au comptoir",
"NoClient": "0Comptoir3",
"FicheNomComplet": "0Comptoir - Ventes au comptoir",
"FicheChampsRecherche": "0Comptoir Ventes au comptoir Comptoir",
"ClientFacturation_NoUniqueSystemeSource": "0",
"CleTri1": "Comptoir",
"DateOuvertureDossier": "2004-01-01T00:00:00",
"NoVendeur": "9999",
"NoVendeur_NoUniqueSystemSource": "1",
"Territoire": "9999",
"Territoire_NoUniqueSystemeSource": "1",
"NoModeExpeditionDefaut": "0",
"NoModeExpeditionDefaut_NoUniqueSystemeSource": "0",
"LangueClient": "12",
"EmailPrincipal_EstEtatDeCompte": false,
"EmailPrincipal_EstEmailFacturation": false,
"EmailPrincipal_EstPublicite": false,
"Email2_EstEtatDeCompte": false,
"Email2_EstEmailFacturation": false,
"Email2_EstPublicite": false,
"Email3_EstEtatDeCompte": false,
"Email3_EstEmailFacturation": false,
"Email3_EstPublicite": false,
"Bool_ClientComptoir": true,
"EstActif": true,
"Fiche_DerniereModification": "2006-03-23T11:52:04",
"MargeCredit_MontantMarge": 0.0,
"MargeCredit_TypeMarge": 0,
"CompteRecevable_No": "0",
"NoGroupeTaxe": "TPS & TVQ",
"NoGroupeTaxe_NoUniqueSystemeSource": "2",
"PPA_Actif": false,
"Projet_NoUniqueSystemeSource": "0",
"NiveauPrixClient": 0,
"TermeDePaiement_No": "0",
"TermeDePaiement_NoUniqueSystemeSource": "0"
}
{
"NoClient": "0Comptoir3",
"NomClient": "Ventes au comptoir",
"FicheNomComplet": "0Comptoir3 - Ventes au comptoir",
"FicheChampsRecherche": "0Comptoir3 Ventes au comptoir Comptoir",
"NoUniqueSystemeSource": "29",
"ClientFacturation_NoUniqueSystemeSource": "0",
"CleTri1": "Comptoir",
"DateOuvertureDossier": "2004-01-01T00:00:00",
"NoVendeur": "9999",
"NoVendeur_NoUniqueSystemSource": "1",
"Territoire": "9999",
"Territoire_NoUniqueSystemeSource": "1",
"NoModeExpeditionDefaut": "0",
"NoModeExpeditionDefaut_NoUniqueSystemeSource": "0",
"LangueClient": "12",
"EmailPrincipal_EstEtatDeCompte": false,
"EmailPrincipal_EstEmailFacturation": false,
"EmailPrincipal_EstPublicite": false,
"Email2_EstEtatDeCompte": false,
"Email2_EstEmailFacturation": false,
"Email2_EstPublicite": false,
"Email3_EstEtatDeCompte": false,
"Email3_EstEmailFacturation": false,
"Email3_EstPublicite": false,
"Bool_ClientComptoir": true,
"EstActif": true,
"Fiche_DerniereModification": "2006-03-23T11:52:04",
"MargeCredit_MontantMarge": 0,
"MargeCredit_TypeMarge": 0,
"CompteRecevable_No": "0",
"NoGroupeTaxe": "TPS & TVQ",
"NoGroupeTaxe_NoUniqueSystemeSource": "2",
"PPA_Actif": false,
"Projet_NoUniqueSystemeSource": "0",
"DateRefference1": "1899-12-30T00:00:00",
"DateRefference2": "1899-12-30T00:00:00",
"ExtendedProperties": {},
"InfoAgeDesComptes": {
"NbJoursCycle": 0,
"NBCycle": 5,
"DateReference": "2099-01-01T00:00:00",
"DateCalcul": "1900-01-01T00:00:00",
"MontantDu_Cycle1_Courant": 0,
"MontantDu_Cycle2": 0,
"MontantDu_Cycle3": 0,
"MontantDu_Cycle4": 0,
"MontantDu_Cycle5": 0,
"MontantDu_Cycle6": 0,
"MontantDu_Cycle7": 0,
"MontantDu_Cycle8": 0,
"MontantDu_Cycle9": 0,
"MontantDu_Cycle10": 0,
"MontantDu_Cycle11": 0,
"MontantDu_Cycle12": 0,
"MontantDu_Total": 0,
"ListeFactureNonReglee": []
},
"NiveauPrixClient": 0,
"TermeDePaiement_No": "0",
"TermeDePaiement_NoUniqueSystemeSource": "0",
"ListeTelephonique": [],
"Telephone_Principal": {
"TypeTel": 0
},
"Telephone_Telecopieur": {
"TypeTel": 0
},
"Telephone_3": {
"TypeTel": 0
},
"Telephone_4": {
"TypeTel": 0
},
"ListeTaxeException": [],
"CommentairesClients": ""
}
Pour Acomba, le NoClient est obligatoire et doit être unique. Pour QuickBooks Online, le système génère automatiquement un ID si non fourni.
PUT Customer (Update)
Met à jour un client existant. Supporte la mise à jour partielle – seuls les champs fournis sont modifiés.
/Entity/Customer/{id}Utilisez le header If-Match: * pour garantir que la mise à jour échouera si l’entité n’existe pas.
Paramètres de l’URI
| Paramètre | Type | Requis | Description |
|---|---|---|---|
| {id} | string | ✓ Required | Le numéro du client (NoClient) |
PUT /Entity/Customer/0Comptoir2
Host: https://v4.api.onlineerp.solution.quebec/api
Content-Type: application/json
If-Match: *
{
"NomClient": "Ventes au comptoir new2",
"NoClient": "0Comptoir2",
"FicheNomComplet": "0Comptoir - Ventes au comptoir",
"FicheChampsRecherche": "0Comptoir Ventes au comptoir Comptoir",
"ClientFacturation_NoUniqueSystemeSource": "0",
"CleTri1": "Comptoir",
"DateOuvertureDossier": "2004-01-01T00:00:00",
"NoVendeur": "9999",
"NoVendeur_NoUniqueSystemSource": "1",
"Territoire": "9999",
"Territoire_NoUniqueSystemeSource": "1",
"NoModeExpeditionDefaut": "0",
"NoModeExpeditionDefaut_NoUniqueSystemeSource": "0",
"LangueClient": "12",
"EmailPrincipal_EstEtatDeCompte": false,
"EmailPrincipal_EstEmailFacturation": false,
"EmailPrincipal_EstPublicite": false,
"Email2_EstEtatDeCompte": false,
"Email2_EstEmailFacturation": false,
"Email2_EstPublicite": false,
"Email3_EstEtatDeCompte": false,
"Email3_EstEmailFacturation": false,
"Email3_EstPublicite": false,
"Bool_ClientComptoir": true,
"EstActif": true,
"Fiche_DerniereModification": "2006-03-23T11:52:04",
"MargeCredit_MontantMarge": 0.0,
"MargeCredit_TypeMarge": 0,
"CompteRecevable_No": "0",
"NoGroupeTaxe": "TPS & TVQ",
"NoGroupeTaxe_NoUniqueSystemeSource": "2",
"PPA_Actif": false,
"Projet_NoUniqueSystemeSource": "0",
"NiveauPrixClient": 0,
"TermeDePaiement_No": "0",
"TermeDePaiement_NoUniqueSystemeSource": "0"
}
{
"NoClient": "0Comptoir2",
"NomClient": "Ventes au comptoir new2",
"FicheNomComplet": "0Comptoir2 - Ventes au comptoir new2",
"FicheChampsRecherche": "0Comptoir2 Ventes au comptoir new2 Comptoir",
"NoUniqueSystemeSource": "28",
"ClientFacturation_NoUniqueSystemeSource": "0",
"CleTri1": "Comptoir",
"DateOuvertureDossier": "2004-01-01T00:00:00",
"NoVendeur": "9999",
"NoVendeur_NoUniqueSystemSource": "1",
"Territoire": "9999",
"Territoire_NoUniqueSystemeSource": "1",
"NoModeExpeditionDefaut": "0",
"NoModeExpeditionDefaut_NoUniqueSystemeSource": "0",
"LangueClient": "12",
"EmailPrincipal_EstEtatDeCompte": false,
"EmailPrincipal_EstEmailFacturation": false,
"EmailPrincipal_EstPublicite": false,
"Email2_EstEtatDeCompte": false,
"Email2_EstEmailFacturation": false,
"Email2_EstPublicite": false,
"Email3_EstEtatDeCompte": false,
"Email3_EstEmailFacturation": false,
"Email3_EstPublicite": false,
"Bool_ClientComptoir": true,
"EstActif": true,
"Fiche_DerniereModification": "2006-03-23T11:52:04",
"MargeCredit_MontantMarge": 0,
"MargeCredit_TypeMarge": 0,
"CompteRecevable_No": "0",
"NoGroupeTaxe": "TPS & TVQ",
"NoGroupeTaxe_NoUniqueSystemeSource": "2",
"PPA_Actif": false,
"Projet_NoUniqueSystemeSource": "0",
"DateRefference1": "1899-12-30T00:00:00",
"DateRefference2": "1899-12-30T00:00:00",
"ExtendedProperties": {},
"InfoAgeDesComptes": {
"NbJoursCycle": 0,
"NBCycle": 5,
"DateReference": "2099-01-01T00:00:00",
"DateCalcul": "1900-01-01T00:00:00",
"MontantDu_Cycle1_Courant": 0,
"MontantDu_Cycle2": 0,
"MontantDu_Cycle3": 0,
"MontantDu_Cycle4": 0,
"MontantDu_Cycle5": 0,
"MontantDu_Cycle6": 0,
"MontantDu_Cycle7": 0,
"MontantDu_Cycle8": 0,
"MontantDu_Cycle9": 0,
"MontantDu_Cycle10": 0,
"MontantDu_Cycle11": 0,
"MontantDu_Cycle12": 0,
"MontantDu_Total": 0,
"ListeFactureNonReglee": []
},
"NiveauPrixClient": 0,
"TermeDePaiement_No": "0",
"TermeDePaiement_NoUniqueSystemeSource": "0",
"ListeTelephonique": [],
"Telephone_Principal": {
"TypeTel": 0
},
"Telephone_Telecopieur": {
"TypeTel": 0
},
"Telephone_3": {
"TypeTel": 0
},
"Telephone_4": {
"TypeTel": 0
},
"ListeTaxeException": [],
"CommentairesClients": ""
}
Vous n’avez pas besoin d’envoyer tous les champs. Seuls les champs fournis seront modifiés, les autres conserveront leurs valeurs existantes.
Propriétés détaillées de Customer
Identification
| Propriété | Type | Description |
|---|---|---|
| NoClient | string | Numéro du client (clé business) |
| NoUniqueSystemeSource | string | Clé unique interne de l’ERP |
| NomClient | string | Nom du client |
| FicheNomComplet | string (readonly) | Format: “{NoClient} – {NomClient}” |
| EstActif | bool | Indique si le client est actif |
| Bool_ClientComptoir | bool | Indique si c’est un client comptoir |
Adresse et coordonnées
| Propriété | Type | Description |
|---|---|---|
| DescriptionAdresse | string | Description de l’adresse |
| Adresse | string | Adresse ligne 1 |
| Adresse2 | string | Adresse ligne 2 |
| Ville | string | Ville |
| Province | string | Province/État |
| CodePostal | string | Code postal |
| Pays | string | Pays |
| MRC | string | MRC (Municipalité régionale de comté) |
| CleTri1 | string | Clé de tri personnalisée |
Contact et communication
| Propriété | Type | Description |
|---|---|---|
| NomPersonneContact | string | Nom de la personne contact |
| EmailPrincipal_Adresse | string | Adresse courriel principale |
| EmailPrincipal_Desc | string | Description du courriel principal |
| EmailPrincipal_EstEtatDeCompte | bool | Envoyer les états de compte |
| EmailPrincipal_EstEmailFacturation | bool | Envoyer les factures |
| EmailPrincipal_EstPublicite | bool | Accepte la publicité |
| Email2_Adresse | string | Adresse courriel secondaire |
| Email2_Desc | string | Description du courriel secondaire |
| Email2_EstEtatDeCompte | bool | Envoyer les états de compte |
| Email2_EstEmailFacturation | bool | Envoyer les factures |
| Email2_EstPublicite | bool | Accepte la publicité |
| Email3_Adresse | string | Adresse courriel tertiaire |
| Email3_Desc | string | Description du courriel tertiaire |
| Email3_EstEtatDeCompte | bool | Envoyer les états de compte |
| Email3_EstEmailFacturation | bool | Envoyer les factures |
| Email3_EstPublicite | bool | Accepte la publicité |
| SiteWeb | string | Site web du client |
| ListeTelephonique | List<FicheTelephonique> | Liste des numéros de téléphone |
| Telephone_Principal | FicheTelephonique | Téléphone principal |
| Telephone_Telecopieur | FicheTelephonique | Numéro de télécopieur |
Relations commerciales
| Propriété | Type | Description |
|---|---|---|
| NoVendeur | string | Numéro du vendeur assigné |
| NoVendeur_NoUniqueSystemSource | string | ID interne du vendeur |
| Vendeur_NomComplet | string | Nom complet du vendeur |
| Territoire | string | Code du territoire |
| Territoire_NoUniqueSystemeSource | string | ID interne du territoire |
| Territoire_NomComplet | string | Nom complet du territoire |
| ClientFacturation_No | string | Client de facturation (si différent) |
| ClientFacturation_NoUniqueSystemeSource | string | ID interne du client de facturation |
Expédition et livraison
| Propriété | Type | Description |
|---|---|---|
| NoModeExpeditionDefaut | string | Mode d’expédition par défaut |
| NoModeExpeditionDefaut_NoUniqueSystemeSource | string | ID interne du mode d’expédition |
| InfoLivraisonSpeciale1 | string | Information de livraison spéciale 1 |
| InfoLivraisonSpeciale2 | string | Information de livraison spéciale 2 |
Conditions financières
| Propriété | Type | Description |
|---|---|---|
| TermeDePaiement_No | string | Terme de paiement |
| TermeDePaiement_NoUniqueSystemeSource | string | ID interne du terme de paiement |
| TermeDePaiement_NomComplet | string | Description complète du terme |
| MargeCredit_MontantMarge | decimal | Montant de la marge de crédit |
| MargeCredit_TypeMarge | Client_TypeDeMargeDeCredit? | Type de marge de crédit |
| NiveauPrixClient | Client_NiveauPrixClient | Niveau de prix pour le client |
| InfoAgeDesComptes | AgeDesComptes | Information sur l’âge des comptes |
Taxes et comptabilité
| Propriété | Type | Description |
|---|---|---|
| NoGroupeTaxe | string | Groupe de taxes applicable |
| NoGroupeTaxe_NoUniqueSystemeSource | string | ID interne du groupe de taxes |
| ListeTaxeException | List<FicheTaxe> | Liste des exceptions de taxes |
| CompteRecevable | string | Compte recevable (Acomba) |
| CompteRecevable_No | string | Numéro du compte recevable |
Paiement préautorisé (PPA)
| Propriété | Type | Description |
|---|---|---|
| PPA_Actif | bool | Paiement préautorisé activé |
| PPA_NoInstitution | string | Numéro de l’institution bancaire |
| PPA_NoSuccursale | string | Numéro de la succursale |
| PPA_NoCompte | string | Numéro de compte bancaire |
Projet et références
| Propriété | Type | Description |
|---|---|---|
| Projet_No | string | Numéro de projet associé |
| Projet_NoUniqueSystemeSource | string | ID interne du projet |
| DateRefference1 | DateTime? | Date de référence personnalisée 1 |
| DateRefference2 | DateTime? | Date de référence personnalisée 2 |
| DescriptionDateRefference1 | string | Description de la date de référence 1 |
| DescriptionDateRefference2 | string | Description de la date de référence 2 |
Informations diverses
| Propriété | Type | Description |
|---|---|---|
| DateOuvertureDossier | DateTime? | Date d’ouverture du compte client |
| LangueClient | string | Langue du client |
| CommentairesClients | string | Commentaires sur le client |
| Fiche_DerniereModification | DateTime? | Date de dernière modification |
| ExtendedProperties | Dictionary<string, object> | Propriétés étendues personnalisées |
Le dictionnaire ExtendedProperties permet d’ajouter des attributs personnalisés spécifiques à certains ERP ou besoins d’affaires particuliers sans modifier le modèle de données principal.