Bots für Finanzen: So steigern Sie die Backoffice-Effizienz durch Automatisierung

Veröffentlicht: 2022-07-22

Die Erwähnung des Büros der Zukunft könnte Bilder von Maschinen heraufbeschwören, die sich wiederholende und arbeitsintensive Aufgaben übernehmen. Aber diese Zukunft ist jetzt. Die Entwicklung von Technologien wie Cloud-basierten Anwendungen sowie Softwareplattformen und Enterprise-Resource-Planning-Systemen, die Unternehmen dabei helfen, höchste Betriebseffizienz zu erreichen, haben automatisierte Büros Wirklichkeit werden lassen.

Laut dem Beratungsunternehmen McKinsey haben die Finanzabteilungen von Unternehmen ihre Kosten in den letzten zehn Jahren durch die Implementierung von Automatisierungslösungen in Bereichen wie Beschaffung, Buchhaltung und Gehaltsabrechnung um fast 30 % gesenkt. Diese Innovationen haben Finanzfunktionen transformiert und viele Ineffizienzen beseitigt.

Als Finanzanalyst und Softwareentwickler habe ich die Vorteile der Automatisierung voll ausgeschöpft, indem ich Bots für Finanzaufgaben eingerichtet habe, als ich mein eigenes Beratungsunternehmen Pylink gründete und aufbaute. Viele Finanzbüros haben dies jedoch immer noch nicht getan, sodass sie weiterhin übermäßig viel Zeit und Ressourcen für grundlegende Aufgaben aufwenden.

Ich bin nicht der Einzige, dem das Problem aufgefallen ist. Das Beratungsunternehmen PwC stellte fest, dass Finanzabteilungen ihre Produktivität und Einsicht durch Automatisierung und Prozessverbesserung steigern müssen, wodurch die Kosten für viele Schlüsselfunktionen um zweistellige Prozentsätze gesenkt werden können. Untersuchungen von PwC zeigen, dass die Automatisierung 40 % der Zeit, die Mitarbeiter für das Management-Reporting aufwenden, 27 % der Zeit für die Steuerbuchhaltung und 23 % der Stunden für das Kreditmanagement, die allgemeine Buchhaltung und die Rechnungsstellung einsparen könnte.

Deloitte ist zu vergleichbaren Schlussfolgerungen gelangt: Unter Berufung auf von Ayehu veröffentlichte Forschungsergebnisse berichtet es, dass intelligente Automatisierung die Kosten von Geschäftsprozessen um 25 bis 40 % senkt. Und die Forschung von Gartner zeigt, dass ein Unternehmen mit 40 Vollzeitmitarbeitern in der Buchhaltung jedes Jahr über 870.000 US-Dollar an Ausgaben einsparen könnte, indem es Aufgaben automatisiert und zusätzliche Arbeit zur Behebung menschlicher Fehler eliminiert.

In diesem Artikel möchte ich einige einfache Automatisierungsstrategien vorstellen, die ich für mein Unternehmen und meine Kunden verwendet habe – einfache Lösungen, die für Organisationen jeder Größe nützlich sein können.

Standardlösungen wie QuickBooks können für kleinere Organisationen hilfreich sein. Um die Effizienz zu maximieren, empfehle ich jedoch, Programmiersprachen wie Python zu verwenden, um Ihre Lösungen individuell zu erstellen, einschließlich Bots für Unternehmen. Python ist sehr intuitiv und bietet eine große Standardbibliothek mit Tools sowie Zugriff auf finanzspezifische Bibliotheken, wodurch es vielseitiger als Excel ist.

In meinem vorherigen Artikel für Toptal habe ich gezeigt, wie einfach es ist, mit Python maßgeschneiderte Cashflow-Modelle für Unternehmen zu entwickeln. Ich ermutige Sie, das zu lesen, wenn Sie daran interessiert sind, die Sprache zu lernen. In diesem Artikel gebe ich Ihnen jedoch einen Überblick über praktische Anwendungen – von der Zeiterfassung über die Gehaltsabrechnung bis hin zu E-Mails – die ein Entwickler schnell und einfach für Sie implementieren kann, wenn Sie nicht daran interessiert sind, sich selbst in den Code einzuarbeiten.

Wie mein Unternehmen Bots für Finanzen nutzt: Einfache, effiziente Zahlungen

