Abrechnungsmanagement-Software für einen US-Steuerzahlungsdienstleister

Abrechnungsmanagement-Software für einen US-Steuerzahlungsdienstleister

Itransition gestaltete die Architektur des Online-Rechnungsmanagementsystems des Kunden neu, verbesserte seine Leistung und Sicherheit und erweiterte es um neue Funktionen.

Kontext

Unser Kunde ist ein US-amerikanisches Unternehmen, das sich auf Buchhaltungs- und Steuerverwaltungslösungen spezialisiert hat. Das Unternehmen arbeitet mit führenden Wirtschaftsprüfungsgesellschaften zusammen und betreut viele bekannte Marken, darunter Sony, Netflix und BMW, mit dem Ziel, wichtige Finanzvorgänge zu vereinfachen.

Um diese Aufgabe zu erfüllen, hat der Kunde eine Online-Software für das Rechnungsmanagement eingeführt, die Unternehmen dabei hilft, ihre Buchhaltungsprozesse zu automatisieren und zu optimieren. Bei der Lösung handelt es sich um eine SaaS-Anwendung, die auf .NET basiert und Tools zur Kontrolle von Transaktionen und zur Nachverfolgung genauer Daten über den Cashflow und die finanziellen Verbindlichkeiten von Unternehmen bereitstellt.

Dummerweise war die Anwendung im Laufe der Zeit veraltet und konnte nicht mehr die Skalierbarkeit und Flexibilität bieten, die von zahlreichen Unternehmen, die den Dienst nutzen, gefordert wurde. Darüber hinaus war es von entscheidender Bedeutung, die Anwendung in gängige Buchhaltungssysteme zu integrieren, die Lösung an jedem Standort verfügbar zu machen und das Sicherheitsniveau zu verbessern.

Um die genannten Ziele zu erreichen, entschied sich der Kunde für eine Partnerschaft mit einem erfahrenen IT-Outsourcing-Anbieter, der die Funktionalität der Anwendung verbessern sowie Leistungs- und Sicherheitsverbesserungen vorschlagen und umsetzen konnte. Der Kunde wandte sich an Itransition aufgrund unserer Erfahrung in der Finanzsoftware-Entwicklung und unserer profunden Kenntnisse des Finanzbereichs.

Lösung

In der ersten Phase des Projekts analysierte das Team von Itransition den Legacy-Code und die allgemeine Logik der Lösung und schlug machbare Verbesserungen vor. Da die Anwendung auf Microsoft Access basierte, schlugen wir vor, sie auf eine neuere Plattform zu migrieren und die Architektur neu zu gestalten.

Neugestaltung der Architektur und Migration in die Cloud

Das Team schlug vor, die veraltete Lösung auf eine neue Architektur zu migrieren, die auf dem modernen Microsoft Azure Stack basiert.

Unser Hauptziel war es, die Anzahl der Komponenten zu minimieren, die vor Ort bereitgestellt und gewartet werden. Wir behielten nur solche Komponenten wie Scanner, OCR und Prüfdrucker bei, die von der physischen Infrastruktur abhängig waren. Alle anderen Komponenten, einschließlich der gesamten Benutzeroberfläche, haben wir in die Cloud verlagert.

Weitere Projektziele, die wir erreicht haben, waren:

  • Automatisierung von Geschäftsprozessen mit dem Ziel, manuelle Arbeiten zu reduzieren, die Geschwindigkeit des Workflow-Managements zu erhöhen und das Fehlerrisiko zu minimieren.
  • Verfügbarkeit der Anwendung in allen geografischen Regionen.
  • Fehlerfreie Verarbeitung zahlreicher Rechnungen.
  • Vereinfachte Unterstützung und Wartung der Anwendung.

Das Team von Transition hat die Datenbankstruktur komplett umgeschrieben und die meisten Lösungskomponenten auf Microsoft Azure verlagert. In Anbetracht des weltweit verteilten Netzwerks von Azure-Rechenzentren war dies die richtige Technologie, um die Lösung standortunabhängig zu machen.

Die Migration trug auch zu einer höheren Skalierbarkeit und Speicherkapazität der Lösung bei. Die Anwendung wurde stabiler und ist in der Lage, auch bei Spitzenbelastungen ohne Ausfallzeiten zu arbeiten und bei Ausfällen automatisch wiederhergestellt zu werden.

Die Übernahme der neuen Architektur ermöglichte es dem Team, die Benutzeroberfläche der Anwendung zu überarbeiten und ihre Konsistenz in den gängigsten Webbrowsern wie Google Chrome, Safari, Internet Explorer, Microsoft Edge und Mozilla Firefox sicherzustellen.

System architecture

Die neue Architektur brachte auch entscheidende Verbesserungen für die Sicherheit der Lösung und ermöglichte:

  • Zentralisierung der Benutzeridentitätsverwaltung
  • Schutz der Anwendung vor bösartigen Eingabeangriffen
  • Verbesserung der Widerstandsfähigkeit gegenüber gängigen Angriffsarten wie SQL-Injection, XSS und XSRF
  • Konformität der App mit dem PCI DSS-Standard
  • Sicherung des Zugriffs auf die Webdienste

Zusätzlich haben wir die folgenden Funktionen implementiert:

  • SAML SSO-Authentifizierung
  • TOTP Zwei-Faktor-Authentifizierung
  • Zugangsbeschränkung nach IP-Adresse

Itransition stellte auch sicher, dass die Lösung die Anforderungen des Office of Foreign Assets Control (OFAC) und die Best Practices für Know Your Customer (KYC) erfüllt.

