Conexio vitrine du développeur

API QuickBooks Online — factures fournisseurs

Lire, créer et modifier les factures fournisseurs de QuickBooks Online depuis votre application, par une simple requête HTTP : pas de SDK, pas d’ODBC. Conexio relaie l’appel vers QuickBooks Online et vous répond en JSON — entité SupplierInvoice.

✓ Lire (GET)✓ Créer (POST)✓ Modifier (PUT)

Lire les factures fournisseurs

Une requête GET sur /api/Entity/SupplierInvoice, avec les modificateurs $select, $filter et $top. L’en-tête ALLOW_PAGINATION renvoie { Data, ResultsCount, TotalCount }.

HTTP
GET https://gateway.conexio.dev/api/Entity/SupplierInvoice?$select=NoFacture,DateFacture,TotalFacture,NoteGlobaleExterne01,TermeDePaiement.NomTermeDePaiement&$filter=DateFacture ge '2026-01-01'&$top=10
Authorization: Basic base64(CODE_LICENCE:CLE_API)
COMPANY_CODE: VOTRE_COMPAGNIE
ALLOW_PAGINATION: true
curl
curl 'https://gateway.conexio.dev/api/Entity/SupplierInvoice?$select=NoFacture,DateFacture,TotalFacture,NoteGlobaleExterne01,TermeDePaiement.NomTermeDePaiement&$filter=DateFacture%20ge%20'2026-01-01'&$top=10' \
  -u "$CONEXIO_LICENCE:$CONEXIO_API_KEY" \
  -H 'COMPANY_CODE: VOTRE_COMPAGNIE' \
  -H 'ALLOW_PAGINATION: true'
JavaScript (fetch)
const response = await fetch("https://gateway.conexio.dev/api/Entity/SupplierInvoice?$select=NoFacture,DateFacture,TotalFacture,NoteGlobaleExterne01,TermeDePaiement.NomTermeDePaiement&$filter=DateFacture%20ge%20'2026-01-01'&$top=10", {
  headers: {
    Authorization: "Basic " + btoa(`${CODE_LICENCE}:${CLE_API}`),
    COMPANY_CODE: "VOTRE_COMPAGNIE",
    ALLOW_PAGINATION: "true",
  },
})
const { Data, TotalCount } = await response.json()
C# et Python
C# (HttpClient)
var http = new HttpClient();
var request = new HttpRequestMessage(HttpMethod.Get, "https://gateway.conexio.dev/api/Entity/SupplierInvoice?$select=NoFacture,DateFacture,TotalFacture,NoteGlobaleExterne01,TermeDePaiement.NomTermeDePaiement&$filter=DateFacture%20ge%20'2026-01-01'&$top=10");
request.Headers.Authorization = new AuthenticationHeaderValue("Basic",
    Convert.ToBase64String(Encoding.UTF8.GetBytes($"{codeLicence}:{cleApi}")));
request.Headers.Add("COMPANY_CODE", "VOTRE_COMPAGNIE");
request.Headers.Add("ALLOW_PAGINATION", "true");
var json = await (await http.SendAsync(request)).Content.ReadAsStringAsync();
Python (requests)
import requests

response = requests.get(
    "https://gateway.conexio.dev/api/Entity/SupplierInvoice?$select=NoFacture,DateFacture,TotalFacture,NoteGlobaleExterne01,TermeDePaiement.NomTermeDePaiement&$filter=DateFacture%20ge%20'2026-01-01'&$top=10",
    auth=(CODE_LICENCE, CLE_API),
    headers={"COMPANY_CODE": "VOTRE_COMPAGNIE", "ALLOW_PAGINATION": "true"},
)
data = response.json()["Data"]

Filtrer

Les champs filtrables de SupplierInvoice sur QuickBooks Online, et leurs opérateurs $filter :

ChampOpérateurs
NoUniqueSystemeSourceeq ne
NoFactureeq ne
Référenceeq ne
DateFactureeq ne gt ge lt le
TotalFactureeq ne gt ge lt le

Créer des factures fournisseurs

Un POST sur la même adresse, avec l’élément en JSON :

HTTP
POST https://gateway.conexio.dev/api/Entity/SupplierInvoice
Authorization: Basic base64(CODE_LICENCE:CLE_API)
COMPANY_CODE: VOTRE_COMPAGNIE
Content-Type: application/json

{
  "NoFacture": "VALEUR",
  "DateFacture": "2026-01-01",
  "NoteGlobaleExterne01": "VALEUR"
}

Les champs

ChampLireCréerModifier
NoUniqueSystemeSource✓—✓
NoFacture✓✓✓
Référence✓——
DateFacture✓✓✓
TotalFacture✓——
NoteGlobaleExterne01✓✓✓
Devise✓✓✓
TermeDePaiement.NomTermeDePaiement✓✓✓
TermeDePaiement.TypeTerme✓✓✓
TermeDePaiement.NoTermeDePaiement_NoUniqueSystemeSource✓——
TermePaiement✓——
CompteRecevable_No—✓✓
InfoClientFacturerA.NoClient✓✓✓
InfoClientFacturerA.Adresse✓✓✓
InfoClientFacturerA.Ville✓✓✓
InfoClientFacturerA.CodePostal✓✓✓
InfoClientFacturerA.Province✓✓✓
InfoClientFacturerA.Pays✓✓✓
LigneFacture[].NoCompteGL✓✓✓
LigneFacture[].NoCompteGL_NoUniqueSystemeSource✓——
LigneFacture[].PrixFinal✓✓✓
LigneFacture[].DescriptionLigne✓✓✓

Les mêmes factures fournisseurs, dans les autres logiciels

Même requête, même JSON : seule la compagnie change.

Pour aller plus loin