Lassen Sie mich demonstrieren, wie nützlich benutzerdefinierte Automatisierung sein kann, indem ich Ihnen ein Beispiel aus meinem Unternehmen zeige, das als Fallstudie dienen kann. Obwohl ich ein kleines Unternehmen bin, sehen sich mein Team bei Pylink und ich mit einer beträchtlichen Komplexität konfrontiert, die Herausforderungen in Bezug auf Zahlungen mit sich bringt, einschließlich der folgenden:

  • Wir arbeiten an mehreren Projekten auf der Grundlage von Stundenverträgen und müssen die Zeit jeder unserer Aufgaben verfolgen.
  • Unsere Kunden kommen aus verschiedenen Ländern und bezahlen uns daher in mehreren Währungen.
  • Während wir bei einigen Projekten ein internes Softwareentwicklungsteam einsetzen, vergeben wir andere an Entwickler aus verschiedenen Ländern.
  • Aus Sicht der Steueroptimierung haben wir drei Unternehmen: ein in Großbritannien ansässiges, ein in der EU ansässiges und ein in der EU ansässiger Einzelfreiberufler.
  • Jedes unserer Unternehmen hat separate Bankkonten in mehreren Währungen, einschließlich USD, EUR, GBP und HUF.
  • Wir haben regelmäßige Kosten – wie Steuern, Gehälter und Sozialleistungen für Vollzeitbeschäftigte, Büroräume und -materialien sowie Software – in verschiedenen Währungen.

Um ein Zahlungssystem zu entwickeln, das diesen Herausforderungen gerecht wird, verwende (und empfehle) ich die folgenden Technologien, um einen Python-Bot zu erstellen, der in der Cloud-Infrastruktur von Amazon Web Services (AWS) läuft.

  • Codebasis: Python (kostenlos herunterladbar)
  • Dienst, auf dem der Code ausgeführt wird: AWS Lambda
    • Lambda macht es bequem, unsere Codeausführung nach Bedarf zu skalieren.
    • Dieser Dienst tritt nur in Kraft, wenn er ausgelöst wird. Sie fügen Ihren Python-Code in eine Lambda-Funktion ein und richten ein Trigger-Ereignis ein – alles von einem Alexa-Sprachbefehl bis zu einer geplanten Kalenderzeit.
    • Da Lambda serverlos ist, ist es eine kostengünstige Lösung, bei der wir nur für die Rechenzeit bezahlen müssen, die wir tatsächlich nutzen.
  • Bankbetriebstool: Wise API
    • Eine API (Application Programming Interface) ist ein Softwarevermittler, der es zwei Anwendungen ermöglicht, miteinander zu kommunizieren. Die Wise-API ermöglicht es mir und meinem Team, Kontoauszugsinformationen und historische Transaktionsdaten einfach abzurufen und Zahlungen automatisch durchzuführen. Es ermöglicht uns auch, Wechselkurse zu verfolgen und automatisierte Umrechnungen vorzunehmen.
  • Zeiterfassung: Everhour + Everhour API
    • Diese Software bietet eine genaue Zeiterfassung und flexible Abrechnungs- und Budgetierungsfunktionen. Darüber hinaus lässt es sich nahtlos in Projektmanagement-Tools wie Asana, Trello, Jira und GitHub integrieren.
  • E-Mail-Absender: Amazon Simple Email Service
    • Mit Amazon SES haben wir eine anpassungsfähige und sichere Möglichkeit, HTML-E-Mails aus jeder Anwendung heraus zu versenden, zusammen mit Datenanalysen zur Überwachung von Lieferungen und Bounces.
    • Mit dem kostenlosen Nutzungskontingent von SES können Sie bis zu 62.000 Nachrichten pro Monat kostenlos senden, wenn Sie den Service über eine in Amazon EC2 oder über AWS Lambda gehostete Anwendung aktivieren.
  • Planer: AWS EventBridge
    • Mit diesem Tool können wir unseren Python-Bot ganz einfach dazu veranlassen, monatlich oder halbmonatlich geplante Finanzfunktionen auszuführen.
    • Da EventBridge wie Lambda keinen Server für den Betrieb benötigt, reduziert es unseren Overhead erheblich.
  • Slack-Benachrichtigung: Slack-API
    • Diese API sendet Echtzeit-Benachrichtigungen, um uns über die Arbeitszeiten unserer Auftragnehmer zu informieren und uns mitzuteilen, ob Kunden uns bezahlt haben.
  • Slack-Kommunikation mit dem Bot: Slack API + Amazon API Gateway
    • Die Slack-API ermöglicht es dem Python-Bot, uns Zahlungsanforderungen zur Genehmigung zu senden.
    • Mit einem einzigen Klick auf unserer Seite ist unser Bot in der Lage, API Gateway zu verwenden, um jede Zahlung automatisch abzuschließen.
    • API Gateway bietet ein kostenloses Kontingent, das Ihnen ein Jahr lang Zugriff auf über eine Million API-Aufrufe und eine Million Nachrichten pro Monat gewährt.

