ExoConnect pour Acomba
AccueilAPI
DocumentationNotes de version
AccueilAPI
DocumentationNotes de version
Contactez-nous
  1. Ventes
  • Présentation de l'API
  • Comptabilité
    • Plan comptable (Chartes)
      • Récupérer les comptes
      • Créer un compte
      • Récupérer un compte (code)
      • Modifier un compte (code)
      • Récupérer un compte (id)
      • Modifier un compte (id)
    • Taxes
      • Récupérer les taxes
      • Créer une taxe
      • Récupérer une taxe (code)
      • Modifier une taxe (id)
      • Récupérer une taxe (id)
      • Modifier une taxe (id)
    • Groupes de taxes
      • Récupérer les groupes taxes
      • Créer un groupe de taxes
      • Récupérer une groupe de taxes (code)
      • Modifier un groupe de taxes (code)
      • Récupérer une groupe de taxes (id)
      • Modifier un groupe de taxes (id)
  • Ventes
    • Vendeurs
      • Récupérer les vendeurs
      • Créer un vendeur
      • Récupérer un vendeur (code)
      • Modifier un vendeur (code)
      • Récupérer un vendeur (id)
      • Modifier un vendeur (id)
    • Territoires
      • Récupérer les territoires
      • Créer un territoire
      • Récupérer un territoire (code)
      • Modifier un territoire (code)
      • Récupérer un territoire (id)
      • Modifier un territoire (id)
    • Transporteurs
      • Récupérer les transporteurs
      • Créer un transporteur
      • Récupérer un transporteur (code)
      • Modifier un transporteur (code)
      • Récupérer un transporteur (id)
      • Modifier un transporteur (id)
    • Termes de ventes
      • Récupérer les termes
      • Créer un terme
      • Récupérer un terme (code)
      • Modifier un terme (code)
      • Récupérer un terme (id)
      • Modifier un terme (id)
    • Clients
      • Récupérer les clients
      • Créer un client
      • Récupérer un client (code)
      • Modifier un client (code)
      • Récupérer un client (id)
      • Modifier un client (id)
    • Soumissions
      • Récupérer les soumissions
      • Créer une soumission
      • Récupérer une soumission
      • Modifier une soumission
      • Méthodes
    • Commandes
      • Récupérer les commandes
      • Créer une commande
      • Récupérer une commande
      • Modifier une commande
      • Méthodes
    • Factures
      • Récupérer les factures
      • Créer une facture
      • Récupérer une facture
      • Méthodes
  • Achats
    • Termes d'achat
      • Récupérer les termes d'achat
      • Créer un terme d'achat
      • Récupérer un terme d'achat (code)
      • Modifier un terme d'achat (code)
      • Récupérer un terme d'achat (id)
      • Modifier un terme d'achat (id)
    • Fournisseurs
      • Récupérer les fournisseurs
      • Créer un fournisseur
      • Récupérer un fournisseur (code)
      • Modifier un fournisseur (code)
      • Récupérer un fournisseur (code)
      • Modifier un fournisseur (id)
    • Bons d'achat
      • Récupérer les bons d'achat
      • Créer un bon d'achat
      • Récupérer un bon d'achat
      • Modifier un bon d'achat
      • Méthodes
  • Inventaire
    • Groupes de produits
      • Récupérer les groupes de produits
      • Créer un groupe de produits
      • Récupérer un groupe de produits (code)
      • Modifier un groupe de produits (code)
      • Récupérer un groupe de produits (id)
      • Modifier un groupe de produits (id)
    • Produits
      • Récupérer les produits
      • Créer un produit
      • Récupérer un produit (code)
      • Modifier un produit (code)
      • Récupérer un produit (id)
      • Modifier un produit (id)
  • Helpers
    • Mises à jours
      GET
    • Lister les entités
      GET
  • Système
    • État du service
      GET
AccueilAPI
DocumentationNotes de version
AccueilAPI
DocumentationNotes de version
Contactez-nous
  1. Ventes

Soumissions

Lignes de détails dans une soumission#

