# PEPPOL-EN16931-R120 Fatura satırı net tutarı miktar çarpı birim net fiyat eksi satır indirimleri artı satır masraflarına eşit olmalıdır

Peppol kuralı PEPPOL-EN16931-R120 uyarınca, BT-131 (LineExtensionAmount) alanındaki fatura satırı net tutarı şu formülle tam matematiksel tutarlılık içinde olmalıdır: SatırNetTutarı = yuvarla((FaturaMiktarı * (BirimNetFiyat / BazMiktar)) - SatırİndirimleriToplamı + SatırMasraflarıToplamı, 2). Schematron kuralları para birimine bağlı bir tolerans (standart para birimleri için ±0.02 EUR, HUF için ±0.5) tanır. Yaygın hata nedenleri arasında dönüştürme sırasında satır indirimlerinin kaybolması, birim fiyatların erken yuvarlanması veya baz miktarın (BT-149) hesaba katılmaması yer alır.

## Sorun açıklaması

Peppol kuralı PEPPOL-EN16931-R120 uyarınca, BT-131 (LineExtensionAmount) alanındaki fatura satırı net tutarı şu formülle tam matematiksel tutarlılık içinde olmalıdır: SatırNetTutarı = yuvarla((FaturaMiktarı * (BirimNetFiyat / BazMiktar)) - SatırİndirimleriToplamı + SatırMasraflarıToplamı, 2). Schematron kuralları para birimine bağlı bir tolerans (standart para birimleri için ±0.02 EUR, HUF için ±0.5) tanır. Yaygın hata nedenleri arasında dönüştürme sırasında satır indirimlerinin kaybolması, birim fiyatların erken yuvarlanması veya baz miktarın (BT-149) hesaba katılmaması yer alır.

> **HATA**: XRechnung 3.0

## Bağlam ve önem

PEPPOL-EN16931-R120, hesaplanan satır net tutarı ile dışa aktarılan BT-131 değeri arasındaki aritmetik farklardan kaynaklanan en sık karşılaşılan Peppol ret sebeplerinden biridir.

## Çözüm

ERP faturalama veya PDF dönüştürme hattınızda birim fiyatları yüksek ondalık hassasiyetle (4-6 basamak) koruyun ve tüm satır indirim ve masraflarının BT-131 hesabına dahil edildiğinden emin olun. UBL 2.1 sözdiziminde 2 adet 100.00 fiyat ve 10.00 indirim için <cbc:LineExtensionAmount currencyID="EUR">190.00</cbc:LineExtensionAmount> olarak hesaplayın. CII sözdiziminde <ram:LineTotalAmount> alanını doldurun.

- validate
- convert

## Geçerli örnekler

- 2 Miktar x 100.00 EUR Birim fiyat eksi 10.00 EUR Satır indirimi sonucu BT-131 = 190.00 EUR
- 50 Miktar x 1.2550 EUR Birim fiyat (62.75 EUR) sonucu BT-131 = 62.75 EUR

## Geçersiz örnekler

- 2 x 100.00 EUR eksi 10.00 EUR indirim = 190.00 EUR iken satır indirimi hesaba katılmadığı için BT-131 = 200.00 EUR yazılmış
- Formül 190.00 EUR vermesine rağmen yuvarlama hatası nedeniyle BT-131 = 189.90 EUR dışa aktarılmış

## Kod örnekleri

### Geçerli XML
```
<cac:InvoiceLine>
  <cbc:ID>1</cbc:ID>
  <cbc:InvoicedQuantity unitCode="H87">2</cbc:InvoicedQuantity>
  <cbc:LineExtensionAmount currencyID="EUR">190.00</cbc:LineExtensionAmount>
  <cac:AllowanceCharge>
    <cbc:ChargeIndicator>false</cbc:ChargeIndicator>
    <cbc:Amount currencyID="EUR">10.00</cbc:Amount>
  </cac:AllowanceCharge>
  <cac:Price>
    <cbc:PriceAmount currencyID="EUR">100.00</cbc:PriceAmount>
  </cac:Price>
</cac:InvoiceLine>
```

### Geçersiz XML
```
<cac:InvoiceLine>
  <cbc:ID>1</cbc:ID>
  <cbc:InvoicedQuantity unitCode="H87">2</cbc:InvoicedQuantity>
  <cbc:LineExtensionAmount currencyID="EUR">200.00</cbc:LineExtensionAmount>
  <cac:AllowanceCharge>
    <cbc:ChargeIndicator>false</cbc:ChargeIndicator>
    <cbc:Amount currencyID="EUR">10.00</cbc:Amount>
  </cac:AllowanceCharge>
  <cac:Price>
    <cbc:PriceAmount currencyID="EUR">100.00</cbc:PriceAmount>
  </cac:Price>
</cac:InvoiceLine>
```

## Etkilenen alanlar

- [BT-131 Fatura satırı net tutarı](/resources/xrechnung/bt-131-invoice-line-net-amount)
- [BT-129 Fatura edilen miktar](/resources/xrechnung/bt-129-invoice-line-quantity)
- [BT-146 Ürün net fiyatı](/resources/xrechnung/bt-146-item-net-price)
- [BG-25 Fatura satırı](/resources/xrechnung)

## İlgili kurallar

- [BR-22](/resources/kosit-validator-errors/br-22-invoice-line-quantity-must-be-present)
- [BR-24](/resources/kosit-validator-errors/br-24-invoice-line-net-amount-must-be-present)
- [PEPPOL-EN16931-R046](/resources/kosit-validator-errors/peppol-en16931-r046-item-net-price-math)

## Doğrulama araçları

- [Resmi KoSIT doğrulayıcı](https://erechnungsvalidator.service-bw.de/): XRechnung dosyalarınızı tüm BR-DE kurallarına göre doğrulayı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://xeinkauf.de/xrechnung/)
- [Test paketi](https://github.com/itplr-kosit/xrechnung-testsuite)
- [Tüm doğrulama hataları](/resources/kosit-validator-errors): Tüm Alman XRechnung doğrulama kurallarına genel bakış.