In der nächsten Phase des Projekts migrierte das Team von Itransition mehrere Subsysteme zu Microsoft Azure:

  • Das Jurisdiction Management System (JMS) für die Verwaltung der Steuerjurisdiktion, einschließlich der automatisierten und manuellen Steuerzahlung, der Verwaltung von Steuerbescheiden, des elektronischen Geldtransfers sowie des Exports von ACH Cash Concentration oder Disbursement (CCD) Dateien.
  • Das Void & Replace-System zum Stornieren und Rückgängigmachen von elektronischen und Papierscheckzahlungen.
  • Elektronische Beleg-Uploads für den Import automatischer Kreditorenbuchhaltung zusammen mit steuerlichen Metadaten.
  • Fakturierung für die Rechnungserstellung und Metadatenverwaltung.

Nach der erfolgreichen Migration der Rechnungsverwaltungssoftware konnte deren Leistung erheblich gesteigert werden, wie die folgenden wichtigen Reaktionskennzahlen zeigen:

  • Die durchschnittliche Antwortzeit: ≤1s
  • Erstellung eines Berichts: ≤5s
  • Vorbereitung eines Datenstapels für den Export: ≤10s
  • Importieren einer Rechnung in das System: ≤5s

Funktionserweiterung

Itransition hat die geforderten kundenspezifischen Funktionen erfolgreich implementiert und die Lösung um die folgenden Möglichkeiten erweitert:

  • Rechnungsverteilung über anpassbare Genehmigungsworkflows
  • Elektronische Unterschrift
  • Stapelverarbeitung von genehmigten Rechnungen
  • Berichtswesen für Endkunden und operative Mitarbeiter
  • Zugang zum Lieferantenportal für Zahlungsempfänger zur Verfolgung des Genehmigungs- und Zahlungsfortschritts
  • Konfiguration und Automatisierung des Genehmigungsworkflows

Neben der Automatisierung der Rechnungsverteilung haben wir auch bedingte Regeln und die Neuzuweisung von Rechnungen aktiviert sowie zusätzliche Zahlungsschwellen hinzugefügt, um den Zahlungsanforderungen aller Abonnenten gerecht zu werden.

Billing workflow

Das Team von Transition integrierte die Software für das Rechnungsmanagement in mehrere gängige Buchhaltungsanwendungen wie QuickBooks, QuickBooks Online, NetSuite, Sage Intacct und Microsoft Dynamics GP, wobei letzteres das von den Kunden des Kunden am häufigsten verwendete Buchhaltungssystem ist.

Technologien und Werkzeuge

Wir haben Microsoft .NET und das ASP.NET MVC-Modell verwendet, um die Cloud-basierte Anwendung zu erstellen.

Um statische Typisierung auf der Client-Seite zu ermöglichen, haben wir die Präsentationsschicht mit AngularJS als Client-seitigem Framework und der in TypeScript geschriebenen Kendo UI User Control Bibliothek entwickelt.

Wir haben uns für LESS CSS in Kombination mit dem Bootstrap-Framework entschieden, um die Entwicklung von responsiven Client-seitigen Layouts zu vereinfachen.

Wir haben Azure Cache für Redis und Entity Framework für die Datenzugriffsschicht gewählt.

Wir verwendeten ASP.NET Web API, um die serverseitigen API-Endpunkte für die clientseitige Anwendung zu implementieren. Windows Workflow Foundation (WF)-Workflows, die auf Quartz.NET gehostet werden, wurden genutzt, um langwierige mehrstufige Geschäftsprozesse zu implementieren.

Die ActiveReports-Bibliothek wurde ausgewählt, um In-Browser- und PDF-Berichte zu unterstützen.

Wir folgten dem Inversion of Control (IoC)-Designprinzip und verwendeten die Autofac-Bibliothek, um die Entkopplung zu verstärken und Unit-Tests zu vereinfachen.

MSBuild, Jenkins und Rake erleichterten den Build-Prozess und stellten sicher, dass jede Version der Anwendung rechtzeitig zum Testen zur Verfügung stand. Die Testingenieure von Itransition setzten Selenium für die Testautomatisierung ein.

Unsere Entwickler, Tester und Analysten arbeiteten gemäß den Praktiken des Acceptance Test-Driven Development (ATDD) und des Behavior Driven Development (BDD) zusammen, die integrale Bestandteile von CI/CD sind.

Ergebnisse

Durch die Migration der Lösung auf eine neue Architektur und die Aufrüstung des technologischen Stacks haben wir dazu beigetragen, die Möglichkeiten der Anwendung erheblich zu erweitern, ihre Sicherheit zu verbessern und ihre Wartung zu erleichtern. Die Migration war auch ein notwendiger Schritt, um die Verfügbarkeit der Lösung über verschiedene Standorte hinweg zu gewährleisten.

Die Lösung kann nun Millionen von Rechnungsdatensätzen und Terabytes an Bildern speichern, bis zu 500 gleichzeitige Benutzersitzungen unterstützen und bis zu 300.000 eingehende Rechnungen pro Monat verarbeiten.

Die gelieferte Rechnungsverwaltungssoftware half dem Kunden, mit den steigenden Anforderungen von Unternehmen auf der ganzen Welt Schritt zu halten. Die Integration mit den am häufigsten verwendeten Buchhaltungssystemen und die implementierten Sicherheitsupdates wurden zu den wichtigsten Wertvorschlägen für neue Kunden. Infolgedessen erweiterte sich der Kundenstamm des Kunden auf über 1.500 Unternehmen, darunter mehr als 100 Fortune-500-Kunden und mehr als 50 Buchhaltungsfirmen.

Zufrieden mit den Projektergebnissen teilte der Kunde seine Pläne mit, die mobile Version der Plattform in Zusammenarbeit mit Itransition zu entwickeln.