So habe ich diese Tools verwendet, um einen Multitasking-Anwendungsfall zu automatisieren: zahlende Mitarbeiter, Auftragnehmer und mich selbst. Ich zeige Ihnen den gesamten Prozess auf hohem Niveau, bevor ich in die gängigsten Automatisierungspraktiken eintauche.

Ein Flussdiagramm mit Symbolen zeigt den neunstufigen Prozess, dem Miklos folgt, um Mitarbeiter, Entwickler und sich selbst zu bezahlen. Ausführliche Informationen finden Sie im folgenden Text.

Gehen wir nun die Schritte durch:

  1. Am ersten Tag jedes Monats verwenden wir AWS EventBridge, um den Python-Bot auszulösen, der in AWS Lambda gespeichert ist.
  2. Mithilfe der Everhour-API ruft der Bot Arbeitszeittabellen für alle Mitarbeiter, Auftragnehmer (in Pylinks Fall Entwickler) und mich ab.
  3. Als nächstes aggregiert der Bot die geleisteten Arbeitsstunden für jedes Projekt und erstellt einen Stundenzettel und eine Rechnung (beides PDFs). Dann sendet es diese Dokumente per E-Mail an die Kunden.
  4. Darüber hinaus benachrichtigt der Bot das Team von Pylink über Slack über die Arbeitszeiten der Auftragnehmer. Es bittet auch um Erlaubnis, sie zu bezahlen, indem es die Schaltflächen „Genehmigen“ und „Ablehnen“ anzeigt.
  5. Wenn jemand aus dem Managementteam von Pylink die Anfrage genehmigt, sendet der Bot über AWS API Gateway eine Nachricht an unsere eigene API (eine immer verfügbare öffentliche URL), die einen anderen Code in einer Lambda-Funktion ausführt, um die Übertragung vorzunehmen.
  6. Die zweite Lambda-Funktion verwendet die Wise-API, um die Zahlung vorzunehmen.
  7. Am 14. jedes Monats verwenden wir erneut EventBridge, um eine weitere Folge von Folgefunktionen zu planen. Aber diesmal löst EventBridge einen anderen Code aus, der in einer anderen Lambda-Funktion gespeichert ist.
  8. Dieser Code verwendet die Wise-API, um die Transaktionen der letzten zwei Wochen zu verfolgen und zu prüfen, ob der Kunde bezahlt hat.
  9. Wenn eine Zahlung vom Client erfolgt ist, sendet der Bot über die Slack-API eine Slack-Bestätigung an das Pylink-Team. Wenn keine Zahlung erfolgt ist, sendet der Bot über den Amazon SES-Service eine E-Mail an den Client.

Früher wurden all diese Aufgaben manuell erledigt, was wertvolle Zeit und Energie kostete, die jetzt anderweitig verwendet werden kann. Das Beste daran war, dass wir diesen Prozess ohne großen Zeit- und Geldaufwand einrichten konnten.

Was Sie mit Automatisierung tun können

Sehen wir uns nun einige der praktischsten Anwendungen für die Automatisierung an, wobei wir die Tools verwenden, die ich bereits besprochen habe. Als Referenz füge ich einige Codierungsbeispiele als Ressource für Ihre internen, Vertrags- oder freiberuflichen Entwickler hinzu – oder für sich selbst, falls Sie sich dafür entscheiden, Python zu lernen, um Sie bei der Arbeit Ihres Unternehmens oder Ihrer Kunden zu unterstützen.

Arbeitszeiten und Projekte nachverfolgen

Am Ende jedes Monats führt der Bot (unter Verwendung von Everhour) die Funktion „close_the_month“ aus, die alle Stunden sammelt, die für verschiedene Aufgaben aufgewendet wurden:

  • Meine Stunden in meinen Beratungsprojekten (Umsatz)
  • Die Stunden der Entwickler für die Projekte des Kunden (sowohl Einnahmen als auch Kosten)
  • Die Stunden der Entwickler auf unsere eigene Softwareentwicklung (Kosten)

Was folgt, ist eine einfache Funktion, die einen Pandas DataFrame zurückgibt, dh eine Tabelle mit Zeilen und Spalten, einschließlich aller Stunden und Projekte für einen bestimmten Zeitraum für einen bestimmten Benutzer. Bitte beachten Sie, dass, wie bereits erwähnt, dieser und alle nachfolgenden Codierungsauszüge nur Highlights der gesamten Codebasis sind und keine Schritt-für-Schritt-Anleitung zum Erstellen unseres Bots.

