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

Fatura satırı indirim gerekçe kodu (BT-140) ile fatura satırı indirim gerekçesi (BT-139) aynı indirim gerekçesi türünü göstermelidir.

## Sorun açıklaması

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

## Bağlam ve önem

Bu kural, BR-CO-05’in satır düzeyindeki karşılığıdır. KoSIT doğrulayıcısının kullandığı UBL ve CII için EN 16931 doğrulama dosyaları, BR-CO-07 için yalnızca her zaman geçen bir yer tutucu denetim içerir; bu nedenle BR-CO-07 hiçbir doğrulama raporunda görünmez. Gereklilik yine de geçerlidir: gerekçe kodu (BT-140) ve metni (BT-139) birbiriyle çelişen bir satır indirimi, örneğin kod 95 (İskonto) ile "Ambalaj ek ücreti" metni, alıcıda manuel incelemeye yol açar. Tipik neden, ERP’de negatif indirim olarak girilmiş bir ek ücrettir.

## Çözüm

Fatura satırı indirimi içinde serbest metin gerekçesinin (BT-139) ve gerekçe kodunun (BT-140) aynı indirimi tanımlamasını sağlayın; örneğin kod 95 (İskonto) ile "Numune iskontosu" metni. Tutar aslında bir ek ücretse, onu fatura satırı ek ücreti (BG-28) olarak gösterin.

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

## Geçerli örnekler

- BT-140 = 95 (İskonto) ve BT-139 = "Numune iskontosu"

## Geçersiz örnekler

- BT-140 = 95 (İskonto) ve BT-139 = "Ambalaj ek ücreti"

## Kod örnekleri

### Geçerli XML
```
<cac:InvoiceLine>
  <cac:AllowanceCharge>
    <cbc:ChargeIndicator>false</cbc:ChargeIndicator>
    <cbc:AllowanceChargeReasonCode>95</cbc:AllowanceChargeReasonCode>
    <cbc:AllowanceChargeReason>Sample discount</cbc:AllowanceChargeReason>
    <cbc:Amount currencyID="EUR">2.00</cbc:Amount>
  </cac:AllowanceCharge>
</cac:InvoiceLine>
```

### Geçersiz XML
```
<cac:InvoiceLine>
  <cac:AllowanceCharge>
    <cbc:ChargeIndicator>false</cbc:ChargeIndicator>
    <cbc:AllowanceChargeReasonCode>95</cbc:AllowanceChargeReasonCode>
    <cbc:AllowanceChargeReason>Packaging surcharge</cbc:AllowanceChargeReason>
    <cbc:Amount currencyID="EUR">2.00</cbc:Amount>
  </cac:AllowanceCharge>
</cac:InvoiceLine>
```

## Etkilenen alanlar

- [BT-139 Fatura satırı indirim gerekçesi](/resources/xrechnung/bt-139-invoice-line-allowance-reason)
- [BT-140 Fatura satırı indirim gerekçe kodu](/resources/xrechnung/bt-140-invoice-line-allowance-reason-code)

## İlgili kurallar

- [BR-CO-05](/resources/kosit-validator-errors/br-co-05-allowance-reason-code-match)
- [BR-CO-23](/resources/kosit-validator-errors/br-co-23-line-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ış.
