# BR-CO-22 Belge ek ücreti bir gerekçe veya gerekçe kodu gerektirir

Her belge düzeyi ek ücret (BG-21), bir belge düzeyi ek ücret gerekçesi (BT-104) veya bir belge düzeyi ek ücret gerekçe kodu (BT-105) ya da her ikisini içermelidir.

## Sorun açıklaması

> **HATA**: EN 16931 hesaplama ve tutarlılık kuralı (BR-CO)

## Bağlam ve önem

Bu EN 16931 kuralı, alıcının ek tutarın ne için olduğunu görebilmesi için her belge düzeyi ek ücretin nedeninin metin veya kod olarak belirtilmesini gerektirir. Hata çoğunlukla nakliye, ambalaj veya işlem masraflarının yalnızca tutar olarak dışa aktarılmasından kaynaklanır.

## Çözüm

Her belge düzeyi ek ücret için UNCL 7161’den bir gerekçe (BT-104) ve/veya gerekçe kodu (BT-105) ekleyin: UBL’de cbc:AllowanceChargeReason / cbc:AllowanceChargeReasonCode, CII’de ram:SpecifiedTradeAllowanceCharge içinde ram:Reason / ram:ReasonCode.

- [XML doğrula](/tr/xrechnung-validator?source=resource&rule=BR-CO-22)
- [Faturayı dönüştür](/tr/pdf-to-xrechnung?source=resource&rule=BR-CO-22)

## Geçerli örnekler

- BT-105 = FC ve BT-104 = "Navlun ücreti" içeren belge ek ücreti

## Geçersiz örnekler

- BT-104 ve BT-105 olmadan 15,00 tutarlı belge ek ücreti

## Kod örnekleri

### Geçerli XML
```
<cac:AllowanceCharge>
  <cbc:ChargeIndicator>true</cbc:ChargeIndicator>
  <cbc:AllowanceChargeReasonCode>FC</cbc:AllowanceChargeReasonCode>
  <cbc:AllowanceChargeReason>Freight charge</cbc:AllowanceChargeReason>
  <cbc:Amount currencyID="EUR">15.00</cbc:Amount>
  <cac:TaxCategory>
    <cbc:ID>S</cbc:ID>
    <cbc:Percent>19</cbc:Percent>
    <cac:TaxScheme><cbc:ID>VAT</cbc:ID></cac:TaxScheme>
  </cac:TaxCategory>
</cac:AllowanceCharge>
```

### Geçersiz XML
```
<cac:AllowanceCharge>
  <cbc:ChargeIndicator>true</cbc:ChargeIndicator>
  <cbc:Amount currencyID="EUR">15.00</cbc:Amount>
  <cac:TaxCategory>
    <cbc:ID>S</cbc:ID>
    <cbc:Percent>19</cbc:Percent>
    <cac:TaxScheme><cbc:ID>VAT</cbc:ID></cac:TaxScheme>
  </cac:TaxCategory>
</cac:AllowanceCharge>
```

## Etkilenen alanlar

- [BG-21 Belge düzeyi ek ücretler](/resources/xrechnung/bt-99-document-level-charge-amount)
- [BT-104 Belge düzeyi ek ücret gerekçesi](/resources/xrechnung/bt-104-document-level-charge-reason)
- [BT-105 Belge düzeyi ek ücret gerekçe kodu](/resources/xrechnung/bt-105-document-level-charge-reason-code)

## İlgili kurallar

- [BR-CO-06](/resources/kosit-validator-errors/br-co-06-charge-reason-code-match)
- [BR-CO-21](/resources/kosit-validator-errors/br-co-21-document-allowance-reason-required)
- [BR-CO-24](/resources/kosit-validator-errors/br-co-24-line-charge-reason-required)

## Doğrulama araçları

- [Resmi KoSIT doğrulayıcı](https://github.com/itplr-kosit/validator): EN 16931 ve XRechnung kurallarını denetlemek için resmi KoSIT doğrulayıcısını XRechnung yapılandırmasıyla çalıştırın.
- [PDF’yi XRechnung’e dönüştür](/pdf-to-xrechnung): Dönüştürme sırasında doğrulama hatalarını bulun ve her düzeltmeyi inceleyin.

## İlgili kaynaklar

- [Resmi spesifikasyon](https://docs.peppol.eu/poacc/billing/3.0/rules/ubl-tc434/)
- [Test paketi](https://github.com/itplr-kosit/xrechnung-testsuite)
- [Tüm doğrulama hataları](/resources/kosit-validator-errors): Burada açıklanan EN 16931, XRechnung ve Peppol doğrulama kurallarına genel bakış.