Ein Screenshot, der ein Beispiel des Python-Codes zeigt, der geschrieben wurde, um die Funktion „close_the_month“ auszuführen. Es zeigt die Sprache und Syntax an, die der Autor Zeile für Zeile verwendet hat.

Erstellen eines PDF-Stundenzettels und einer Rechnung

Da die Projektstunden jedes Mitarbeiters automatisch erfasst werden, besteht die nächste Aufgabe darin, Arbeitszeittabellen und Rechnungen zu erstellen. Es gibt viele Python-Pakete, mit denen Sie PDF-Dateien erstellen können. Wir verwenden PyFPDF, eine kompakte Dokumentenerstellungsbibliothek, die Einfachheit sowie die Flexibilität bietet, Formen zu zeichnen und Bilder und Text hinzuzufügen. Wie Sie dem folgenden Beispiel entnehmen können, ergibt sich eine saubere und professionelle Rechnung:

Eine Rechnung von Pylink wird angezeigt. Es lautet „In Rechnung gestellt an Watchclever Ltd“, den Kunden, und gibt das Rechnungsdatum, das Fälligkeitsdatum, den Rechnungszeitraum und die Zahlungsart (Banküberweisung) an. Es zeigt auch die Stunden für jeden der vier Berater und die Gesamtsumme von 45,7 Stunden an.

Obwohl es fortgeschrittenere Methoden zum Erstellen von Berichten gibt, ist PDF eine gute Wahl, da es ein universelles Format ist, das in allen Branchen verwendet wird und einfach zu erstellen ist. Es ermöglicht auch das Senden von Dateien an jeden, während sichergestellt wird, dass alle Schriftarten, Bilder, Tabellen und Formatierungen übertragen werden. Darüber hinaus funktioniert es unabhängig von Ihrer Computerhardware und Ihrem Betriebssystem und kann offline verwendet werden.

E-Mails senden

Amazon Simple Email Service ist ein kostengünstiges und skalierbares Tool zum Erstellen und Bereitstellen schön formatierter HTML-E-Mails. Darüber hinaus verfolgen und teilen die Datenanalysen von SES Informationen über die Ergebnisse der Feedback-Schleife, um Sie zu benachrichtigen, wenn Empfänger Ihre Nachricht entweder versehentlich oder weil die E-Mail an die falsche Adresse gesendet wurde, als Spam melden. Die Analysen messen auch die Effektivität jeder Kommunikation in Bezug auf das Engagement, einschließlich Öffnungs- und Klickraten. Diese Funktion ist besonders nützlich für Marketing-E-Mails.

Hier ist ein Beispiel für den Python-Code, der verwendet wird, um eine E-Mail mit einer angehängten Rechnung zu generieren und an einen Kunden zu senden:

Ein Screenshot zeigt einen Codierungsauszug mit der Python-Sprache und -Syntax, die der Autor verwendet hat, um eine E-Mail zu erstellen, eine Rechnung anzuhängen und sie zur Zahlung an seinen Kunden zu senden.

Und hier ist die E-Mail, die es produziert:

Ein Screenshot der E-Mail, die durch den Code erstellt wurde. Ein PDF der Rechnung ist beigefügt. Die Nachricht lautet:

Automatisierung von Bankaktivitäten

Wir haben uns für Wise für private und geschäftliche Bankkonten entschieden, da wir Einnahmen und Ausgaben in mehreren Währungen haben und dieses Finanztechnologieunternehmen günstige Wechselgebühren, eine intuitive Benutzeroberfläche und eine flexible API mit ausführlicher Dokumentation hat.

Wir verwenden diese API, um die folgenden Aufgaben zu erfüllen:

  • Sammeln Sie Auszugsinformationen für jedes Unternehmen und jede Währung, damit ich schnell die aggregierte und tatsächliche Liquidität sehen kann.
  • Extrahieren Sie historische Transaktionsinformationen, damit ich Trends in verschiedenen Kostenpositionen erkennen und überprüfen kann, ob der Kunde die Rechnung des Vormonats bezahlt hat. Ist dies nicht der Fall, sendet die API eine Erinnerungs-E-Mail.
  • Machen Sie Geldüberweisungen automatisch.

Unten ist der Code, den wir programmiert haben, um die erste dieser Aufgaben auszuführen (Sammeln von Kontoauszugsinformationen):

