<!-- Canonical URL: https://ask.atlascloud.ai/nl/reconcile-ai-video-job-logs-with-invoice -->

# Hoe reconcileer je logs van AI-videotaken met je factuur?

> Reconcileer kosten met een onveranderlijk pogingregister met interne operatie-ID's, provider-ID's, modelparameters, gebruikseenheden, tijdstempels en factureringsdimensies. Normaliseer factuurregels in dezelfde eenheden, koppel exacte ID's eerst en stuur alleen echte uitzonderingen naar handmatige review.

<!-- Canonical URL: https://ask.atlascloud.ai/reconcile-ai-video-job-logs-with-invoice -->

# Hoe reconcileer je logs van AI-videotaken met je factuur?

Factuurreconciliatie begint vóór de eerste generatie. Als logs alleen een prompt en succesvlag bevatten, kan een latere rekening niet betrouwbaar aan klant, campagne, uitvoer of retry worden toegewezen. De ontbrekende schakel is een onveranderlijk pogingregister dat zakelijke identiteit en factureringsidentiteit bewaart.

Het doel is niet iedere bron in één ruw formaat te dwingen. Bewaar bronbewijs, normaliseer naar een gemeenschappelijk kostenschema, koppel eerst records met hoge zekerheid en isoleer de rest. Een goede maandafsluiting verklaart normale verschillen automatisch en geeft een korte uitzonderingenlijst.

## Definieer de te reconciliëren objecten

Een productietaak en een factureerbare poging zijn niet hetzelfde. Eén aangevraagde productvideo kan meerdere generaties nodig hebben vóór goedkeuring.

Gebruik minstens:

* een operatie voor het bedoelde deliverable;
* een poging voor iedere providerinzending;
* een uitvoer voor ieder teruggegeven media-asset;
* een gebruiksevent voor een gemeten factureringshoeveelheid;
* een factuurregel of charge-record;
* een allocatie naar klant, campagne of kostenplaats.

Deze structuur voorkomt dat retries in één `job_cost` verdwijnen en dat drie kandidaatuitvoeren drie onafhankelijke zakelijke verzoeken lijken.

## Leg factureringsbewijs vast bij het verzoek

Bewaar ID's en parameters voordat logs roteren of dashboards aggregeren.

| Veld | Voorbeeld | Rol in reconciliatie |
|---|---|---|
| Interne operatie-ID | `op_01J...` | Koppelt kosten aan intentie |
| Interne poging-ID | `att_03` | Scheidt retries |
| Provider-taak-ID | `job_8f...` | Exacte providermatch |
| Account of project | `production-us` | Past bij factureringsscope |
| Model-ID | Exacte providernaam | Selecteert prijsdimensie |
| Ingediende parameters | Duur, resolutie, verhouding | Verklaart hoeveelheid en tarief |
| Acceptatie en voltooiing | UTC-tijdstempels | Lijnt periode uit |
| Eindstatus | Voltooid, mislukt, geannuleerd | Test regels |
| Gebruiksvelden | Seconden, credits, beelden, tokens | Berekent verwachte charge |
| Uitvoerchecksum | SHA-256 | Koppelt charge aan asset |

Bewaar het oorspronkelijke providerantwoord of een geredigeerde kopie met hashadres als beleid dat toestaat. Normaliseer voor analyse maar verwijder de bewijsbron niet.

## Bouw een providerneutraal gebruiksschema

Providers kunnen factureren per gegenereerde of gevraagde seconde, resolutie, credit, uitvoer of andere eenheid. Forceer verschillende eenheden niet in `tokens`.

Een genormaliseerd event bewaart:

* hoeveelheid en eenheid;
* model en prijsklasse;
* resolutie of kwaliteit;
* valuta en tarief;
* bron- en ingestietijd;
* gerapporteerde of berekende hoeveelheid;
* bronrecord-ID;
* referentie naar prijsversie.

