# BR-CO-05 Belge indirimi gerekçesi ve kodu uyuşmalıdır

Belge düzeyi indirim gerekçe kodu (BT-98) ile belge düzeyi indirim gerekçesi (BT-97) aynı indirim türünü göstermelidir.

## Sorun açıklaması

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

## Bağlam ve önem

EN 16931 bu kuralı tanımlar, ancak içeriği makineyle kontrol edilemez. KoSIT doğrulayıcısının kullandığı UBL ve CII için EN 16931 doğrulama dosyaları, BR-CO-05 için yalnızca her zaman geçen bir yer tutucu denetim içerir; bu nedenle BR-CO-05 hiçbir doğrulama raporunda görünmez. Gereklilik veriler için yine de geçerlidir: alıcı indirimi koduna (BT-98) göre kaydeder ve metni (BT-97) okur. Kod 95 (İskonto) ile "Geç teslim cezası" metni gibi çelişkili bir çift, manuel incelemeye veya tartışmalı bir kesintiye yol açar.

## Çözüm

Serbest metin gerekçesinin (BT-97) ve gerekçe kodunun (BT-98) aynı indirimi tanımlamasını sağlayın; örneğin kod 95 (İskonto) ile "Miktar iskontosu" metni. Önce UNCL 5189 kodunu seçin, ardından anlamına uyan bir metin kullanın.

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

## Geçerli örnekler

- BT-98 = 95 (İskonto) ve BT-97 = "Miktar iskontosu"

## Geçersiz örnekler

- BT-98 = 95 (İskonto) ve BT-97 = "Geç teslim cezası"

## Kod örnekleri

### Geçerli XML
```
<cac:AllowanceCharge>
  <cbc:ChargeIndicator>false</cbc:ChargeIndicator>
  <cbc:AllowanceChargeReasonCode>95</cbc:AllowanceChargeReasonCode>
  <cbc:AllowanceChargeReason>Volume discount</cbc:AllowanceChargeReason>
  <cbc:Amount currencyID="EUR">10.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>false</cbc:ChargeIndicator>
  <cbc:AllowanceChargeReasonCode>95</cbc:AllowanceChargeReasonCode>
  <cbc:AllowanceChargeReason>Late delivery penalty</cbc:AllowanceChargeReason>
  <cbc:Amount currencyID="EUR">10.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

- [BT-97 Belge düzeyi indirim gerekçesi](/resources/xrechnung/bt-97-document-level-allowance-reason)
- [BT-98 Belge düzeyi indirim gerekçe kodu](/resources/xrechnung/bt-98-document-level-allowance-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)

## 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ış.