Ein Screenshot zeigt ein Beispiel des Python-Codes, den der Autor verwendet, um Kontostandsinformationen für jedes Unternehmen von Pylink abzurufen.

Für regelmäßige Fixkosten (Gehalt, Steuern, Bürokosten usw.) müssen Sie keinen Code schreiben, um automatische Überweisungen vorzunehmen; Wise hat eine geplante Zahlungsfunktion. Wenn der Betrag jedoch nicht festgelegt ist, sondern auf einer Formel basiert, die ein Algorithmus berechnen kann, ist die Wise-API hilfreich. In meinem Fall ist das Gehalt des Unternehmensberaters ein bemerkenswertes Beispiel, da es eine Funktion des monatlichen Umsatzes ist. Durch die Überprüfung der erfassten Stunden weiß der Bot genau, wie viel Umsatz wir haben und wie viel er dem Berater zahlen muss.

Minderung von Risiken durch ein zweiseitiges Gespräch mit dem Bot

Es ist wichtig, sich der Aktivität des Bots bewusst zu sein, da es Codierungsfehler geben kann, die beim Testen nicht aufgedeckt werden. Wir erhalten Benachrichtigungen in Echtzeit auf Slack, damit wir fehlerhaften Code umgehend reparieren können. Hier sind ein paar Beispiele für Benachrichtigungen, die uns wissen lassen, dass der Bot ordnungsgemäß funktioniert:

Dieses kleine, einfache Bild erfasst eine Slack-Nachricht des Pylink-Bots, die lautet: „Die Zahlung war erfolgreich!“

Das nächste Bild ist eine weitere Slack-Benachrichtigung vom Pylink-Bot. Der Text lautet „Abschluss des Vormonats 2022-01-01 – 2022-01-31“ und zeigt die Gesamtkosten der für Watchclever Ltd. in diesem Zeitraum geleisteten Arbeit, gefolgt von einer Aufschlüsselung dieser Kosten basierend auf Stunden für jeder Berater.

Wir haben dem Bot auch ermöglicht, vor jeder Banküberweisung Bestätigungsfragen an das Pylink-Team zu senden. Dies hilft uns, Fehler aufgrund menschlicher Fehler zu vermeiden. Stellen Sie sich vor, ein Entwickler macht einen Tippfehler und gibt 825 Stunden statt 8,25 Stunden für ein Ticket ein. Ein Genehmigungsschritt in Slack stellt sicher, dass wir nicht hundertmal mehr Geld überweisen, als wir schulden. Der Prozess behält das Element der menschlichen Überprüfung bei, bietet aber ein nahtloses Erlebnis.

Ein Screenshot einer Slack-Benachrichtigung „Zahlungsbestätigung“ vom Pylink-Bot. Darin steht: „Yurii hat letzten Monat 43,5 Stunden gearbeitet; daher sind [blank] USD fällig. Kann ich ihn bezahlen?“ (Der Dollarbetrag ist unkenntlich gemacht.) Die Optionen „Genehmigen“ und „Ablehnen“ werden angezeigt.

Es gibt viele andere Funktionen, die Sie auch mit der Slack-API erreichen können.

Das Büro von morgen

Geschäftsautomatisierung kann Unternehmen zum Erfolg verhelfen. Die von mir besprochenen Tools können Unternehmen transformieren, die mehr Effizienz und Kontrolle benötigen, insbesondere wenn es um Transaktionsfunktionen wie Kreditoren- und Debitorenbuchhaltung und andere Kernbereiche der Buchhaltung geht.

Aber das ist nicht das Ende der Geschichte. Laut McKinsey besteht die Herausforderung für Unternehmensführer darin, ein noch breiteres Netz für neue Effizienzen auszuwerfen. Das Unternehmen unterstützt die Neugestaltung des gesamten Finanzbetriebs und geht über reine Transaktionsaufgaben hinaus, indem es in Bereichen wie Datenanalyse führend ist – Konsolidierung, Vereinfachung und Kontrolle von Informationen im gesamten Unternehmen. Ich könnte nicht mehr zustimmen. Ich empfehle Ihnen, sich mit Kodierungslösungen zu beschäftigen, die Ihrem Unternehmen dabei helfen, sich seine Antworten zu eigen zu machen und seine ergebnisorientierte Kultur voranzubringen. In der Zwischenzeit kann die Anwendung der hier beschriebenen Taktiken Ihrem Unternehmen helfen, heute effizienter zu werden – und Ihnen gleichzeitig einen Vorgeschmack auf die Möglichkeiten von morgen geben.