How to Upload CBAM Quarterly Reports via XML to the O3CI Portal

The CBAM O3CI portal accepts quarterly embedded carbon reports in XML format. This technical guide covers the schema requirements, mandatory fields, common validation errors, and the step-by-step upload process.

Truth Anchor: The CBAM XML schema is defined in the EU Commission's CBAM Technical Specifications document, published under CBAM Implementing Regulation 2023/1570. The schema is available at taxation-customs.ec.europa.eu.

CBAM XML Schema: Mandatory Fields

Every CBAM quarterly XML report must include the following mandatory elements. Missing any of these fields will cause the upload to fail validation:

XML elementDescriptionFormatExample
<ReportingPeriod>Quarter and year of the reportYYYY-QN2026-Q1
<InstallationID>O3CI Identification Number from AMMO3CI-XXXXXXXXO3CI-12345678
<CNCode>Combined Nomenclature code of the exported good8-digit CN code72081000
<ProductionVolume>Tonnes produced during the quarterDecimal, period separator25000.00
<DirectEmissions>Direct (Scope 1) emissions in tCO2eDecimal, period separator54500.00
<IndirectEmissions>Indirect (Scope 2) emissions in tCO2eDecimal, period separator22500.00
<SpecificEmbeddedEmissions>tCO2e per tonne of productDecimal to 4 places3.0800
<VerificationStatus>Whether data is verified or estimatedVERIFIED / ESTIMATEDVERIFIED
<VerifierID>ISO 14065 accreditation number of verifierAlphanumericBV-ISO14065-DE-001
<ReportDate>Date of report submissionISO 8601: YYYY-MM-DD2026-04-28

Common XML Validation Errors and Fixes

Error messageCauseFix
"Invalid decimal separator"Comma used instead of period (e.g., 25000,00)Replace all commas with periods in numeric fields
"Invalid date format"Date not in ISO 8601 format (e.g., 28/04/2026)Use YYYY-MM-DD format throughout
"CN code not found in Annex I"CN code not covered by CBAM or incorrect codeVerify CN code against CBAM Regulation 2023/956 Annex I
"Production volume cannot be zero"Zero entered for a quarter with no productionIf no production occurred, submit a nil return with a note in <Comments>
"Specific embedded emissions exceed maximum threshold"Calculated value is implausibly high — likely a unit errorCheck units — emissions must be in tCO2e, not kgCO2e
"Verifier ID not recognised"Verifier's ISO 14065 accreditation number not in the EU Commission's verifier registryConfirm the verifier's accreditation number with them and check the EU Commission's accredited verifier list
"File exceeds maximum size"XML file larger than 10MBSplit into multiple files by production unit or product line
"Encoding error"File not saved in UTF-8 encodingRe-save the XML file with UTF-8 encoding in your text editor

Step-by-Step XML Upload Process

  1. Prepare your XML file using the EU Commission's schema template (available in the O3CI portal under Resources → XML Templates)
  2. Validate the file using the O3CI portal's XML Validator tool (Tools → XML Validator → Upload file → Validate)
  3. Fix all validation errors — the portal will not accept files with any errors
  4. Log in to the O3CI portal with Admin Operator credentials
  5. Navigate to "Quarterly Reports" → "New Report" → "Upload XML"
  6. Select your validated XML file and click "Upload"
  7. Review the parsed data in the portal's preview screen — confirm all values are correct
  8. Click "Submit Report" — you receive a submission reference number
  9. Download and save the submission confirmation PDF for your compliance records

If XML Uploads Are Creating Compliance Risk

XML upload errors can delay your quarterly submissions and create compliance risk. If you are close to a reporting deadline and cannot resolve XML errors, consider storing your verified embedded carbon calculation at embeddedcarbonrecord.com as a permanent backup. Your EU buyers can access your verified data via a permanent URL while you resolve the portal issues.

Store Your Verified Embedded Carbon Record for CBAM Compliance →

← O3CI Complete Guide · O3CI vs Private Vault →