💡 Acomba n’impose pas de validation stricte sur la présence d’un produit (sku) dans chaque ligne de détail.
Cela permet — ou plutôt exige — que toute information affichée dans une soumission, y compris les simples
commentaires ou notes, soit représentée sous forme de ligne d’item.
⚠️ Ce qu’il faut savoir :
1.
Chaque ligne, qu’elle contienne un produit ou non, doit être envoyée comme une entrée dans le tableau details.
2.
Le champ description est limité à 90 caractères par ligne. Pour afficher un long commentaire, vous devez le fragmenter en plusieurs lignes distinctes.
3.
Les notes, instructions ou séparateurs visuels doivent être envoyés sans sku mais avec une description.
Exemple d’utilisation mixte (produits + commentaires) :
{
    ...
    "details": [
      {
        "line_number": 1,
        "sku": "EscTrans",
        "ordered_qty": 2.0
      },
      {
        "line_number": 2,
        "sku": "INSTALLATION",
        "description": "Temps d'installation",
        "ordered_qty": 8.25,
        "unit_price": 125
      },
      {
        "line_number": 4,
        "sku": "",
        "description": "NOTE : Livraison avant 7h AM."
      },
      {
        "line_number": 5,
        "sku": "",
        "description": "Accès limité côté cour."
      }
    ]
}
🛠️ Ce comportement est hérité du fonctionnement du SDK Acomba. ExoConnect s’occupe de l’encodage technique,
mais il revient à l’utilisateur de structurer ses commentaires selon ces règles.

Comportement de l’API#

L’API de création de soumissions est conçue pour simplifier la vie des utilisateurs en préremplissant automatiquement
certains champs lorsque l’information est partiellement fournie.

Récupération automatique des données#

Lorsque certains champs sont omis, voici quelques examples du comportement par défaut de l’API :
ChampComportement si omis
term_codeUtilise le terme de paiement associé au client
sales_rep_codeUtilise le vendeur associé au client
territory_codeUtilise le territoire du client
dateSi omis, la date du jour sera utilisé
reference.invoice_to_idSi omis, mais invoice_to_number est fourni, une tentative de résolution est effectuée
details[].product_groupSi le sku existe, le groupe de produit sera récupéré automatiquement
details[].descriptionSera extrait du produit si le sku correspond à un produit existant
details[].unit_priceMême chose : sera extrait du produit si sku connu
details[].tax_amount_1/2Calculé automatiquement à partir des taxes du client et du groupe de taxes assigné
🛠️ L’API utilise le numéro de produit (sku) comme point de départ pour enrichir les lignes de détails si l’information est absente.

⚠️ Recommandation#

Pour éviter toute ambiguïté et garantir une soumission complète et fidèle :
Fournir toutes les informations est fortement recommandé, même si le système peut les compléter automatiquement.
Cela assure un comportement prévisible, surtout lorsque des règles spéciales s’appliquent à certains produits ou clients.

Exemple minimaliste accepté :#

{
  "customer_number": "CUST001",
  "details": [
    {
      "sku": "PROD123", 
      "ordered_qty": 10
    },
    {
      "sku": "",
      "description": "Livraison spéciale avant 7h"
    }
  ]
}
Dans cet exemple, la ligne PROD123 sera complétée automatiquement avec sa description, son prix, son groupe de produit
et ses taxes, tandis que la ligne sans sku sera traitée comme un commentaire libre.

⚠️ Limitation connue — Modification du vendeur (sales_rep_code)#

Lors d’une mise à jour d’une fiche de transaction (soumission, commande, facture, etc.), les champs
sales_rep_code (numéro du vendeur) et reference.sales_rep_id (identifiant du vendeur) ne sont pas mis à jour correctement
Notes techniques
transaction.InSalesRepCP = X suivi d’un ModifyOrder(...) ou ModifyCard(...) ne conserve pas la valeur.
Après modification, les champs reviennent à leur valeur précédente.
Toutes les autres propriétés (description, dates, client, etc.) sont modifiées correctement.
Aucun contournement n'est disponible pour le moment. Une mise à jour sera déployé dès le correctif mis en place.
Modified at 2025-05-21 12:30:15
Previous
Modifier un client (id)
Next
Récupérer les soumissions
Built with