Billing Data JSON

Billing Data JSON #

Die untenstehenden Informationen enthalten Details zu den JSON Daten, die beim Herunterladen der Daten für eine bestimmte Rechnung bereitgestellt werden. Die JSON Daten liefern die detaillierteste Informationsebene, einschließlich Einträge für jede verwendete Benutzerlizenz sowie Zusammenfassungseinträge zu Rechnungssummen und anfallenden Steuern.

Schema der Rechnungsdetails #

Der Haupteintrag JSON enthält Details zur Rechnungsnummer, zum Zeitraum und zu Datum. Es enthält außerdem ein Array der einzelnen Rechnungsposten, die sich auf jede abgerechnete Lizenz beziehen.

Legende Beschreibung Typ
Mieterort Die ID des übergeordneten Reseller-Kontos String
invoiceid Eine eindeutige Nummer, um eine bestimmte Rechnung zu identifizieren String
Rechnungsnummer Die auf der Rechnung PDF angezeigt wird String
Kontoname Der Firmenname des Mutter-Reseller-Kontos String
Abrechnungszeitraum starten Das Datum, an dem der Abrechnungszeitraum beginnt String
billingperiodend Das Ende, an dem der Abrechnungszeitraum endet String
Rechnungswert Der Gesamtwert der Rechnung Double
Rechnungsposten Eine Sammlung von Rechnungsposten Array (Rechnungsposten)

JSON Rechnungspostenschema #

Jeder Rechnungsposteneintrag in der JSON Abrechnungsdaten liefert die unten aufgeführten Parameter. Sie beziehen sich auf eine individuelle Nutzung durch einen Nutzer mit den entsprechenden Datumsbereichen.

Legende Beschreibung Typ
id Eine einzigartige ID für den individuellen Kauf String
Quantity1 Die verwendete Menge Double
Wert Die Kosten des Gegenstands Double
fromdate Das Datum, ab dem der Artikel abgerechnet wird String
Bis heute Das Datum, an das der Artikel abgerechnet wird String
Berechnungsreihenfolge Fortlaufende Nummer, die die Reihenfolge angibt, in der die Rechnungsposten verarbeitet werden sollen Int
operatorused Zeigt an, wie der Wert des Rechnungspostens auf die Rechnung angewendet wird Rechnungsposten-Operator
operatorvalueused Gibt den Wert des ADJUSTPERCENTAGE-Operators an. Double
producttagname Der Name des Features/Produkts, für das sich der Rechnungsposten befindet. Dies ist im Format '{PRODUCT_NAME} #{PART_NUMBER}' String
billingoutputtags Angabe, ob der Rechnungsposten für einen Kauf oder ein Zusammenfassungsfeld ist. Array(String)
Stringvalues Liefert Informationen über den Kunden und Endnutzer, für den der Kauf bestimmt ist KeyValuePair<string,string>
Numerische Werte Liefert Informationen über den Kunden und Endnutzer, für den der Kauf bestimmt ist KeyValuePair<string,double>

Rechnungspostoperatoren #

Der Operator für jeden Artikel gibt an, wie der Artikel auf die Rechnung angewendet wird. PurchaseResult enthält eine PRICE zur Identifizierung der Kosten des Artikels. Artikel mit anderen Ausgabe-Tags geben an, ob sie den Wert der Rechnung summieren oder einen Prozentwert auf frühere Posten wie Umsatzsteuer anwenden.

Artikel Beschreibung
PREIS Zeigt an, dass der Rechnungsposten den Einheitspreis eines Artikels anzeigt
SUM Zeigt an, dass der Rechnungsposten insgesamt mehrere Posten zeigt
ANPASSUNGSPROZENTSATZ Zeigt an, dass der Rechnungsposten eine prozentuale Anpassung der SUMME anzeigt, was in der Regel darauf hinweist, dass die Mehrwertsteuer angewendet wird

Abrechnungsausgabe-Tag-Posten #

Abrechnungsausgabe-Tags werden verwendet, um anzuzeigen, ob die Dateneingabe sich auf einen Kauf bezieht oder ob es sich um einen zusammenfassenden Eintrag handelt, der Informationen über die gesamte Rechnung liefert.

Artikel Beschreibung
PurchaseResult Zeigt an, dass der Rechnungsposten ein steuerpflichtiger Kauf ist
Zusammenfassung Zeigt an, dass der Rechnungsposten eine Zusammenfassung der Einkäufe ist und Informationen über die Gesamtsumme der Rechnung liefert. Wenn es allein ohne die Tags 'TotalVAT' oder 'TotalInclVAT' ist, zeigt es die Gesamtsumme der Rechnung vor der Mehrwertsteuer an.
TotalInklMVA Zeigt an, dass der Rechnungsposten den Gesamtbetrag der Rechnung einschließlich der anfallenden Mehrwertsteuer anzeigt
TotalMVA Zeigt an, dass der Rechnungsposten die gesamte anfallende Mehrwertsteuer für die Rechnung anzeigt

