Documentation API – Supplier

Supplier Endpoint

Gérez les fournisseurs à travers différents systèmes ERP avec une API REST unifiée.
Créez, lisez et mettez à jour les fournisseurs pour Acomba, QuickBooks Online, Avantage, Sage 50 et autres systèmes ERP.

GET/Entity/Supplier
POST/Entity/Supplier
PUT/Entity/Supplier

Aperçu

L’entité Supplier représente un fournisseur dans votre système ERP.
Cette API permet d’effectuer des opérations de lecture (GET), création (POST) et mise à jour (PUT) sur les fournisseurs
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/Supplier – Récupérer une liste de fournisseurs
  • GET /Entity/Supplier/{id} – Récupérer un fournisseur spécifique
  • POST /Entity/Supplier – Créer un nouveau fournisseur
  • PUT /Entity/Supplier/{id} – Mettre à jour un fournisseur existant
💡 Note importante

Les champs disponibles et requis varient selon le système ERP. La plupart des systèmes supportent les informations de base du fournisseur comme le nom, l’adresse et les coordonnées.

Matrice de Support

Opérations supportées pour l’entité Supplier par système ERP :

Système ERP GET POST PUT
Acomba ✓ Oui ✓ Oui ✓ Oui
QuickBooks Online ✓ Oui ✓ Oui ✓ Oui
Avantage ✓ Oui ✓ Oui ✗ Non
Sage 50 ✓ Oui ✗ Non ✗ Non
Servex ✗ Non ✗ Non ✗ Non
Servicentre ✗ Non ✗ Non ✗ Non
💡 Note

Sage 50 supporte uniquement la lecture (GET) des fournisseurs. Acomba et QuickBooks Online offrent un support complet pour toutes les opérations. Avantage supporte la création mais pas la mise à jour.

GET Supplier

Récupère une liste de fournisseurs avec support de filtrage, pagination et sélection de champs.

GET/Entity/Supplier

Paramètres de requêtes

Paramètre Type Requis Description
$filter string Optionnel Filtre OData pour filtrer les résultats
$select string Optionnel Sélectionne les champs à retourner
$expand string Optionnel Inclut les entités liées
$orderby string Optionnel Trie les résultats
$top integer Optionnel Nombre maximum de résultats
$skip integer Optionnel Nombre de résultats à sauter
💡 Note importante

Pour plus de détails sur la composition des requêtes, consultez : Composer une requête à l’API d’ERP Connector

Get Supplier
GET /Entity/Supplier
Host: https://v4.api.onlineerp.solution.quebec/api
Content-Type: application/json
Response (200 OK)
[
    {
        "NoUniqueSystemeSource": "0000000000",
        "NoFournisseur": "0000000000",
        "NomFournisseur": "NOUS MEME",
        "FicheNomComplet": "0000000000 - NOUS MEME",
        "Addresse": "",
        "CodePostal": "",
        "Ville": "",
        "Province": "QC",
        "Pays": "CAN",
        "DeviseParDefaut": "",
        "EstActif": true,
        "SiteWeb": "",
        "ListeTelephonique": [
            {
                "Numero": "",
                "TypeTel": 1
            },
            {
                "Numero": "",
                "TypeTel": 3
            },
            {
                "Numero": "",
                "TypeTel": 4
            },
            {
                "Numero": "",
                "TypeTel": 2
            }
        ],
        "ExtendedProperties": {},
        "EmailPrincipal_Adresse": "",
        "EmailPrincipal_EstDepotElectronique": false,
        "EmailPrincipal_EstPublicite": false,
        "Email2_EstDepotElectronique": false,
        "Email2_EstPublicite": false,
        "Email3_EstDepotElectronique": false,
        "Email3_EstPublicite": false
    }
]

POST Supplier (Création)

Crée un nouveau fournisseur dans le système ERP.

POST/Entity/Supplier
💡 Headers recommandés

Utilisez 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 Avantage Description
NoFournisseur string ✓ Required Optional ✓ Required Numéro du fournisseur
NomFournisseur string ✓ Required ✓ Required ✓ Required Nom du fournisseur
Créer un fournisseur
POST /Entity/Supplier
Host: https://v4.api.onlineerp.solution.quebec/api
Content-Type: application/json
If-None-Match: *

