← Tous les articles

Détecter les changements pour une synchronisation incrémentale

Utilisez deux appels lorsque vous gardez une copie des données Sage 50 dans un autre système. GET /api/sync/table-status indique quelles parties du fichier de compagnie Sage a modifiées en dernier. modifiedSince et activitySince sur les listes de ventes et d’achats ne retournent que les factures changées après un moment que vous choisissez.

Prérequis

Avant d’interroger les changements, assurez-vous d’avoir :

Authentification

Passez votre clé API dans l’en-tête de requête x-api-key :

x-api-key: YOUR_API_KEY

Voir quels domaines ont changé

GET /api/sync/table-status

Chaque ligne est une partie suivie du fichier de compagnie :

Champ Signification
area Nom en langage clair, comme factures de ventes, factures d’achats, clients ou fournisseurs
tableName Nom de table interne Sage. Unknown lorsque la table n’est pas mappée
lastChangedAt Quand Sage a enregistré un dernier changement dans cette partie
lastChangedByUserId Identifiant utilisateur Sage associé à ce changement

Comparez lastChangedAt pour les factures de ventes ou d’achats avec l’horodatage de votre dernière synchronisation. S’il est plus ancien, vous pouvez sauter la liste de ces factures.

[
  {
    "area": "Sales invoices",
    "tableName": "tCusTr",
    "lastChangedAt": "2026-10-07T14:32:00",
    "lastChangedByUserId": "SYSADMIN"
  },
  {
    "area": "Purchase invoices",
    "tableName": "tVenTr",
    "lastChangedAt": "2026-10-06T09:15:00",
    "lastChangedByUserId": "SYSADMIN"
  }
]

Lister les factures de ventes qui ont changé

GET /api/sales accepte les mêmes filtres qu’avant, plus deux filtres de changement. Les deux valeurs sont des dates et heures.

modifiedSince retourne les factures dont le contenu a été modifié à partir de ce moment (montants, lignes, etc.). Un paiement seul ne compte pas.

activitySince retourne les factures avec une mise à jour à partir de ce moment, y compris les paiements.

GET /api/sales?modifiedSince=2026-10-01T00:00:00
GET /api/sales?activitySince=2026-10-01T00:00:00&customerId=42

Chaque ligne inclut lastModifiedAt et lastActivityAt avec la même signification que ces filtres. lastModifiedAt est le moment où la facture elle-même a été modifiée pour la dernière fois. lastActivityAt est le moment où quelque chose a changé pour la dernière fois, y compris les paiements.

Vous pouvez les combiner avec customerId, paymentStatus, dateFrom, dateTo, invoiceNumber et daysLateMin / daysLateMax. Utilisez top (par défaut 50, maximum 1000) et skip pour paginer.

Lister les factures d’achats qui ont changé

GET /api/purchases utilise les mêmes deux filtres et retourne les mêmes deux horodatages.

GET /api/purchases?modifiedSince=2026-10-01T00:00:00
GET /api/purchases?activitySince=2026-10-01T00:00:00&vendorId=17

modifiedSince ignore un paiement qui ne modifie pas la facture. activitySince inclut les paiements. Les autres filtres sont vendorId, dateFrom, dateTo et invoiceNumber.

Prochaines étapes