Bundle-Preisauszeichnung via REST-API

BundlePreisauszeichnung via
REST-API
Version:
1.0
Datum:
30.11.2015
Status:
Freigegeben
Das Bundesfinanzministerium (BMF) hat festgelegt, dass die Entgelte für
Teilprodukte sogenannter Bundles ab dem 1. Januar 2016 getrennt ausgewiesen
und besteuert werden müssen. Für ein Bundle-Produkt ist es dadurch nicht möglich,
einen eindeutigen MwSt-Satz anzugeben, da sich der Steuersatz nach den
enthaltenen Steuersätzen der Teilprodukte richtet. Diese Herangehensweise wird als
MwSt-Splitting bezeichnet. Folglich muss bei einem Bundle mit MwSt-Splitting für
jedes Teilprodukt der Teilpreis innerhalb des Bundles sowie der zugehörige MwStSatz dieses Teilproduktes angegeben werden. Ein Bundle-Produkt besitzt somit
gemäß der neuen Gesetzgebung in Deutschland immer ausschließlich einen BruttoGesamtpreis ohne explizite MwSt-Angabe.
Bundle-Preisauszeichnung via REST-API
1/5
1. Bundle-Zusammensetzung und Identifikation von BundleTeilprodukten
Ein Bundle besteht aus Teilprodukten, die entweder


einzeln vertrieben werden oder
nur als Bestandteil dieses Bundles erhältlich sind.
Teilprodukte, die einzeln vertrieben werden, sind anhand ihrer GTIN zu identifizieren.
Teilprodukte, die nur als Bestandteil eines Bundles erhältlich sind, erhalten einen
Pseudoidentifier auf Basis der Bundle-GTIN, Bsp.: 9783131464712-1.
2. Ausweisung von Bundle-Preisen
Abhängig vom Austauschformat können der Bundle-Preis und die zugehörigen
Bundle-Teilpreise über verschiedenen Datensätzen verteilt abgelegt sein.
Beispielsweise ist dies im prominentesten Austauschformat des Buchhandels der
Fall: ONIX 2.1.
Um ein Aggregieren mehrerer Produkte bei Verwendung der REST-API zu
vermeiden, werden alle relevanten Informationen zum Bundle-Preis sowie allen
Teilpreisen direkt im Bundle-Datensatz aufgeführt. Diese Informationen werden nur
in den Produktdetails der APIs angezeigt, nicht jedoch in den Trefferlisten.
Enthaltene Informationen:


Brutto-Gesamtpreis des Bundles
für jedes Teilprodukt
o Identifier (GTIN für einzeln erhältlich bzw. proprietärer Identifier für nicht
einzeln erhältliche Produkte)
o aktuell gültiger Brutto-Preis, inkl. MwSt-Satz, Land und Währung
o Produktform
In der REST-API werden die Informationen zu Teilprodukten inkl. der Preisangabe
innerhalb des Bundles in einem ContainedItem-Composite pro Teilprodukt
ausgewiesen. Dies gilt für zwei- und mehrteilige Bundles, um eine identische
Verarbeitung der Teilpreise des Bundles zu ermöglichen.
Bundle-Preisauszeichnung via REST-API
2/5
2.1. Bundle-Preise in der REST-API
2.1.1. Brutto-Gesamtpreis des Bundles
Die Preisauszeichnung eines Bundles wird analog zu ONIX 2.1 für zweiteilige und
mehrteilige Bundles unterschiedlicher Form sein.
Für ein zweiteiliges Bundle werden im Price-Composite neben dem BruttoGesamtpreis des Bundles (value) auch die Preisinformationen zu den beiden
enthaltenen Einzelprodukten aufgeführt. Unabhängig davon werden die aktuellen
Preise der Teilprodukte, wie auch für mehrteilige Bundles, redundant in
ContainedItem-Composites hinterlegt.
Im mehrteiligen Bundle wird im Price-Composite lediglich der Brutto-Gesamtpreis
des Bundles angegeben. Die einzelnen Teilpreise und MwSt-Sätze der Teilprodukte
sind ausschließlich in den ContainedItem-Composites zu finden.
Nachfolgend finden Sie eine Übersicht über relevante Elemente im Price-Composite.
Feld
prices
Bezeichnung / Inhalt
Composite Price in der JSON-Ausgabe der REST-API
taxRatePercent
MwSt.-Satz in Prozent
type
value
country
currency
validFrom
validUntil
State
Preistyp
Brutto-Gesamtpreis (für das Bundle)
Land
Währung
gültig ab
gültig bis
Preisstatus
MwSt-Satz - Teilprodukt 1
 Achtung: dieser wird in Nicht-Bundle-Produkten
