API Sage 300 — commandes clients
Lire et créer les commandes clients de Sage 300 depuis votre application, par une simple requête HTTP : pas de SDK, pas d’ODBC. Conexio relaie l’appel vers Sage 300 et vous répond en JSON — entité CustomerOrder.
✓ Lire (GET)✓ Créer (POST)✗ Modifier (PUT)
Lire les commandes clients
Une requête GET sur /api/Entity/CustomerOrder, avec les modificateurs $select, $filter et $top. L’en-tête ALLOW_PAGINATION renvoie { Data, ResultsCount, TotalCount }.
GET https://gateway.conexio.dev/api/Entity/CustomerOrder?$select=NoFacture,DateFacture,Description,NoCommandeRéférence,TotalFacture&$filter=DateFacture ge '2026-01-01'&$top=10
Authorization: Basic base64(CODE_LICENCE:CLE_API)
COMPANY_CODE: VOTRE_COMPAGNIE
ALLOW_PAGINATION: truecurl 'https://gateway.conexio.dev/api/Entity/CustomerOrder?$select=NoFacture,DateFacture,Description,NoCommandeRéférence,TotalFacture&$filter=DateFacture%20ge%20'2026-01-01'&$top=10' \
-u "$CONEXIO_LICENCE:$CONEXIO_API_KEY" \
-H 'COMPANY_CODE: VOTRE_COMPAGNIE' \
-H 'ALLOW_PAGINATION: true'const response = await fetch("https://gateway.conexio.dev/api/Entity/CustomerOrder?$select=NoFacture,DateFacture,Description,NoCommandeRéférence,TotalFacture&$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
var http = new HttpClient();
var request = new HttpRequestMessage(HttpMethod.Get, "https://gateway.conexio.dev/api/Entity/CustomerOrder?$select=NoFacture,DateFacture,Description,NoCommandeRéférence,TotalFacture&$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();import requests
response = requests.get(
"https://gateway.conexio.dev/api/Entity/CustomerOrder?$select=NoFacture,DateFacture,Description,NoCommandeRéférence,TotalFacture&$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 CustomerOrder sur Sage 300, et leurs opérateurs $filter :
| Champ | Opérateurs |
|---|---|
NoFacture | eq ne contains |
NoUniqueSystemeSource | eq ne contains |
DateFacture | eq ne gt ge lt le |
DateExpirationDocument | eq ne gt ge lt le |
Fiche_DerniereModification | eq ne gt ge lt le |
Description | eq ne contains |
Référence | eq ne contains |
NoCommandeRéférence | eq ne contains |
NoAutorisation | eq ne contains |
TotalFacture | eq ne gt ge lt le |
SousTotalFacture | eq ne gt ge lt le |
FraisDeTransport | eq ne gt ge lt le |
MontantNonPaye | eq ne gt ge lt le |
Devise | eq ne contains |
EstActif | eq ne |
NoVendeur | eq ne contains |
NoTerritoire | eq ne contains |
NoModeExpedition | eq ne contains |
TermeDePaiement.NoTermeDePaiement | eq ne contains |
NoProjet | eq ne contains |
NoSoumissionRéférence | eq ne contains |
NoSoumissionRéférence_NoUniqueSystemeSource | eq ne contains |
InfoClientFacturerA.NoClient | eq ne contains |
InfoClientFacturerA.NomClient | eq ne contains |
InfoClientFacturerA.Adresse | eq ne contains |
InfoClientFacturerA.Ville | eq ne contains |
InfoClientFacturerA.Province | eq ne contains |
InfoClientFacturerA.CodePostal | eq ne contains |
InfoClientFacturerA.Pays | eq ne contains |
InfoClientFacturerA.EmailPrincipal_Adresse | eq ne contains |
InfoClientLivrerA.NoClient | eq ne contains |
InfoClientLivrerA.NomClient | eq ne contains |
InfoClientLivrerA.Adresse | eq ne contains |
InfoClientLivrerA.Ville | eq ne contains |
InfoClientLivrerA.Province | eq ne contains |
InfoClientLivrerA.CodePostal | eq ne contains |
InfoClientLivrerA.Pays | eq ne contains |
InfoClientLivrerA.EmailPrincipal_Adresse | eq ne contains |
Créer des commandes clients
Un POST sur la même adresse, avec l’élément en JSON :
POST https://gateway.conexio.dev/api/Entity/CustomerOrder
Authorization: Basic base64(CODE_LICENCE:CLE_API)
COMPANY_CODE: VOTRE_COMPAGNIE
Content-Type: application/json
{
"NoFacture": "VALEUR",
"DateFacture": "2026-01-01",
"Description": "VALEUR"
}Les champs
| Champ | Lire | Créer | Modifier |
|---|---|---|---|
NoFacture | ✓ | ✓ | — |
NoUniqueSystemeSource | ✓ | — | — |
TypeDoc | ✓ | — | — |
DateFacture | ✓ | ✓ | — |
DateExpirationDocument | — | — | — |
Fiche_DerniereModification | — | — | — |
Description | ✓ | ✓ | — |
Référence | ✓ | ✓ | — |
NoCommandeRéférence | ✓ | — | — |
NoAutorisation | — | — | — |
TotalFacture | ✓ | — | — |
SousTotalFacture | ✓ | ✓ | — |
FraisDeTransport | — | — | — |
MontantNonPaye | — | — | — |
Devise | ✓ | — | — |
EstActif | ✓ | — | — |
NoVendeur | — | — | — |
NoTerritoire | — | ✓ | — |
NoModeExpedition | ✓ | — | — |
TermeDePaiement.NoTermeDePaiement | ✓ | ✓ | — |
NoProjet | — | — | — |
NoSoumissionRéférence | — | — | — |
NoSoumissionRéférence_NoUniqueSystemeSource | — | — | — |
InfoClientFacturerA.NoClient | ✓ | ✓ | — |
InfoClientFacturerA.NomClient | ✓ | ✓ | — |
InfoClientFacturerA.DescriptionAdresse | ✓ | — | — |
InfoClientFacturerA.Adresse | ✓ | ✓ | — |
InfoClientFacturerA.Adresse2 | ✓ | — | — |
InfoClientFacturerA.Ville | ✓ | ✓ | — |
InfoClientFacturerA.Province | ✓ | ✓ | — |
InfoClientFacturerA.CodePostal | ✓ | ✓ | — |
InfoClientFacturerA.Pays | ✓ | ✓ | — |
InfoClientFacturerA.NomPersonneContact | ✓ | ✓ | — |
InfoClientFacturerA.EmailPrincipal_Adresse | ✓ | ✓ | — |
InfoClientFacturerA.Email2_Adresse | ✓ | ✓ | — |
InfoClientFacturerA.Telephone_Principal.Numero | ✓ | ✓ | — |
InfoClientFacturerA.Telephone_Telecopieur.Numero | ✓ | ✓ | — |
InfoClientLivrerA.NoClient | ✓ | — | — |
InfoClientLivrerA.NomClient | ✓ | ✓ | — |
InfoClientLivrerA.Adresse | ✓ | ✓ | — |
InfoClientLivrerA.Ville | ✓ | ✓ | — |
InfoClientLivrerA.Province | ✓ | ✓ | — |
InfoClientLivrerA.CodePostal | ✓ | ✓ | — |
InfoClientLivrerA.Pays | ✓ | ✓ | — |
InfoClientLivrerA.EmailPrincipal_Adresse | ✓ | — | — |
InfoClientLivrerA.Telephone_Principal.Numero | ✓ | — | — |
LigneFacture[].NoLigneFacture | ✓ | ✓ | — |
LigneFacture[].strNoProduit | ✓ | ✓ | — |
LigneFacture[].DescriptionLigne | ✓ | ✓ | — |
LigneFacture[].QteCommande | ✓ | ✓ | — |
LigneFacture[].QteFacture | ✓ | — | — |
LigneFacture[].PrixFinal | ✓ | ✓ | — |
LigneFacture[].PrixCoutant | — | ✓ | — |
LigneFacture[].Montant_TotalLigne | ✓ | — | — |
LigneFacture[].UniteMesure | ✓ | ✓ | — |
LigneFacture[].UniteMesurePoids | ✓ | ✓ | — |
Les mêmes commandes clients, dans les autres logiciels
Même requête, même JSON : seule la compagnie change.