# PEPPOL-EN16931-R130 Fiyat baz birim kodu fatura edilen miktar birim koduyla eşleşmelidir

Peppol kuralı PEPPOL-EN16931-R130 uyarınca, bir fatura satırında BT-150 (BaseQuantity üzerindeki unitCode) alanında ürün fiyat baz miktar birim kodu belirtildiğinde, bu değer BT-130 (InvoicedQuantity üzerindeki unitCode) alanındaki fatura edilen miktar birim kodu ile birebir aynı olmalıdır. Aynı satırda farklı birim kodlarının karıştırılması (ör. miktar adet "H87" iken fiyatın kilogram "KGM" üzerinden verilmesi) otomatik fiyat denetiminde belirsizlik yaratır.

## Sorun açıklaması

> **HATA**: Peppol BIS Billing 3.0 kuralı (OpenPeppol)

## Bağlam ve önem

PEPPOL-EN16931-R130 yalnızca cbc:BaseQuantity mevcut olduğunda çalışır ve onun unitCode değerini fatura edilen miktarın unitCode değeriyle karşılaştırır. Aynı satırdaki farklı birimler birim fiyat hesabını belirsiz kılar; örneğin saat cinsinden bir miktarın adet başına fiyatlandırılması. Hata genellikle fiyat listesi sipariş satırından farklı bir birim tuttuğunda veya BaseQuantity içine C62 gibi varsayılan bir birim yazıldığında ortaya çıkar.

## Çözüm

ERP ürün kataloğunuzda veya birim dönüştürme ayarlarınızda fiyat baz miktarının birimini (BT-150) satır faturalama birimiyle (BT-130) uyumlu hale getirin. UBL 2.1’de <cbc:BaseQuantity unitCode="H87"> öğesinin <cbc:InvoicedQuantity unitCode="H87"> ile birebir aynı unitCode özniteliğini taşımasını sağlayın. Fiyat tek bir birim için geçerliyse cbc:BaseQuantity öğesini tamamen çıkarabilirsiniz.

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

## Geçerli örnekler

- InvoicedQuantity unitCode = "H87" (adet) ve BaseQuantity unitCode = "H87" (adet)
- InvoicedQuantity unitCode = "HUR" (saat) ve BaseQuantity unitCode = "HUR" (saat)

## Geçersiz örnekler

- InvoicedQuantity "HUR" (saat) iken Fiyat BaseQuantity unitCode = "C62" (birim) belirtiyor
- InvoicedQuantity "KGM" (kilogram) iken Fiyat BaseQuantity unitCode = "LTR" (litre) belirtiyor

## Kod örnekleri

### Geçerli XML
```
<cac:InvoiceLine>
  <cbc:ID>1</cbc:ID>
  <cbc:InvoicedQuantity unitCode="H87">100</cbc:InvoicedQuantity>
  <cac:Price>
    <cbc:PriceAmount currencyID="EUR">50.00</cbc:PriceAmount>
    <cbc:BaseQuantity unitCode="H87">100</cbc:BaseQuantity>
  </cac:Price>
</cac:InvoiceLine>
```

### Geçersiz XML
```
<cac:InvoiceLine>
  <cbc:ID>1</cbc:ID>
  <cbc:InvoicedQuantity unitCode="H87">100</cbc:InvoicedQuantity>
  <cac:Price>
    <cbc:PriceAmount currencyID="EUR">50.00</cbc:PriceAmount>
    <cbc:BaseQuantity unitCode="C62">100</cbc:BaseQuantity>
  </cac:Price>
</cac:InvoiceLine>
```

## Etkilenen alanlar

- [BT-130 Fatura edilen miktar birim kodu](/resources/xrechnung/bt-130-invoice-line-quantity-unit-of-measure-code)
- [BT-150 Ürün fiyat baz miktarı birim kodu](/resources/xrechnung/bt-150-item-price-base-quantity-unit-code)
- [BG-25 Fatura satırı](/resources/xrechnung/bt-126-invoice-line-identifier)

## İlgili kurallar

- [BR-23](/resources/kosit-validator-errors/br-23-invoice-line-unit-code-must-be-present)
- [BR-26](/resources/kosit-validator-errors/br-26-invoice-line-item-net-price-must-be-present)
- [PEPPOL-EN16931-R120](/resources/kosit-validator-errors/peppol-en16931-r120-line-net-amount-formula)

## 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-peppol/)
- [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ış.