String-Wertelemente #

Die String-Value-Items liefern Informationen, die spezifisch für den Kunden und Endnutzer des gekauften Artikels sind.

Legende Beschreibung
TenantCode2 Die Reseller-Mieter-ID
TenantCodeext2 Die Referenz des Wiederverkäufers für den Wiederverkäufer
TenantName2 Der Name des Wiederverkäufers String
ResellerCode Die Mieter-ID des Wiederverkäufers
ResellerCodeExt Die erweiterte Referenz für den Wiederverkäufer
ResellerName Der Name des Wiederverkäufers
UserId Die ID des Benutzers
Benutzername Der Benutzername des Nutzers
Rolle Der Rollenschlüssel für den abgestellten Posten

Numerische Wertposten #

Die numerischen Wertposten liefern Informationen, die spezifisch für den Kunden und den Endnutzer des gekauften Artikels sind.

Legende Beschreibung
customer_licence_count Die Gesamtzahl dieser Lizenzen, die der Kunde besitzt

Beispiel JSON Ausgabe #

{
	"tenantId": "00000000-0000-0000-0000-123456789123",
	"invoiceId": "00000000000000000000000a",
	"invoiceNumber": "9000004",
	"accountName": "Beispiel Tenant 1",
	"billingPeriodStart": "2020-04-01T00:00:00.0000000",
	"billingPeriodEnd": "2020-04-30T23:59:0000000",
	"invoiceDate": "2020-04-09T00:00:00.0000000",
	"invoiceValue": 17,50,
	"invoiceItems": \[
		{
			"id": "000000000000000000000001",
			"Menge": 1,0,
			"Wert": 1,25,
			"fromDate": "2020-04-01T00:00:00.000+00:00",
			"toDate": "2020-04-30T23:59:59.000+00:00",
			"BerechnungOrdnung": 1,
			"operatorUsed": "PRICE",
			"operatorValueUsed": 1.25,
			"productTagName": "Essential User #XDM00001",
			"billingOutputTags": ["PurchaseResult"][ "PurchaseResult" ],
			"stringValues": [
				{
					"Name": "Rolle",
					"value": "customer.user.pbx"
				},
				{
					"name": "ResellerCode",
					"Wert": "00000000-0000-0000-00000-000000002222"
				},
				{
					"name": "ResellerCodeExt",
					"Value": "Reseller Ref 1"
				},
				{
					"name": "ResellerName",
					"Value": "ABC Reseller"
				},
				{
					"name": "TenantCode",
					"Wert": "00000000-0000-0000-00000-00000000111"
				},
				{
					"name": "TenantCodeExt",
					"Value": "Custom Ref 1"
				},
				{
					"name": "TenantName",
					"Wert": "Beispielkunde 1"
				},
				{
					"name": "UserId",
					"Wert": "00000000-0000-0000-00000-0000000001"
				},
				{
					"name": "UserName",
					"Wert": "[email protected]"
				}
			][
				{
					"name": "Role",
					"value": "customer.user.pbx"
				},
				{
					"name": "ResellerCode",
					"value": "00000000-0000-0000-0000-000000000222"
				},
				{
					"name": "ResellerCodeExt",
					"value": "reseller ref 1"
				},
				{
					"name": "ResellerName",
					"value": "ABC Reseller"
				},
				{
					"name": "TenantCode",
					"value": "00000000-0000-0000-0000-000000000111"
				},
				{
					"name": "TenantCodeExt",
					"value": "custom ref 1"
				},
				{
					"name": "TenantName",
					"value": "Example Customer 1"
				},
				{
					"name": "UserId",
					"value": "00000000-0000-0000-0000-000000000001"
				},
				{
					"name": "UserName",
					"value": "[email protected]"
				}
			],
			"numericValues": [
				{
					"name": "customer_licence_count",
					"Wert": 1
				}
			][
				{
					"name": "customer_licence_count",
					"value": 1
				}
			]
		},
		{
			"id": "000000000000000000000003",
			"Menge": 1,0,
			"Wert": 15,0,
			"fromDate": "2020-04-01T00:00:00.000+00:00",
			"toDate": "2020-04-30T23:59:59.000+00:00",
			"BerechnungOrdnung": 3,
			"operatorUsed": "PRICE",
			"operatorValueUsed": 15,00,
			"productTagName": "Real-Time Supervisor #XDM00010",
			"billingOutputTags": ["PurchaseResult"][ "PurchaseResult" ],
			"stringValues": [
				{
					"Name": "Rolle",
					"value": "customer.user.supervisorl2"
				},
				{
					"name": "ResellerCode",
					"Wert": "00000000-0000-0000-00000-000000002222"
				},
				{
					"name": "ResellerCodeExt",
					"Value": "Reseller Ref 1"
				},
				{
					"name": "ResellerName",
					"Value": "ABC Reseller"
				},
				{
					"name": "TenantCode",
					"Wert": "00000000-0000-0000-00000-00000000111"
				},
				{
					"name": "TenantCodeExt",
					"Value": "Custom Ref 1"
				},
				{
					"name": "TenantName",
					"Wert": "Beispielkunde 1"
				},
				{
					"name": "UserId",
					"Wert": "00000000-0000-0000-00000-0000000001"
				},
				{
					"name": "UserName",
					"Wert": "[email protected]"
				}
			][
				{
					"name": "Role",
					"value": "customer.user.supervisorl2"
				},
				{
					"name": "ResellerCode",
					"value": "00000000-0000-0000-0000-000000000222"
				},
				{
					"name": "ResellerCodeExt",
					"value": "reseller ref 1"
				},
				{
					"name": "ResellerName",
					"value": "ABC Reseller"
				},
				{
					"name": "TenantCode",
					"value": "00000000-0000-0000-0000-000000000111"
				},
				{
					"name": "TenantCodeExt",
					"value": "custom ref 1"
				},
				{
					"name": "TenantName",
					"value": "Example Customer 1"
				},
				{
					"name": "UserId",
					"value": "00000000-0000-0000-0000-000000000001"
				},
				{
					"name": "UserName",
					"value": "[email protected]"
				}
			],
			"numericValues": [
				{
					"name": "customer_licence_count",
					"Wert": 1
				}
			][
				{
					"name": "customer_licence_count",
					"value": 1
				}
			]
		},
		{
			"id": "000000000000000000000004",
			"Menge": 3,0,
			"Wert": 17,50,
			"fromDate": "2020-04-01T00:00:00.000+00:00",
			"toDate": "2020-04-30T23:59:59.000+00:00",
			"BerechnungOrdnung": 4,
			"operatorUsed": "SUM",
			"operatorValueUsed": 0,0,
			"productTagName": "Alle Produkte",
			"billingOutputTags": ["Summary", "Total", "GL", "GL_Entry:0000; Quelle;"][ "Summary", "Total", "GL", "GL_Entry:0000;credit;" ],
			"stringValues": [][ ]
		},
		{
			"id": "000000000000000000000005",
			"Menge": 3,0,
			"Wert": 17,50,
			"fromDate": "2020-04-01T00:00:00.000+00:00",
			"toDate": "2020-04-30T23:59:59.000+00:00",
			"BerechnungOrdnung": 5,
			"operatorUsed": "ADJUSTPERCENTAGE",
			"operatorValueUsed": 0,0,
			"productTagName": "Alle Produkte",
			"billingOutputTags": ["TotalInclVAT", "Summary", "GL_Balance", "GL_Entry:2222; Debit; Schuldner"][ "TotalInclVAT", "Summary", "GL_Balance", "GL_Entry:2222;debit;Debtors" ],
			"stringValues": [][ ]
		},
		{
			"id": "000000000000000000000006",
			"Menge": 345,0,
			"Wert": 0,0,
			"fromDate": "2020-04-01T00:00:00.000+00:00",
			"toDate": "2020-04-30T23:59:59.000+00:00",
			"BerechnungOrdnung": 6,
			"operatorUsed": "ADJUSTPERCENTAGE",
			"operatorValueUsed": 0,0,
			"productTagName": "Alle Produkte",
			"billingOutputTags": ["TotalVAT", "Summary", "GL_VAT", "VAT:S", "GL_Entry:1111; Anerkennung; VAT"][ "TotalVAT", "Summary", "GL_VAT", "VAT:S", "GL_Entry:1111;credit;VAT" ],
			"stringValues": [][ ]
		}
	],
	"invoiceType": 0
}

  1. Wenn der Rechnungsbuch eine Gutschrift ist, ist die Summe negativ. ↩︎

  2. Die Felder 'TenantCode', 'TenantCodeExt' und 'TenantName' werden mit Informationen über das Kundenkonto ausgefüllt. ↩︎