taxRate
für das Produkt selbst verwendet
taxRatePercent
MwSt-Satz in Prozent - Teilprodukt 1*
taxableAmount
Netto-Betrag – Teilprodukt 1*
taxAmount
Steuerbetrag – Teilprodukt 1*
taxRate2
MwSt-Satz - Teilprodukt 2*
taxRatePercent2
MwSt-Satz in Prozent - Teilprodukt 2*
taxableAmount2
Netto-Betrag – Teilprodukt 2*
taxAmount2
Steuerbetrag – Teilprodukt 2*
fixedRetailPrice
Unterliegt Ladenpreisbindung
provisional
Vorläufiger Preis
referencePrice
Teil der Preisreferenz
* neu hinzugefügte Inhalte
Bundle-Preisauszeichnung via REST-API
3/5
Beispiel: zweiteiliges Bundle
"prices": [
{
"type": "04",
"value": 22.99,
"country": "DE",
"currency": "EUR",
"validFrom": null,
"validUntil": null,
"state": "02",
"taxRate": "R",
"taxRatePercent": 7,
"taxableAmount": 17.19,
"taxAmount": 1.2,
"taxRate2": "S",
"taxRatePercent2": 19,
"taxableAmount2": 3.87,
"taxAmount2": 0.73,
"fixedRetailPrice": true,
"provisional": false,
"referencePrice": true
}
]
Beispiel: mehrteiliges Bundle
"prices": [
{
"type": "04",
"value": 22.99,
"country": "DE",
"currency": "EUR",
"validFrom": null,
"validUntil": null,
"state": "02",
"taxRate": null,
"taxRatePercent": null,
"taxableAmount": null,
"taxAmount": null,
"taxRate2": null,
"taxRatePercent2": null,
"taxableAmount2": null,
"taxAmount2": null,
"fixedRetailPrice": true,
"provisional": false,
"referencePrice": true
}
]
2.1.2. Informationen zu Teilprodukten des Bundles
In einem Bundle-Produkt findet sich die Information zu enthaltenen Teilprodukten in
den ContainedItem-Composites. Neben den üblichen Feldern des ContainedItemComposites wird zusätzlich der Identifier des Teilproduktes sowie der Brutto-Preis
des Teilproduktes im Bundle mit zugehörigem MwSt-Satz, Land und Währung
angegeben.
Detaillierte Informationen zu den Teilprodukten (sofern das ContainedItem einen
Identifier vom Type GTIN-13 enthält) können über die bereits zur Verfügung
stehenden Schnittstellen der REST-API im Produkt mit dieser GTIN selbst
Bundle-Preisauszeichnung via REST-API
4/5
entnommen werden. Hierzu gehören z. B. zukünftige Preise des Teilproduktes
innerhalb des Bundles.
Feld
Bezeichnung / Inhalt
containedItem
productIdentifi
erType
Composite ContainedItem in der JSON-Ausgabe der REST-API
Typ des ProduktIdentifiers*
 01 = Proprietär
 03 = GTIN-13
Identifier (proprietär oder GTIN-13)*
productIdentifi
erValue
type
value
country
currency
taxRate
Produktform (Onix Feld b012)
akutell gültiger Brutto-Preis des Teilproduktes innerhalb des
Bundles*
Land*
Währung*
MwSt.*
 Z = keine
 R = reduzierter Satz
 S = voller Satz
* neu hinzugefügte Inhalte
Das ContainedItem-Component sieht für zwei- wie auch für mehrteilige Bundles wie
folgt aus:
"containedItems": [
{
"type": "DG",
"productFormDetail": null,
"numberOfPieces": 1,
"productIdentifierType": "01",
"productIdentifierTypeName": null,
"productIdentifierValue": "9783131464712-1",
"value": 18.39,
"country": "DE",
"currency": "EUR",
"taxRate": "R"
}
]
Bundle-Preisauszeichnung via REST-API
5/5