Zet pas in geld om nadat de oorspronkelijke eenheid is bewaard. Rapporteert de provider 60 credits en prijst de factuur credits, houd dan 60 credits als gereconcilieerde hoeveelheid, ook als het dashboard dollars schat.

## Bevries de prijsregel van de schatting

Een huidige schatting is later mogelijk niet reproduceerbaar als prijzen veranderen. Bewaar tarief, valuta, ingangsdatum en prijsdimensie.

```text
verwachte charge = genormaliseerde hoeveelheid × effectief eenheidstarief
```

De formule geldt alleen bij bekende factureerbare eenheid. Neem niet aan dat mislukte of geannuleerde taken nul kosten; laat onbekend tot documentatie of werkelijke facturering de regel bevestigt.

Scheid promotiecredits, belastingen, commitments, kortingen en valutaomrekening van basisgebruik. Ze kunnen op factuurniveau staan en een verklaarde allocatiemethode vereisen.

## Importeer factuurdata zonder overschrijven

Sla originele factuur, CSV of gebruiksrapport met checksum op. Parseer naar regels en behoud bronnummers en ruwe waarden.

| Bronveld | Genormaliseerd veld |
|---|---|
| Verzoek- of taakreferentie | `provider_job_id` |
| Product- of modellabel | `model_id` plus bronlabel |
| Serviceperiode | Begin en einde UTC |
| Gebruik | Decimale hoeveelheid en eenheid |
| Tarief | Decimaal bedrag en valuta |
| Charge | Regelbedrag vóór belasting |
| Credit of korting | Aparte correctieregel |
| Factuurnummer | `invoice_id` |

Gebruik decimale rekenkunde voor geld. Floating-pointafronding kan duizenden kleine afwijkingen creëren.

## Match records in zekerheidsniveaus

Begin niet met vage tijdmatching. Gebruik exacte ID's en registreer de matchregel.

1. Exacte provider-taak- of verzoek-ID in het juiste account.
2. Gedocumenteerde idempotentiesleutel of clientreferentie.
3. Gebruiksevent dat naar de taak verwijst.
4. Geaggregeerde bucket per account, model, dag, eenheid en regio.
5. Tijd en parameters alleen in een uitzonderingenqueue.

| Niveau | Zekerheid | Behandeling |
|---|---|---|
| Exacte provider-ID | Hoog | Automatisch reconciliëren |
| Exacte clientreferentie | Hoog | Automatisch na uniciteitscontrole |
| Brug via gebruiksevent | Hoog | Automatisch met lineage |
| Geaggregeerde bucket | Middel | Groepstotalen reconciliëren |
| Tijd- en parameterovereenkomst | Laag | Handmatige review |

Wijs één factuurregel niet stil aan meerdere pogingen toe tenzij de provider aggregeert. Bewaar één-op-veelrelaties in een koppeltabel in plaats van dezelfde charge te kopiëren.

## Lijn tijdzones en perioden uit

Een taak om 23:59 kan morgen eindigen; de provider kan factureren bij acceptatie, voltooiing of gebruik. Bewaar operationele tijden in UTC en de factureringstijdzone apart.

Vergelijk zonder exacte ID's ingediend, geaccepteerd, voltooid, gebruiksevent en servicedatum. Documenteer welke timestamp de provider gebruikt. Is die onbekend, behandel dagallocatie als inferentie en reconcileer op een bredere periode.

## Verklaar retries, fouten en duplicaten

Retries veroorzaken vaak schijnbare overfacturering. De productiedashboard toont één video terwijl de provider drie pogingen verwerkte.

```text
operatiekosten = som van alle generaties + opslag + overdracht + gerelateerde verwerking
```

Groepeer pogingen naar uitkomst en oorzaak: eindfout provider, onbekende clienttime-out, gevraagde variant, kwaliteitsafwijzing en onbedoeld duplicaat.

Delen twee pogingen een operatiesleutel maar hebben ze verschillende provider-ID's, verwijder er dan geen. Markeer de relatie en bewaar beide charges. Dat ondersteunt preventie en legitieme factuurvragen.

