# UBL-bestand gratis controleren

Met deze gratis UBL-validator voert u een basiscontrole uit op een UBL-factuur: geldige XML, de UBL 2.1-factuurstructuur en namespaces, verplichte kerngegevens en eenvoudige berekeningen voor totalen en btw. De controle draait volledig in uw browser; uw bestand en factuurgegevens worden niet naar SnelUBL of een andere server gestuurd.

<section id="ubl-validator" class="ubl-validator" aria-labelledby="ubl-validator-title">
  <div class="ubl-validator__heading">
    <div>
      <p class="ubl-validator__eyebrow">Browser-only basiscontrole</p>
      <h2 id="ubl-validator-title">Controleer uw UBL XML</h2>
    </div>
    <p class="ubl-validator__privacy">Blijft op dit apparaat</p>
  </div>
  <div class="ubl-validator__tabs" role="tablist" aria-label="Kies invoermethode">
    <button type="button" class="ubl-validator__tab is-active" id="ubl-file-tab" role="tab" aria-selected="true" aria-controls="ubl-file-panel" data-validator-tab="file">Bestand uploaden</button>
    <button type="button" class="ubl-validator__tab" id="ubl-paste-tab" role="tab" aria-selected="false" aria-controls="ubl-paste-panel" data-validator-tab="paste" tabindex="-1">XML plakken</button>
  </div>
  <div class="ubl-validator__panel" id="ubl-file-panel" role="tabpanel" aria-labelledby="ubl-file-tab">
    <label class="ubl-validator__file-label" for="ubl-file-input">
      <strong>Kies een UBL XML-bestand</strong>
      <span id="ubl-file-name">Nog geen bestand gekozen</span>
    </label>
    <input id="ubl-file-input" class="ubl-validator__file-input" type="file" accept=".xml,application/xml,text/xml">
  </div>
  <div class="ubl-validator__panel" id="ubl-paste-panel" role="tabpanel" aria-labelledby="ubl-paste-tab" hidden>
    <label for="ubl-xml-input">UBL XML</label>
    <textarea id="ubl-xml-input" rows="12" spellcheck="false" autocomplete="off" placeholder="Plak hier de volledige UBL XML..."></textarea>
  </div>
  <div class="ubl-validator__actions">
    <button type="button" class="public-btn public-btn--primary" id="ubl-validate-button">Basiscontrole uitvoeren</button>
    <button type="button" class="ubl-validator__clear" id="ubl-clear-button">Wissen</button>
  </div>
  <div class="ubl-validator__results" id="ubl-validator-results" aria-live="polite" hidden>
    <div class="ubl-validator__summary">
      <h3 id="ubl-validator-summary">Resultaat</h3>
      <p id="ubl-validator-summary-text"></p>
    </div>
    <ul id="ubl-validator-findings"></ul>
  </div>
</section>

## Wat controleert deze basiscontrole?

- Of de invoer goed gevormde XML is en een UBL Invoice-root met de verwachte UBL 2.1 Invoice-, CommonBasicComponents- en CommonAggregateComponents-namespaces gebruikt.
- Of factuurnummer, factuurdatum, leverancier, klant, valuta, totalen en een btw-uitsplitsing aanwezig zijn.
- Of de som van de factuurregels overeenkomt met het bedrag exclusief btw.
- Of de btw-bedragen uit de uitsplitsing optellen tot het totale btw-bedrag.

Dit is geen volledige EN 16931- of Peppol BIS Billing 3.0-Schematronvalidatie. Een bestand dat deze basiscontrole doorstaat, kan nog pakket-, profiel- of landspecifieke fouten bevatten.

## Wat is UBL?

UBL staat voor Universal Business Language. Het is een XML-formaat waarin factuurgegevens zoals partijen, regels, bedragen, valuta en btw gestructureerd staan, zodat boekhoudsoftware ze zonder handmatig overtypen kan verwerken. Lees meer in [Wat is UBL?](/nl/ubl.html).

<div class="seo-action-row">
  <a class="public-btn public-btn--primary" href="/login.html?screen_hint=signup" data-action="register" data-track-location="ubl_validator">Heeft u alleen een PDF? Converteer hem naar UBL</a>
</div>

## Veelgestelde vragen

### Wordt mijn UBL-bestand geüpload?

Nee. De controle draait lokaal in uw browser en verstuurt uw XML of factuurgegevens niet naar een server.

### Is dit een volledige Peppol-validatie?

Nee. Dit is een basiscontrole op XML, UBL-structuur, kernvelden en eenvoudige berekeningen, geen volledige EN 16931- of Peppol BIS Billing 3.0-Schematronvalidatie.

### Welke UBL-structuur controleert de validator?

De validator verwacht een UBL Invoice met de gebruikelijke UBL 2.1 Invoice-, CommonBasicComponents- en CommonAggregateComponents-namespaces.

### Waarom kan een boekhoudpakket het bestand toch weigeren?

Een pakket kan aanvullende profiel-, land-, proces- of veldvereisten hebben die buiten deze basiscontrole vallen.

### Kan ik een PDF-factuur met deze validator controleren?

Nee. Deze tool controleert UBL XML. Met SnelUBL kunt u een PDF, DOCX, scan of foto eerst naar UBL converteren.

Laatst bijgewerkt: 1 oktober 2026.
