281 lines
15 KiB
JSON
281 lines
15 KiB
JSON
{
|
|
"title": "FAC009 remise en prestation de services, FAC004 et FAC006 portées au montant encaissé (51,13 EUR), abonnement Anthropic d'août",
|
|
"rationale": "RÉPARATION D'ABORD. `PUT /invoices/{id}/lines/{lid}` n'est PAS un PATCH : tout champ absent du corps est remis à zéro. La correction de FAC009 appliquée en production ce matin ne passait que subprice, pu_ht, qty et desc — `product_type` est donc retombé de 1 (service) à 0 (produit). FAC009 est la seule facture du registre dans ce cas ; toutes les autres portent 1. Pour une société qui ne vend que des prestations et facture hors UE sous l'article 259-1° du CGI, une ligne typée « produit » est une donnée fausse. C'est le juge pré-gate qui l'a vu, sur la répétition de FAC004 et FAC006 — où le même appel avait en plus effacé `desc` entièrement.\n\nFAC004 et FAC006 portent toutes deux 2 145,92 EUR — le MÊME montant, repris tel quel d'un cycle à l'autre — alors que la banque a reçu 2 147,00 EUR le 29/05 et 2 195,97 EUR le 25/06. Le client a versé 2 500,00 USD à chaque fois, au taux de son jour de paiement, comme le contrat le prévoit. Il manque donc 51,13 EUR d'encaissement dans les livres.\nLeurs notes documentaient déjà l'écart et le qualifiaient d'écart de change — un traitement défendable, retenu quand on croyait ces factures entre les mains du client. ELLES NE LE SONT PAS : l'opérateur a établi en session du 24/08 que KissMetrics n'a jamais reçu la moindre facture, et payait le forfait de 2 500 USD sans pièce. Rien ne s'oppose donc à porter les factures au montant encaissé, ce qui est plus simple et plus vrai qu'un écart de change à expliquer : une facture, un règlement, une ligne bancaire, le même chiffre.\nLes règlements de 2 145,92 EUR ont été supprimés au préalable par test/deleteInvoicePayment.ts — l'API REST ne sait pas le faire — et sont ressaisis ici aux montants justes, avec leurs références de virement d'origine.\nS'y ajoute l'abonnement Anthropic du 19/08 (90,00 EUR, carte Qonto), dont le reçu 2330-6710-2536 est arrivé dans books@ le 24/08 : c'est le second abonnement à usage interne, distinct du budget IA client.",
|
|
"observe": [
|
|
"/invoices/14",
|
|
"/invoices/16",
|
|
"/bankaccounts/2/lines?limit=20",
|
|
"/supplierinvoices?limit=5",
|
|
"/invoices/19"
|
|
],
|
|
"ops": [
|
|
{
|
|
"label": "FAC009 — repasser en brouillon (réparation de product_type)",
|
|
"api": {
|
|
"method": "POST",
|
|
"path": "/invoices/19/settodraft",
|
|
"body": {
|
|
"idwarehouse": 0
|
|
}
|
|
}
|
|
},
|
|
{
|
|
"label": "FAC009 — remettre la ligne en PRESTATION DE SERVICES (product_type 0 -> 1), montant inchangé",
|
|
"api": {
|
|
"method": "PUT",
|
|
"path": "/invoices/19/lines/19",
|
|
"body": {
|
|
"desc": "Conseil et accompagnement infrastructure cloud — Cycle M4 (part fixe) — période d'exécution du 23/07/2026 au 23/08/2026. Contrat cadre du 23/04/2026, art. 6 ; avenant art. 2 et 4. Montant contractuel 2 500,00 USD, converti au taux du jour du règlement (1 EUR = 1,15486 USD le 17/08/2026) = 2 164,75 €.\nPrestation de services au sens des articles 259, 1° et 283-2 du CGI. TVA française non applicable — preneur assujetti établi hors de l'Union européenne (États-Unis).",
|
|
"description": "Conseil et accompagnement infrastructure cloud — Cycle M4 (part fixe) — période d'exécution du 23/07/2026 au 23/08/2026. Contrat cadre du 23/04/2026, art. 6 ; avenant art. 2 et 4. Montant contractuel 2 500,00 USD, converti au taux du jour du règlement (1 EUR = 1,15486 USD le 17/08/2026) = 2 164,75 €.\nPrestation de services au sens des articles 259, 1° et 283-2 du CGI. TVA française non applicable — preneur assujetti établi hors de l'Union européenne (États-Unis).",
|
|
"subprice": "2164.75",
|
|
"pu_ht": "2164.75",
|
|
"qty": "1",
|
|
"product_type": "1",
|
|
"tva_tx": "0.0000",
|
|
"remise_percent": "0",
|
|
"localtax1_tx": "0.0000",
|
|
"localtax2_tx": "0.0000",
|
|
"info_bits": "0",
|
|
"special_code": "0",
|
|
"rang": "0",
|
|
"situation_percent": "100",
|
|
"fk_warehouse": "0",
|
|
"pa_ht": "0.00000000"
|
|
}
|
|
}
|
|
},
|
|
{
|
|
"label": "FAC009 — revalider",
|
|
"api": {
|
|
"method": "POST",
|
|
"path": "/invoices/19/validate",
|
|
"body": {
|
|
"notrigger": 0
|
|
}
|
|
}
|
|
},
|
|
{
|
|
"label": "FAC009 — échéance au 22/09/2026, à repositionner après validation",
|
|
"api": {
|
|
"method": "PUT",
|
|
"path": "/invoices/19",
|
|
"body": {
|
|
"date_lim_reglement": 1790028000
|
|
}
|
|
}
|
|
},
|
|
{
|
|
"label": "FAC009 — ressaisir le virement Wise du 17/08/2026 : 2 164,75 EUR",
|
|
"api": {
|
|
"method": "POST",
|
|
"path": "/invoices/19/payments",
|
|
"body": {
|
|
"datepaye": 1786960800,
|
|
"paymentid": 2,
|
|
"closepaidinvoices": "yes",
|
|
"accountid": 2,
|
|
"amount": 2164.75,
|
|
"num_payment": "VENDOR:DEV",
|
|
"comment": "Virement Wise Kissmetrics Holdings Inc — part fixe cycle M4, 2 500,00 USD au taux du 17/08/2026"
|
|
}
|
|
}
|
|
},
|
|
{
|
|
"label": "FAC004 — repasser en brouillon (le règlement a déjà été supprimé)",
|
|
"api": {
|
|
"method": "POST",
|
|
"path": "/invoices/14/settodraft",
|
|
"body": {
|
|
"idwarehouse": 0
|
|
}
|
|
}
|
|
},
|
|
{
|
|
"label": "FAC004 — porter la ligne (charge COMPLÈTE : le PUT n'est pas un PATCH) au montant réellement encaissé : 2 145,92 -> 2 147,00 EUR",
|
|
"api": {
|
|
"method": "PUT",
|
|
"path": "/invoices/14/lines/14",
|
|
"body": {
|
|
"desc": "Conseil et accompagnement infrastructure cloud - Cycle M1 (part fixe) - periode du 23/04/2026 au 23/05/2026.\nTVA non applicable - Articles 259, 1 et 283-2 du CGI - prestation de services a un preneur assujetti etabli hors UE (Etats-Unis).",
|
|
"description": "Conseil et accompagnement infrastructure cloud - Cycle M1 (part fixe) - periode du 23/04/2026 au 23/05/2026.\nTVA non applicable - Articles 259, 1 et 283-2 du CGI - prestation de services a un preneur assujetti etabli hors UE (Etats-Unis).",
|
|
"subprice": "2147.00",
|
|
"pu_ht": "2147.00",
|
|
"qty": "1",
|
|
"product_type": "1",
|
|
"tva_tx": "0.0000",
|
|
"remise_percent": "0",
|
|
"localtax1_tx": "0.0000",
|
|
"localtax2_tx": "0.0000",
|
|
"info_bits": "0",
|
|
"special_code": "0",
|
|
"rang": "0",
|
|
"situation_percent": "100",
|
|
"fk_warehouse": "0",
|
|
"pa_ht": "0.00000000"
|
|
}
|
|
}
|
|
},
|
|
{
|
|
"label": "FAC004 — note publique : plus d'écart de change à expliquer, la facture vaut l'encaissement",
|
|
"api": {
|
|
"method": "PUT",
|
|
"path": "/invoices/14",
|
|
"body": {
|
|
"note_public": "PART FIXE DU CYCLE M1 — engagement de conseil convenu entre les parties, en vigueur depuis le 23/04/2026.\nMontant contractuel : 2 500,00 USD, réglé en euros au taux de référence EUR/USD du jour du paiement (1 EUR = 1,16442 USD le 29/05/2026) = 2 147,00 €.\nRÈGLEMENT REÇU : virement Wise de 2 147,00 € crédité le 29/05/2026 (émetteur Kissmetrics Holdings Inc). Facture soldée ; aucune somme ne reste due.\nPériode d'exécution : 23/04/2026 au 23/05/2026.\nPÉNALITÉS DE RETARD — En cas de retard de paiement, sont automatiquement dues, sans rappel préalable : (i) des pénalités de retard calculées au taux d'intérêt appliqué par la Banque centrale européenne à son opération de refinancement la plus récente, majoré de 10 points de pourcentage (art. L.441-10 II du Code de commerce) — soit 12,15 % l'an au 1er semestre 2026 et 12,40 % l'an au 2e semestre 2026 ; (ii) une indemnité forfaitaire pour frais de recouvrement de quarante euros (40 €) par facture impayée (art. L.441-10 III du Code de commerce et décret n° 2012-1115) ; (iii) une indemnisation complémentaire sur justification documentée lorsque les frais de recouvrement exposés sont supérieurs à ce forfait. Aucun escompte n'est accordé en cas de paiement anticipé. Ces stipulations sont des minima légaux d'ordre public auxquels il ne peut être renoncé. / LATE PAYMENT — automatically due without prior reminder: (i) interest at the ECB refinancing rate plus 10 percentage points (Art. L.441-10 II French Commercial Code) — 12.15 % p.a. in H1 2026, 12.40 % p.a. in H2 2026; (ii) a fixed recovery indemnity of forty euros (€40) per unpaid invoice (Art. L.441-10 III and Decree no. 2012-1115); (iii) further indemnification on documented justification. No early-payment discount."
|
|
}
|
|
}
|
|
},
|
|
{
|
|
"label": "FAC004 — revalider (même numéro, même date d'émission)",
|
|
"api": {
|
|
"method": "POST",
|
|
"path": "/invoices/14/validate",
|
|
"body": {
|
|
"notrigger": 0
|
|
}
|
|
}
|
|
},
|
|
{
|
|
"label": "FAC004 — ressaisir le virement Wise du 29/05/2026 : 2 147,00 EUR",
|
|
"api": {
|
|
"method": "POST",
|
|
"path": "/invoices/14/payments",
|
|
"body": {
|
|
"datepaye": 1780048800,
|
|
"paymentid": 2,
|
|
"closepaidinvoices": "yes",
|
|
"accountid": 2,
|
|
"amount": 2147.0,
|
|
"num_payment": "2159468139",
|
|
"comment": "Virement Wise Kissmetrics Holdings Inc — part fixe cycle M1, 2 500,00 USD au taux du 29/05/2026"
|
|
}
|
|
}
|
|
},
|
|
{
|
|
"label": "FAC006 — repasser en brouillon (le règlement a déjà été supprimé)",
|
|
"api": {
|
|
"method": "POST",
|
|
"path": "/invoices/16/settodraft",
|
|
"body": {
|
|
"idwarehouse": 0
|
|
}
|
|
}
|
|
},
|
|
{
|
|
"label": "FAC006 — porter la ligne (charge COMPLÈTE : le PUT n'est pas un PATCH) au montant réellement encaissé : 2 145,92 -> 2 195,97 EUR",
|
|
"api": {
|
|
"method": "PUT",
|
|
"path": "/invoices/16/lines/16",
|
|
"body": {
|
|
"desc": "Conseil et accompagnement infrastructure cloud - Cycle M2 (part fixe) - periode du 23/05/2026 au 23/06/2026.\nTVA non applicable - Articles 259, 1 et 283-2 du CGI - prestation de services a un preneur assujetti etabli hors UE (Etats-Unis).",
|
|
"description": "Conseil et accompagnement infrastructure cloud - Cycle M2 (part fixe) - periode du 23/05/2026 au 23/06/2026.\nTVA non applicable - Articles 259, 1 et 283-2 du CGI - prestation de services a un preneur assujetti etabli hors UE (Etats-Unis).",
|
|
"subprice": "2195.97",
|
|
"pu_ht": "2195.97",
|
|
"qty": "1",
|
|
"product_type": "1",
|
|
"tva_tx": "0.0000",
|
|
"remise_percent": "0",
|
|
"localtax1_tx": "0.0000",
|
|
"localtax2_tx": "0.0000",
|
|
"info_bits": "0",
|
|
"special_code": "0",
|
|
"rang": "0",
|
|
"situation_percent": "100",
|
|
"fk_warehouse": "0",
|
|
"pa_ht": "0.00000000"
|
|
}
|
|
}
|
|
},
|
|
{
|
|
"label": "FAC006 — note publique : plus d'écart de change à expliquer, la facture vaut l'encaissement",
|
|
"api": {
|
|
"method": "PUT",
|
|
"path": "/invoices/16",
|
|
"body": {
|
|
"note_public": "PART FIXE DU CYCLE M2 — engagement de conseil convenu entre les parties, en vigueur depuis le 23/04/2026.\nMontant contractuel : 2 500,00 USD, réglé en euros au taux de référence EUR/USD du jour du paiement (1 EUR = 1,13845 USD le 25/06/2026) = 2 195,97 €.\nRÈGLEMENT REÇU : virement Wise de 2 195,97 € crédité le 25/06/2026 (émetteur Kissmetrics Holdings Inc). Facture soldée ; aucune somme ne reste due.\nPériode d'exécution : 23/05/2026 au 23/06/2026.\nPÉNALITÉS DE RETARD — En cas de retard de paiement, sont automatiquement dues, sans rappel préalable : (i) des pénalités de retard calculées au taux d'intérêt appliqué par la Banque centrale européenne à son opération de refinancement la plus récente, majoré de 10 points de pourcentage (art. L.441-10 II du Code de commerce) — soit 12,15 % l'an au 1er semestre 2026 et 12,40 % l'an au 2e semestre 2026 ; (ii) une indemnité forfaitaire pour frais de recouvrement de quarante euros (40 €) par facture impayée (art. L.441-10 III du Code de commerce et décret n° 2012-1115) ; (iii) une indemnisation complémentaire sur justification documentée lorsque les frais de recouvrement exposés sont supérieurs à ce forfait. Aucun escompte n'est accordé en cas de paiement anticipé. Ces stipulations sont des minima légaux d'ordre public auxquels il ne peut être renoncé. / LATE PAYMENT — automatically due without prior reminder: (i) interest at the ECB refinancing rate plus 10 percentage points (Art. L.441-10 II French Commercial Code) — 12.15 % p.a. in H1 2026, 12.40 % p.a. in H2 2026; (ii) a fixed recovery indemnity of forty euros (€40) per unpaid invoice (Art. L.441-10 III and Decree no. 2012-1115); (iii) further indemnification on documented justification. No early-payment discount."
|
|
}
|
|
}
|
|
},
|
|
{
|
|
"label": "FAC006 — revalider (même numéro, même date d'émission)",
|
|
"api": {
|
|
"method": "POST",
|
|
"path": "/invoices/16/validate",
|
|
"body": {
|
|
"notrigger": 0
|
|
}
|
|
}
|
|
},
|
|
{
|
|
"label": "FAC006 — ressaisir le virement Wise du 25/06/2026 : 2 195,97 EUR",
|
|
"api": {
|
|
"method": "POST",
|
|
"path": "/invoices/16/payments",
|
|
"body": {
|
|
"datepaye": 1782381600,
|
|
"paymentid": 2,
|
|
"closepaidinvoices": "yes",
|
|
"accountid": 2,
|
|
"amount": 2195.97,
|
|
"num_payment": "2210434850",
|
|
"comment": "Virement Wise Kissmetrics Holdings Inc — part fixe cycle M2, 2 500,00 USD au taux du 25/06/2026"
|
|
}
|
|
}
|
|
},
|
|
{
|
|
"label": "facture fournisseur Anthropic PBC — 90,00 EUR (abonnement interne, août)",
|
|
"api": {
|
|
"method": "POST",
|
|
"path": "/supplierinvoices",
|
|
"body": {
|
|
"socid": 13,
|
|
"type": 0,
|
|
"date": 1787133600,
|
|
"ref_supplier": "8JWZWUWO-0002",
|
|
"note_public": "Abonnement Claude — usage INTERNE de la société, hors budget IA client. Prestation fournie par un assujetti non établi en France (Anthropic PBC, États-Unis) : TVA autoliquidée par le preneur, CGI art. 283-2. Réglée par carte Qonto le 19/08/2026. Reçu 2330-6710-2536, facture 8JWZWUWO-0002.",
|
|
"lines": [
|
|
{
|
|
"desc": "Abonnement Claude — août 2026 (usage interne). Facture 8JWZWUWO-0002.",
|
|
"subprice": "90.00",
|
|
"pu_ht": "90.00",
|
|
"qty": "1",
|
|
"tva_tx": "0",
|
|
"product_type": "1"
|
|
}
|
|
]
|
|
}
|
|
},
|
|
"then": [
|
|
{
|
|
"label": "valider",
|
|
"method": "POST",
|
|
"path": "/supplierinvoices/{id}/validate",
|
|
"body": {}
|
|
},
|
|
{
|
|
"label": "règlement carte Qonto du 19/08",
|
|
"method": "POST",
|
|
"path": "/supplierinvoices/{id}/payments",
|
|
"body": {
|
|
"datepaye": 1787133600,
|
|
"payment_mode_id": 6,
|
|
"closepaidinvoices": "yes",
|
|
"accountid": 1,
|
|
"amount": 90.0,
|
|
"comment": "Abonnement Claude usage interne — carte Qonto, ANTHROPIC* CLAUDE SUB du 19/08/2026"
|
|
}
|
|
}
|
|
]
|
|
}
|
|
],
|
|
"verify": [
|
|
{
|
|
"path": "/invoices/14",
|
|
"expect": "2147.00"
|
|
},
|
|
{
|
|
"path": "/invoices/16",
|
|
"expect": "2195.97"
|
|
}
|
|
]
|
|
} |