Technische Information
Dieses Dokument beschreibt die technischen Grundlagen von JustOn.
JustOn Billing & Invoice Management ist eine Software zur Erzeugung und Verwaltung elektronischer Rechnungen.
Als Grundlage für die Fakturierung erfasst und prüft JustOn Kunden- und Vertragsdaten. So werden automatisch Kosten erfasst, dazu wird die Rechnung erstellt, deren Prüfung und Freigabe durchgeführt sowie der Rechnungsversand ausgelöst. Zusätzlich unterstützt JustOn die Archivierung der erstellten Rechnungen und ggf. die Registrierung von Buchungsvorgängen in angeschlossenen Systemen.
Darüber hinaus kann JustOn die Zahlungsabwicklung verfolgen und auf dieser Basis das Forderungsmanagement übernehmen.
Info
JustOn läuft als integrierte Applikation in Salesforce Platform, der cloud-basierten Software-Entwicklungs- und Betriebsplattform von Salesforce.
Plattform
Software | Beschreibung |
---|---|
Salesforce Platform | Software-Entwicklungs- und Betriebsplattform von Salesforce |
Die Plattform für JustOn ist die cloud-basierte PaaS-Infrastruktur Salesforce Platform. Betrieb, Pflege und Wartung der (weltweit verteilten) Rechenzentren erfolgt durch Salesforce. Anwender profitieren somit vom bewährten und regelmäßig auditierten Schutzniveau des Plattformbetreibers Salesforce. Alle Rechenzentren und Dienste von Salesforce sind zertifiziert nach ISO 27001, SAS 70 Type II, PCI-DSS und Systrust.
Integration von JustOn als App in Salesforce Platform
Die cloud-basierte PaaS-Infrastruktur Salesforce Platform ist eine Hochverfügbarkeitsplattform. Die Verfügbarkeit der einzelnen Rechenzentren ist auf https://trust.salesforce.com öffentlich einsehbar.
Salesforce Platform ist im Hinblick auf die Vorgaben des § 9 BDSG und Anlagen durch TÜV Rheinland i-sec GmbH zertifiziert. Salesforce hat von den Aufsichtsbehörden anerkannte Binding Corporate Rules und bietet damit die erforderlichen Garantien zur Einhaltung gesetzlicher Vorgaben von Datenschutz und Datensicherheit. Eine Einsichtnahme in Nutzerdaten durch Salesforce-Mitarbeiter ist ausgeschlossen.
Weitere Informationen zur Cloud-Plattform von Salesforce finden Sie in den App Cloud-FAQ.
Faktura-System
Software | Beschreibung |
---|---|
JustOn | Anwendung zur Fakturierung mit Forderungsmanagement, in Salesforce Platform-Cloud integriert |
JustOn ist eine SaaS-Anwendung, die auf der cloud-basierten PaaS-Infrastruktur Salesforce Platform aufsetzt.
JustOn ist mit den auf Salesforce Platform zur Verfügung stehenden Mitteln entwickelt und damit von Anfang an vollständig in die Entwicklungs- und Betriebsplattform von Salesforce integriert in Bezug auf
- Sicherheit
- Business-Logik
- Datenspeicherung und Datenaustausch
- Benutzeroberfläche
Weitere Informationen zur App-Integration in Salesforce Platform finden Sie in Integration Patterns and Practices.
Der Betrieb und die Datenspeicherung von JustOn erfolgt in europäischen Rechenzentren. Das aktuelle Rechenzentrum ist dem URL-Präfix der JustOn-Applikation zu entnehmen (EU0-EU16).
Rechnungserzeugung und Buchungsvorschläge
Grundsätzlich erfolgt das Erzeugen von Rechnungen und das Schreiben von Buchungsvorschlägen in drei Schritten:
- Erzeugen der Entwurfsrechnung: Neue Rechnungen haben den Status Entwurf. Entwurfsrechnungen können geprüft und ggf. überarbeitet werden.
- Finalisieren der Rechnung: Mit dem Finalisieren wird der Status auf Offen gesetzt und die Rechnung damit wirksam, d.h. zur Zahlung fällig.
- Erzeugen des Buchungsvorschlags: Mit dem Finalisieren schreibt JustOn die Rechnungsdetails in Buchungsvorschläge, die Anwender je nach Anforderung in angeschlossene Buchhaltungssysteme wie z.B. DATEV exportieren können.
Buchungsperiode bzw. Buchungsdatum werden standardmäßig auf Basis des Rechnungslaufs ermittelt. Anwenderspezifisch lassen sich hierfür auch andere Daten konfigurieren, z.B. Leistungsperiode oder Fälligkeitsdatum.
Folgende Fachobjekte sind beim Erzeugen von Rechnungen und Schreiben von Buchungsvorschlägen involviert:
Schritt | Input | Output |
---|---|---|
Erzeugen der Entwurfsrechnung | Account Fakturierungsplan Steuerregel Sachkonto Rechnungsvorlage |
Rechnung Rechnungsposten Protokolldatei |
Finalisieren der Rechnung | Account Fakturierungsplan Steuerregel Sachkonto Rechnungsvorlage Nummernkreis |
Rechnung Rechnungsposten Protokolldatei |
Erzeugen des Buchungsvorschlags | Rechnung Rechnungsposten |
Buchungsvorschlag |
Involvierte Objekte beim Erzeugen von Rechnungen und Buchungsvorschlägen
Eine Übersicht über die in Buchungsvorschlägen enthaltenen Daten finden Sie in der Booking-Detail-Referenz.
Steuerberechnung
JustOn berechnet die Mehrwertsteuer zeilenweise, d.h. für jeden Rechnungsposten einzeln, und bildet dann die Summe der einzelnen Rechnungsposten.
Durch entsprechend programmierte Funktionen wird die korrekte zeilenweise Berechnung und der korrekte Ausgleich von Rundungsdifferenzen sichergestellt. Darüber hinaus werden spezielle Rundungsregeln (z.B. für die Schweiz) unterstützt.
Der folgende Code stellt die Formel zur Berechnung des Bruttobetrags (PosTotalGross) eines Rechnungspostens (Invoice Line Item) dar:
IF(
ONB2__IsTaxDelta__c,
ONB2__UnitPrice__c,
ROUND(
ONB2__PosPriceDiscounted__c,
ONB2__DecimalPlacesFallback__c
) +
IF(
ONB2__GrossInvoice__c,
0,
ONB2__PosTotalTax__c
)
)
Die Berechnung der Bruttogesamtsumme (GrandTotal) einer Rechnung (Invoice) erfolgt durch Addition (Roll-Up Summary) der Werte von PosTotalGross der einzelnen Rechnungsposten:
Berechnung der Bruttogesamtsumme als Roll-Up Summary
Der Wert für die Steuer (PosTotalTax), die bei der Berechnung des Bruttobetrags eines Rechnungspostens (s.o.) verwendet wird, fällt bei der internen Steuerberechnung auf die Formel in CalculatedTax zurück:
ROUND(
ONB2__PosPriceDiscounted__c *
IF(
ONB2__GrossInvoice__c,
1 - 1 / (1 + ONB2__TaxRate__c),
ONB2__TaxRate__c
),
ONB2__DecimalPlacesFallback__c
)
Der verwendete Steuersatz (Tax Rate) ergibt sich aus sogenannten Steuerregeln ("Tax Rules"), die anwenderspezifisch angelegt und als benutzerdefinerte Einstellungen in JustOn gehalten werden. Folgende Daten können zur Definition von Steuerregeln kombiniert werden:
Feld | Beschreibung |
---|---|
Business Entity | Entspricht der an der Rechnung definierten Geschäftseinheit |
Invoice Region | Entspricht der am Fakturierungsplan oder am Account definierten Region |
Invoice Country | Entspricht dem am Fakturierungsplan definierten LegalCountry oder dem am Account definierten ShippingCountry bzw. BillingCountry |
Invoice State | Entspricht dem am Fakturierungsplan definierten LegalState oder dem am Account definierten ShippingState bzw. BillingState |
Account Tax Class | Entspricht der am Account definierten Steuerklasse |
Product Tax Class | Entspricht der am Produkt definierten Steuerklasse |
Product Group | Entspricht der am Posten definierten Produktgruppe |
Tax Rate | Der für diese Regel geltende Steuersatz |
Tax Code | Das für diese Regel geltende Steuerkennzeichen (zum Datenaustausch mit SAP o.ä.) |
Die Formeln bzw. Datentypen zur Berechnung sind in der JustOn-Benutzeroberfläche an den entsprechenden Objekten Invoice Line Item und Invoice zu sehen unter Setup > Object Manager > Invoice bzw. Setup > Object Manager > Invoice Line Item.
Die anwenderspezifisch definierten Steuerregeln sind zu finden unter Setup > Develop > Custom Settings > Tax Rules.
Software-interne Fehlerbehandlung
Um zu verhindern, dass fehlerhafte Daten gespeichert werden, stützt sich JustOn auf zwei Standardmechanismen von Salesforce Platform: Record Locking und Validierungsregeln.
Record Locking verhindert konkurrierende Zugriffe auf Datensätze. Greift ein Benutzer mit einer Schreiboperation auf einen Datensatz zu, sperrt die Plattform den Datensatz für Schreiboperationen durch andere Benutzer. Sobald die Transaktion beendet ist, wird die Sperre aufgehoben, und andere Benutzer können mit Schreiboperationen auf den Datensatz zugreifen. Entsprechende SOQL-Statements (Code zum Bearbeiten von Datensätzen) enthalten den Ausdruck FOR UPDATE
, z.B.
Account [] accts = [SELECT Id FROM Account LIMIT 2 FOR UPDATE];
JustOn stellt damit die Integrität seiner in der Salesforce Platform-Datenbank abgelegten Daten sicher.
Details zum Record Locking finden Sie in Apex Developer Guide | Locking Statements.
Validierungsregeln stellen sicher, dass die Daten, die Benutzer in Datensätze eingeben, den von JustOn bzw. den Anwendern definierten Standards entsprechen, bevor die Benutzer die Datensätze speichern können. Validierungsregeln enthalten eine Formel oder einen Ausdruck zur Überprüfung der Daten in einem oder mehreren Feldern.
Standardmäßig enthält JustOn Validierungsregeln für folgende eigene Objekte:
- Balance
- Booking Period
- Dunning
- Invoice
- Item
- Payment
- Sales Order Line Item
- Subscription
- Tier
Zusätzliche Validierungsregeln für JustOn-Objekte (oder auch Standard-Salesforce-Objekte) lassen sich je nach Anforderung anwenderspezifisch konfigurieren.
Details zu Validierungsregeln finden Sie in der Salesforce-Hilfe unter Validierungsregeln.
Verarbeitungskontrolle
JustOn kann bei jedem Rechnungslauf ein Protokoll schreiben, das die ausgeführten Prozessschritte nach folgendem Muster enthält:
timestamp | user ID | business logic class | severity | message
Ein Protokolleintrag könnte z.B. wie folgt aussehen:
2017-05-29 16:17:30 +0200 | 0050Y000000GJvrQAG | BatchInvoiceRun | INFO | Number of records per execute: ["1","1"]
Diese Funktion ist nicht standardmäßig aktiv. Anwender können diese jedoch durch einfache Konfiguration (Log Level INFO
in den Global Settings) einrichten.
Buchungsschlüssel
Externe Systeme (z.B. Buchhaltungssysteme wie SAP) erfassen Informationen wie Kontoart, Soll/Haben, Stornierung usw. in spezifischen Buchungsschlüsseln. JustOn speichert diese Informationen an der Rechnung in den Attributen invoice class und invoice type. Die verschiedenen Kombinationen der Attributwerte bilden dann die jeweilige buchhalterische Bedeutung ab.
Bedeutung | Invoice Class | Invoice Type |
---|---|---|
Debitorenrechnung | Invoice |
|
Debitorenratenrechnung | Invoice |
Installment |
Debitorengutschrift | Credit |
|
Debitorenteilgutschrift | Credit |
Partial Credit |
Debitorenrechnungsstornierung | Credit |
Cancelation |
Debitorengutschriftstornierung | Invoice |
Cancelation |
Debitorenteilrückforderung | Invoice |
Partial Credit |
Rechnungsdokumente
JustOn legt für jede elektronische Rechnung einen Datenbankeintrag (Record) in der Datenbank von Salesforce Platform ab. Die entsprechenden Objekte Invoice und Invoice Line Item enthalten alle Felder, für die pro Eintrag entsprechende Daten abgelegt werden.
Objekt | Datenfelder |
---|---|
Invoice | Referenz Invoice |
Invoice Line Item | Referenz Invoice Line Item |
Exportschnittstellen
Standardmäßig erzeugt JustOn PDF-Dokumente von Rechnungen. Die erzeugten PDF-Dokumente werden per E-Mail oder Post an Kunden versendet und können exportiert und archiviert werden. Der Inhalt der PDF-Dokumente lässt sich mithilfe von Vorlagen konfigurieren (siehe Vorlagen).
Darüber hinaus besteht die Möglichkeit, Rechnungen zur Verwendung in Drittsystemen aus JustOn heraus in andere Dateiformate zu exportieren, z.B. als CSV oder XML. Welche Exporte unterstützt werden, welche Felder im Dokumentexport enthalten sind usw., kann projektspezifisch variieren und wird ggf. projektspezifisch dokumentiert.
Info
Die in den exportierten Dokumenten (PDF, CSV oder XML) enthaltenen Daten sind Kopien der in den Feldern des Datenbankeintrags gespeicherten Daten.
Der folgende Code stellt beispielhaft eine mögliche Konfiguration eines CSV-Exports von Rechnungen dar.
{
"rows":{
"headerRow":["Custom CSV Export of Open Invoices","TimeStamp","UserName"],
"invoiceHeaderRow":["Number","Date","Amount"],
"invoiceRow":["Name","Date__c","GrandTotal__c"],
"lineItemRow":["Quantity__c","PosTotalNet__c","PosTotalTax__c","invoice.PaymentDueDate__c","GLAccount__c","Center__c"],
"combinedTaxRow":["TaxAmount","TaxRate__c","AppliedTaxRule__c"]
},
"rowOrder":["invoiceHeaderRow","invoiceRow","lineItemRow","combinedTaxRow"],
"rowFilter":{
"lineItemRow":[
{
"field":"Type__c",
"equals":true,
"value":"Information"
}
]
},
"decimalPlaces":{
"calculated":{
"TaxAmount":2
},
"Invoice__c":{
"GrandTotal__c":3
},
"InvoiceLineItem__c":{
"Quantity__c":0
}
},
"markAsExported":false,
"columnSeparator":";",
"useASCII":false,
"options":{
"decimalSeparator":".",
"groupingSeparator":"'",
"dateFormat":"yyyy-MM-dd",
"timeFormat":"HH:mm",
"language":"en"
}
}
E-Mail-System
Software | Beschreibung |
---|---|
Salesforce Platform | Rechnungsversand per E-Mail aus JustOn |
Für den Versand von Dokumenten per E-Mail bedient sich JustOn des durch die Integration zur Verfügung stehenden E-Mail-Dienstes von Salesforce Platform (siehe u.a. Send Email from Salesforce).
IT-Infrastruktur der Anwender
Der Anwenderzugriff auf JustOn erfolgt per Webbrowser über eine gesicherte Verbindung (HTTPS), prinzipiell gesichert und zurechenbar über ein Salesforce-Benutzerkonto.
Die Beschreibung der IT-Infrastruktur der Anwender, etwa der Client-Systeme, von denen aus browserbasiert auf JustOn zugegriffen wird, ist nicht Bestandteil dieses Dokuments und erfolgt ggf. in einer projektspezifischen Dokumentation.
Datensicherheit
Salesforce Platform und die integrierten Applikationen beinhalten eine Vielzahl von Sicherheitsfunktionen und Konfigurationseinstellungen, die die Datensicherheit auf allen Ebenen gewährleisten. Das umfasst alle Aspekte von der Benutzer- und Mandantenauthentifizierung, über die Vergabe von Administratorrechten bis hin zum Datenzugriff und Freigabemodell, einschließlich
Unternehmenssicherheit: Salesforce schützt die Daten einer Organisation vor dem Zugriff durch andere Organisationen mithilfe einer eindeutigen Kennung, die den Datenzugriff auf allen Ebenen für alle Benutzer (einschließlich Salesforce-Mitarbeiter) außerhalb der Organisation verhindert.
Benutzersicherheit: Die Benutzerauthentifizierung bietet in Kombination mit IP-basierter Sicherheit auf Netzwerkebene, Sitzungseinschränkungen und Transaktionsprotokollen ein entsprechendes Maß an Kontrolle sowie Einsicht in Aktivitäten von Benutzern und der Nutzung des Systems.
Programmatische Sicherheit: Konfigurierbare, authentifizierte Sitzungen ermöglichen den Zugriff auf Logik, Daten und Metadaten. Salesforce bietet außerdem einen Scanner, der den Code der auf Salesforce Platform entwickelten Apps analysiert und deren Sicherheit in einem Bericht dokumentiert.
Transparenz: Salesforce zeigt in Echtzeit Informationen zur Systemleistung und -sicherheit an (siehe trust.salesforce.com) und gibt Tipps zu sicherheitsrelevanten Best Practices.
Weitere Informationen zu Sicherheitsaspekten erhalten Sie im Salesforce Security Guide.
Zu den verwendeten Berechtigungsverfahren, die einen Zugriffsschutz und damit die Datensicherheit (Schutz vor Manipulation der Stamm- und Bewegungsdaten in JustOn) sicherstellen, gehören
Benutzerauthentifizierung
Grundsätzlich lässt sich der Zugriff auf eine Organisation (und damit prinzipiell auf deren Daten) sicher gestalten, indem Anwender autorisierte Benutzer für ihre Organisation verwalten, Kennwortrichtlinien festlegen und einschränken, wie sich Benutzer anmelden können.
Neben ihrem eindeutigen Benutzernamen müssen Benutzer bei jeder Anmeldung ihr Kennwort angeben. Salesforce-Anwender können je nach Anforderung für ihre Organisationen eigene Kennwortrichtlinien festelegen, wobei für JustOn folgende Standardeinstellungen gelten:
Einstellung | Standardwert |
---|---|
Gültigkeitsdauer von Kennwörtern | 90 Tage |
Kennwortlänge | 8 Zeichen |
Kennwortkomplexität | Muss aus Buchstaben und Zahlen bestehen |
Kennwortfrage erforderlich | Darf kein Kennwort enthalten |
Maximal zulässige ungültige Anmeldeversuche | 10 |
Anmeldesperre | 15 Minuten |
JustOn-Standardeinstellungen für Kennwörter
Weitere Informationen finden Sie in der Salesforce-Hilfe unter Einrichten von Kennwortrichtlinien | Salesforce.
Salesforce bietet zusätzliche Tools für die Identitätsüberprüfung, die die Sicherheit einer Organisation erhöhen, indem sie für jede Benutzeranmeldung eine zweite Authentifizierungsstufe erzwingen ("Zwei-Faktoren-Authentifizierung"). JustOn-Anwender können diese je nach Anforderung einsetzen, um ihre Stamm- und Bewegungsdaten vor nicht autorisiertem Zugriff zu schützen. Dazu gehören:
Mobile Salesforce Authenticator-Anwendung: Mit der Salesforce Authenticator-Anwendung für Mobilgeräte können Benutzerkonto-Aktivitäten verifiziert werden. Salesforce sendet eine Push-Benachrichtigung an das Mobilgerät, woraufhin die Aktivitätsdetails geprüft und genehmigt werden können.
U2F-Sicherheitsschlüssel: Ein mit einem Benutzerkonto verknüpfter U2F-Sicherheitsschlüssel muss in den USB-Anschluss des Computers des Benutzers gesteckt sein.
Einmalkennwort-Generator: Ist mit einem Benutzerkonto eine mobile Authentifizierungsanwendung (wie Salesforce Authenticator oder Google Authenticator) verbunden, wird damit ein Prüfcode generiert, der als "zeitbasiertes Einmalkennwort" fungiert.
SMS-Nachricht: Wenn mit einem Benutzerkonto eine Mobiltelefonnummer verknüpft ist, erhalten die Benutzer auf ihrem Telefon eine SMS mit einem Prüfcode im Text, der bei der Anmeldung einzugeben ist.
E-Mail: Salesforce sendet einen Prüfcode per E-Mail an die mit einem Benutzerkonto verknüpfte Adresse.
Weitere Informationen finden Sie in der Salesforce-Hilfe unter Zwei-Faktoren-Authentifizierung | Salesforce und Salesforce Security Guide.
Berechtigungen und Rollen
Salesforce Platform bietet ein flexibles Datenfreigabesystem mit mehreren Ebenen, mit dem unterschiedlichen Benutzergruppen unterschiedliche Datensätze zugeordnet werden. Damit lässt sich das Risiko von Datendiebstahl und -missbrauch minimieren und gleichzeitig sicherstellen, dass alle Benutzer auf die für sie relevanten Daten zugreifen können.
Organisation: Organisationen erlauben den Zugriff nur für autorisierte Benutzer, bei Bedarf eingeschränkt nach Zeit und Standort.
Objekte und Felder: Berechtigungen und Berechtigungssätze gewähren Zugriff auf Objekte und Felder von Objekten. Sie steuern damit, welche Art von Daten Benutzer sehen und bearbeiten können.
Datensätze: Mit Rollen und Freigaberegeln lässt sich der Zugriff auf bestimmte Objektdatensätze, also einzelne Teilmengen von Objekten, einschränken.
JustOn liefert standardmäßig folgende Berechtigungssätze mit:
Permission Set | Beschreibung |
---|---|
JustOn Full Access | Schreib-Lese-Berechtigung für JustOn-Objekte, unabhängig von möglichen Einschränkungen durch Rollen |
JustOn Read Only | Nur-Lese-Berechtigung für JustOn-Objekte |
JustOn Read/Write | Schreib-Lese-Berechtigung für JustOn-Objekte |
Payment Guest | spezieller Berechtigungssatz zur Benutzung eingebundener Zahlungsdienste |
Benutzer in Organisationen, Rollen und Freigaberegeln werden projektspezifisch für die Anwender angelegt.
Updates und Upgrades
Salesforce Platform wird dreimal jährlich aktualisiert (sog. Spring-, Summer- und Winter-Releases). Alle Updates werden sofort und ohne Eingreifen durch JustOn oder Anwender ausgerollt. Salesforce stellt damit sicher, dass integrierte Applikationen wie JustOn in einer aktuellen, sicheren Umgebung laufen.
JustOn wird ebenfalls fortwährend weiterentwickelt. Neue Feature-Releases erscheinen in der Regel zwei bis vier Wochen nach einem Update von Salesforce Platform, Bugfix-Releases je nach Bedarf häufiger. Die ständige Aktualisierung und Fehlerbereinigung ist für den rechtlich zulässigen Betrieb als E-Rechnungs-Software unerlässlich und stellt sicher, dass die Softwarelösung sich ändernden gesetzlichen Rahmenbedingungen zum Vorhalten steuerlich relevanter Dokumente bzw. dem Datenschutz unterliegender Dokumente anpasst und so der reibungslose und sichere Betrieb gewährleistet ist.
Die Aktualisierung der zur Nutzung von JustOn erforderlichen Benutzersoftware (Betriebssystem, Webbrowser, PDF-Betrachter) obliegt den Anwendern.