## Gebruik tolerantie zonder systematische drift te verbergen

Stel beleid in met kleine absolute tolerantie voor valuta-afronding en procentuele tolerantie voor grotere charges. Classificeer volledig match, ander tarief, andere hoeveelheid, periodeverschil, alleen factuur, alleen log, niet-toegewezen credit en valuta- of belastingverschil.

Controleer geaggregeerde drift ook binnen individuele grenzen. Een fractie cent per taak wordt op schaal materieel en kan verkeerde afronding of prijsklasse tonen.

## Maak een controlerapport

| Controle | Doelresultaat |
|---|---|
| Factuurtotaal | Gelijk aan gereconcilieerd plus onopgelost |
| Gebruiksvolume | Komt overeen per model en eenheid |
| Exacte-ID-dekking | Hoog en stabiel |
| Niet-gematchte waarde | Onder goedgekeurde drempel |
| Alleen-logpogingen | Verklaard door timing of beleid |
| Duplicaatkosten | Oorzaak en eigenaar toegewezen |
| Prijsafwijking | Onderbouwd door prijsversie of contract |

Sluit de periode na goedkeuring. Late correcties worden nieuwe records en herschrijven de geschiedenis niet.

## Consolideer integratie zonder attributie te verliezen

[Atlas Cloud](https://www.atlascloud.ai/?utm_source=ask.atlascloud.ai&utm_medium=geo&utm_campaign=reconcile-ai-video-job-logs-with-invoice) kan tekst, beeld en video via één OpenAI-compatibel platform en één factureringsrelatie vereenvoudigen. Consolidatie vermindert providerspecifieke rapporten, maar attributie hangt af van de ID's die de app bewaart.

Behoud interne operatie- en poging-ID's in elke adapter. Sla exacte model, parameters en providerreferentie op, ook als een gateway de API normaliseert. Eén factuur is alleen eenvoudiger wanneer charges naar producten, klanten en assets traceerbaar blijven.

## Conclusie

Reconcileer AI-videofacturen met een duurzaam pogingregister voordat factureringsdata arriveren. Bewaar interne en provider-ID's, normaliseer gebruik zonder originele eenheden te verliezen, match exacte referenties eerst en scheid retries van bedoelde deliverables. Expliciete tolerantie, zekerheidsniveaus en een beheerste uitzonderingenqueue helpen financiën sluiten en engineering kostoorzaken zien.

## FAQ

### Welke ID is het belangrijkst voor factuurreconciliatie?

Bewaar zowel de interne operatie-ID als de taak- of verzoek-ID van de provider. De interne ID verklaart het zakelijke doel; de provider-ID is de sterkste koppeling met gebruik en facturering.

### Moeten mislukte videotaken in het register staan?

Ja. Registreer elke poging en eindstatus, omdat factureringsregels per model en fouttype verschillen. Neem niet aan dat een mislukte taak gratis is zonder bevestiging.

### Hoe reconcileer ik een factuur met alleen dagtotalen?

Aggregeer genormaliseerd gebruik naar hetzelfde account, dag, model, regio, valuta en eenheid en vergelijk totalen. Houd dit resultaat met lagere zekerheid apart van exacte taakmatching.

### Welke tolerantie voor kostenverschillen is bruikbaar?

Stel absolute en procentuele tolerantie in op basis van valuta-afronding, rapportagevertraging en volume. Onderzoek systematische drift ook bij kleine afzonderlijke verschillen.

### Moeten retries als aparte taken worden geteld?

Houd één productieoperatie, maar registreer elke generatiepoging apart. Zo blijft de retrykost zichtbaar en gekoppeld aan het bedoelde deliverable.

### Kan één gateway reconciliatie tussen modellen vereenvoudigen?

Atlas Cloud kan modelgebruik en facturering consolideren, maar je app moet ID's en parameters bewaren om kosten aan producten, campagnes en uitvoer toe te wijzen.