{
    "NoFournisseur": "monFourn02",
    "NomFournisseur": "ROZA le Rénovateur", 
    "Addresse": "837 8e Rue",
    "Ville": "Cité du Printemps  (QC)",
    "NomPersonneContact": "Kalid Babouche",
    "CodePostal": "G0G0G0",
    "Pays": "CA", 
    "Langue": "Français",
    "EstActif": true,
    "SiteWeb": "www.rozarenove.com",
    "ListeTelephonique": [
        {
            "Numero": "5142654125",
            "Description": "Téléphone",
            "TypeTel": 1
        },
        {
            "Numero": "5142654126",
            "Description": "Télécopieur",
            "TypeTel": 2
        },
        {
            "TypeTel": 3
        },
        {
            "TypeTel": 4
        }
    ],  
    "TermeDePaiement_No": "2",  
    "NoCompteGLAchat": "8000000", 
    "NoClientLiaison": "458844545",
    "RepresentantNom": "Pierre Michaud",
    "EmailPrincipal_Adresse": "kalidebabouche@info.net",
    "EmailPrincipal_EstDepotElectronique": false, 
    "EmailPrincipal_EstPublicite": false,
    "Email2_Adresse": null,
    "Email2_EstDepotElectronique": false,
    "Email2_EstPublicite": false,
    "Email3_Adresse": null,
    "Email3_EstDepotElectronique": false,
    "Email3_EstPublicite": false,
    "ComptePayable": "0",
    "CompteRecevableNo": "0"
}
Response (201 Created)
{
    "NoFournisseur": "monFourn02",
    "NomFournisseur": "ROZA le Rénovateur", 
    "Addresse": "837 8e Rue",
    "Ville": "Cité du Printemps  (QC)",
    "NomPersonneContact": "Kalid Babouche",
    "CodePostal": "G0G0G0",
    "Pays": "CA", 
    "Langue": "Français",
    "EstActif": true,
    "SiteWeb": "www.rozarenove.com",
    "ListeTelephonique": [
        {
            "Numero": "5142654125",
            "Description": "Téléphone",
            "TypeTel": 1
        },
        {
            "Numero": "5142654126",
            "Description": "Télécopieur",
            "TypeTel": 2
        },
        {
            "TypeTel": 3
        },
        {
            "TypeTel": 4
        }
    ],  
    "TermeDePaiement_No": "2",  
    "NoCompteGLAchat": "8000000", 
    "NoClientLiaison": "458844545",
    "RepresentantNom": "Pierre Michaud",
    "EmailPrincipal_Adresse": "kalidebabouche@info.net",
    "EmailPrincipal_EstDepotElectronique": false, 
    "EmailPrincipal_EstPublicite": false,
    "Email2_Adresse": null,
    "Email2_EstDepotElectronique": false,
    "Email2_EstPublicite": false,
    "Email3_Adresse": null,
    "Email3_EstDepotElectronique": false,
    "Email3_EstPublicite": false,
    "ComptePayable": "0",
    "CompteRecevableNo": "0"
}
⚠️ Important

Pour Acomba et Avantage, le NoFournisseur est obligatoire. Pour QuickBooks, il est généré automatiquement si non fourni. Le système retourne toujours le NoUniqueSystemeSource qui est la clé interne de l’ERP.

PUT Supplier (Mise à jour)

Met à jour un fournisseur existant dans le système ERP.

PUT/Entity/Supplier/{id}
💡 Headers recommandés

Utilisez le header If-Match: * pour garantir que la mise à jour échouera si l’entité n’existe pas déjà.

⚠️ Support limité

La mise à jour (PUT) n’est supportée que pour Acomba et QuickBooks Online. Avantage, Sage 50, Servex et Servicentre ne supportent pas cette opération.

Mettre à jour un fournisseur
PUT /Entity/Supplier/monFourn02
Host: https://v4.api.onlineerp.solution.quebec/api
Content-Type: application/json
If-Match: *

{
    "NoFournisseur": "monFourn02",
    "NomFournisseur": "ROZA le Rénovateur", 
    "Addresse": "837 8e Rue",
    "Ville": "Cité du Printemps  (QC)",
    "NomPersonneContact": "Kalid Babouche",
    "CodePostal": "G0G0G0",
    "Pays": "CA", 
    "Langue": "Français",
    "EstActif": true,
    "SiteWeb": "www.rozarenove.com",
    "ListeTelephonique": [
        {
            "Numero": "5142654125",
            "Description": "Téléphone",
            "TypeTel": 1
        },
        {
            "Numero": "5142654126",
            "Description": "Télécopieur",
            "TypeTel": 2
        },
        {
            "TypeTel": 3
        },
        {
            "TypeTel": 4
        }
    ],  
    "TermeDePaiement_No": "2",  
    "NoCompteGLAchat": "8000000", 
    "NoClientLiaison": "458844545",
    "RepresentantNom": "Pierre Michaud",
    "EmailPrincipal_Adresse": "kalidebabouche@info.net",
    "EmailPrincipal_EstDepotElectronique": false, 
    "EmailPrincipal_EstPublicite": false,
    "Email2_Adresse": null,
    "Email2_EstDepotElectronique": false,
    "Email2_EstPublicite": false,
    "Email3_Adresse": null,
    "Email3_EstDepotElectronique": false,
    "Email3_EstPublicite": false,
    "ComptePayable": "0",
    "CompteRecevableNo": "0"
}
Response (200 OK)
{
    "NoFournisseur": "monFourn02",
    "NomFournisseur": "ROZA le Rénovateur", 
    "Addresse": "837 8e Rue",
    "Ville": "Cité du Printemps  (QC)",
    "NomPersonneContact": "Kalid Babouche",
    "CodePostal": "G0G0G0",
    "Pays": "CA", 
    "Langue": "Français",
    "EstActif": true,
    "SiteWeb": "www.rozarenove.com",
    "ListeTelephonique": [
        {
            "Numero": "5142654125",
            "Description": "Téléphone",
            "TypeTel": 1
        },
        {
            "Numero": "5142654126",
            "Description": "Télécopieur",
            "TypeTel": 2
        },
        {
            "TypeTel": 3
        },
        {
            "TypeTel": 4
        }
    ],  
    "TermeDePaiement_No": "2",  
    "NoCompteGLAchat": "8000000", 
    "NoClientLiaison": "458844545",
    "RepresentantNom": "Pierre Michaud",
    "EmailPrincipal_Adresse": "kalidebabouche@info.net",
    "EmailPrincipal_EstDepotElectronique": false, 
    "EmailPrincipal_EstPublicite": false,
    "Email2_Adresse": null,
    "Email2_EstDepotElectronique": false,
    "Email2_EstPublicite": false,
    "Email3_Adresse": null,
    "Email3_EstDepotElectronique": false,
    "Email3_EstPublicite": false,
    "ComptePayable": "0",
    "CompteRecevableNo": "0"
}
💡 Mise à jour partielle

Vous pouvez envoyer seulement les champs que vous souhaitez modifier. Les champs non fournis conserveront leur valeur actuelle dans l’ERP.

Propriétés détaillées de Supplier

Identification

Propriété Type Description
NoFournisseur string Numéro du fournisseur (clé business)
NoUniqueSystemeSource string Clé unique interne de l’ERP
NomFournisseur string Nom du fournisseur
FicheNomComplet string (readonly) Format: “{NoFournisseur} – {NomFournisseur}”
EstActif bool Indique si le fournisseur est actif (par défaut: true)

Adresse et coordonnées

Propriété Type Description
Addresse string Adresse du fournisseur
Ville string Ville
Province string Province/État
CodePostal string Code postal
Pays string Pays
MRC string MRC (Municipalité régionale de comté)

Contact et communication

Propriété Type Description
NomPersonneContact string Nom de la personne contact
SiteWeb string Site web du fournisseur
ListeTelephonique List<FicheTelephonique> Liste des numéros de téléphone
EmailPrincipal_Adresse string Adresse courriel principale
EmailPrincipal_Desc string Description du courriel principal
EmailPrincipal_EstDepotElectronique bool Dépôt électronique activé
EmailPrincipal_EstPublicite bool Accepte la publicité
Email2_Adresse string Adresse courriel secondaire
Email2_Desc string Description du courriel secondaire
Email2_EstDepotElectronique bool Dépôt électronique activé
Email2_EstPublicite bool Accepte la publicité
Email3_Adresse string Adresse courriel tertiaire
Email3_Desc string Description du courriel tertiaire
Email3_EstDepotElectronique bool Dépôt électronique activé
Email3_EstPublicite bool Accepte la publicité

Représentant

Propriété Type Description
RepresentantNom string Nom du représentant
RepresentantEmail string Courriel du représentant
RepresentantTelephone string Téléphone du représentant
RepresentantTelephoneExt string Extension téléphonique du représentant

Comptabilité et taxes

Propriété Type Description
ComptePayable string Compte payable (Acomba)
CompteRecevableNo string Compte recevable (Acomba)
NoEnregistrementTaxeFederale string Numéro d’enregistrement TPS (Avantage)
NoEnregistrementTaxeProvinciale string Numéro d’enregistrement TVQ (Avantage)
NoCompteGLAchat string Numéro de compte GL d’achat
NoCompteGLAchat_NoUniqueSystemeSource string ID interne du compte GL d’achat
ExpenseAccountNumber string Compte de dépense par défaut (Avantage)
ExpenseAccountErpInternalId string ID interne du compte de dépense

Relations et paiement

Propriété Type Description
FournisseurPayerA_No string Fournisseur à payer (si différent)
FournisseurPayerA_NoUniqueSystemeSource string ID interne du fournisseur à payer
NoClientLiaison string Client de liaison associé
TermeDePaiement_No string Terme de paiement
TermeDePaiement_NoUniqueSystemeSource string ID interne du terme de paiement

Projet et informations diverses

Propriété Type Description
Projet_No string Numéro de projet associé
Projet_NoUniqueSystemeSource string ID interne du projet
Langue string Langue du fournisseur
DeviseParDefaut string Devise par défaut
InternalNotes string Notes internes
Fiche_DerniereModification DateTime? Date de dernière modification
ExtendedProperties Dictionary<string, object> Propriétés étendues personnalisées
💡 ExtendedProperties

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.