Rechnungen Integration in Ihr ERP
Schritt-für-Schritt-Anleitungen zur Integration Ihrer Coupa-Rechnungen in Ihr ERP.
Einleitung
Sie können dieses Dokument auch als Microsoft Word-Dokument herunterladen: Coupa Invoices an ERP.docx
Allgemeine Überlegungen zur API-Einrichtung
- Erste Schritte mit der Coupa-API
- API-Schlüsselsicherheit (wird irgendwann abgelehnt)
- Open Connect API Access (ab R29)
- Json/XML
- GraphQL (ab R30)
Begrenzte Nutzlast: Felder & API-Filter
Die API von Coupa gibt standardmäßig viele Daten zurück (z. B. vollständige Objekte für zugehörige Objekte). Die API-Rückgabe-Nutzlasten können sehr groß und daher langsam sein. Dies kann ein Problem für Kunden sein, die die Fremddaten nicht benötigen, ganz zu schweigen vom unnötigen Ressourcenverbrauch.
Um die Dinge zu vereinfachen, hat Coupa das Konzept der „Felder“ -Parameter und API-Filter, die eine begrenzte JSON- oder XML-Antwort anstelle des gesamten Schemas und aller Zuordnungen für ein Objekt zurückgeben.
- API-Antwortfilter
- API: Verwendung des neuen API-Abfrageparameters "fields", Alternative zu "return object"
In diesem Artikel beschriebene Anwendungsfälle
Die Rechnungen haben in der Regel eine interne Nummer im ERP. In diesem Dokument gehen wir davon aus, dass diese ERP-Belegnummer ein benutzerdefiniertes Feld im Coupa-Rechnungskopf ist. In unserem Beispiel wurde das benutzerdefinierte Feld cf_erp_invoice
_number mit dem Namen ERP-Rechnungsnummer erstellt
. Dieser Artikel beschreibt die 3 verschiedenen Optionen zur Integration von Coupa-Rechnungen in Ihr ERP(sowohl für die Erstellung als auch für Aktualisierungen).
Diese Optionen ändern die Art und Weise, wie Sie Ihre Integrationen von Coupa aus überwachen können:
- Option 1: Einfache Überwachung basierend auf benutzerdefinierten Feldern, die Sie im Rechnungskopf definieren
- Alternative 2: Erweiterte Überwachung mit Integrationsverlaufsdatensätzen
- Option 3: Vollständige Coupa-Integrationsüberwachung nutzen
Für die 3 Optionen werden die Coupa-Rechnungen basierend auf dem Export-Flag in das ERP gepusht. Im Fehlerfall ist bei der Integration einer Rechnung eine manuelle Änderung der Rechnung in der Coupa-UI erforderlich: Diese Änderung setzt das Export-Flag zurück und die Rechnung wird daher im nächsten Durchlauf berücksichtigt.
Coupa schlägt vor, dass Sie sich an den Coupa-Support wenden, um diese Option zu aktivieren: Datum für zuletzt exportierte Rechnung bei jeder Änderung zurücksetzen. Diese Einstellung gilt nur für die Benutzeroberfläche. Änderungen, die mit API vorgenommen werden, ändern den Exportstatus nicht.
Dedizierte Integration und Kontakt für API erstellen
Für Option 2 & 3 müssen Sie Folgendes erstellen:
- Eine dedizierte Integration für jede API-Orchestrierung, die Sie implementieren
- Ein oder mehrere Integrationskontakt (e) für jede Integration, der/die bei fehlgeschlagener Integration benachrichtigt wird/werden
Coupa schlägt vor, dass Sie sich an den Coupa-Support wenden, um diese Option zu aktivieren: Link zu Integrationsverlauf nach Dokumenttyp aktivieren. Diese Einstellung fügt einen Link auf der Einrichtungsseite hinzu, um den vollständigen Integrationsverlauf pro Dokumenttyp anzuzeigen.
Option 1: Einfache Überwachung basierend auf benutzerdefinierten Feldern
Beschreibung
In diesem Szenario fügen wir für jede Rechnung den aktuellen Integrationsstatus in ein oder mehrere benutzerdefinierte Felder für den Rechnungskopf ein. Wir haben hinzugefügt, dass das benutzerdefinierte Feld cf-integration-status mit dem Namen
. Verwenden Sie die Standard-Rechnungsdatentabelle, um den Integrationsstatus Ihrer Dokumente unter dieser URL zu verfolgen: Integrationsstatus erstellt
wurdehttps://<your instance hostname>/invoices
.
Orchestrierungsdiagramm
Details zu Schritten / API-Aufrufen
Schritt 1 |
Rufen Sie die Liste und Details der Coupa-Rechnungen ab, die im ERP erstellt/aktualisiert werden sollen. Zu den Auswahlkriterien gehören das Exportkennzeichen und der Rechnungsstatus. |
---|---|
Methode |
ABFRAGEN |
API |
|
Query-Parameter |
|
Beispiel-URL |
|
Abfrage Hauptteilmuster |
Nicht zutreffend |
Antwort Körperprobe |
Schritt 2 |
Einzelrechnung als exportiert markieren |
---|---|
Methode |
PUT |
API |
https://<your instance hostname>/api/invoices/<Invoice id> |
Query-Parameter |
|
Beispiel-URL |
|
Abfrage Hauptteilmuster |
Nicht zutreffend |
Antwort Körperprobe |
|
Schritt 3 |
Aktualisieren von benutzerdefinierten Feldern für Reporting und ERP-Dokumentennummer |
---|---|
Methode |
PUT |
API |
|
Query-Parameter |
|
Beispiel-URL |
|
Abfrage Hauptteilmuster |
oder
|
Antwort Körperprobe |
oder
|
Alternative 2: Erweiterte Überwachung mit Integrationsverlauf
Beschreibung
In diesem Szenario müssen wir für jede Rechnung:
- Den vorherigen Integrationsverlaufsdatensatz für das Dokument auflösen
- Einen Integrationsverlaufsdatensatz erstellen
- Eine Warnung an den Integrationskontakt im Fehlerfall erstellen
Jedes Dokument enthält die Details des Integrationsverlaufs
Verwenden Sie die Standard-Integrationsverlaufsdatentabelle für Rechnungen, um den Integrationsstatus Ihrer Dokumente zu verfolgen. Sie finden es unter: https://<your instance hostname>/integration_history_records/invoices
.
Sie können einen Filter nach Antwortcode verwenden, um zwischen erfolgreich replizierten und fehlgeschlagenen Dokumenten zu unterscheiden.
Orchestrierungsdiagramm
Details zu Schritten / API-Aufrufen
Schritt 1 |
Rufen Sie die Liste und Details der Coupa-Rechnungen ab, die im ERP erstellt/aktualisiert werden sollen.Zu den |
---|---|
Methode |
ABFRAGEN |
API |
|
Query-Parameter |
|
Beispiel-URL |
|
Abfrage Hauptteilmuster |
Nicht zutreffend |
Antwort Körperprobe |
Schritt 2 |
Einzelrechnung als exportiert markieren |
---|---|
Methode |
PUT |
API |
|
Query-Parameter |
|
Beispiel-URL |
|
Abfrage Hauptteilmuster |
Nicht zutreffend |
Antwort Körperprobe |
|
Hier erfolgt die Erstellung/Aktualisierung der Rechnung im ERP.
Schritt 3a |
Ungelösten Integrationsverlaufsdatensatz abrufen |
---|---|
Methode |
ABFRAGEN |
API |
|
Query-Parameter |
|
Beispiel-URL |
|
Abfrage Hauptteilmuster |
Nicht zutreffend |
Antwort Körperprobe |
|
Schritt 3b |
Vorherigen Integrationsverlaufsdatensatz auflösen |
---|---|
Methode |
PUT |
API |
|
Query-Parameter |
|
Beispiel-URL |
|
Abfrage Hauptteilmuster |
Nicht zutreffend |
Antwort Körperprobe |
|
Schritt 4a |
Aktualisieren Sie ein benutzerdefiniertes Feld für die ERP-Dokumentennummer (Erfolg) |
---|---|
Methode |
PUT |
API |
|
Query-Parameter |
|
Beispiel-URL |
|
Abfrage Hauptteilmuster |
|
Antwort Körperprobe |
|
Schritt 4b |
Integrationsverlauf erstellen (erfolgreich) |
---|---|
Methode |
PUT |
API |
|
Query-Parameter |
|
Beispiel-URL |
|
Abfrage Hauptteilmuster |
|
Antwort Körperprobe |
|
Schritt 4c |
Integrationsverlauf erstellen (Fehler) und Warnung an Integrationskontakt |
---|---|
Methode |
PUT |
API |
|
Query-Parameter |
|
Beispiel-URL |
|
Abfrage Hauptteilmuster |
|
Antwort Körperprobe |
|
Option 3: Vollständige Coupa-Integrationsüberwachung nutzen
Beschreibung
In diesem Szenario erstellen wir einen Integrationslauf, der
- Ausschreibungsstatus (ausstehend/gestartet/fehlerhaft/erfolgreich/fehlgeschlagen)
- Die totale Anzahl von verarbeiteten Rechnungen
- Die Anzahl von Erfolgen und Fehlern
- Die Liste von Integrationsfehlern und deren Status (behoben oder nicht)
Für jede Rechnung:
- Den vorherigen Integrationsverlaufsdatensatz für das Dokument auflösen
- Einen Integrationsverlaufsdatensatz erstellen
- Erstellen Sie im Fehlerfall einen Integrationsfehler und eine Warnung an den Integrationskontakt
Sie können alle Integrationsläufe für Ihre Integration mit dieser URL überwachen: https://<your instance hostname>/integrations/<your integration id>/integration_runs
.
Sie verwenden die Standard-Rechnungsintegrationsfehlertabelle, um alle Rechnungen mit ausstehender Lösung für Integrationsfehler aufzulisten. Sie finden es unter: https://<your instance hostname>/integration_errors
.
Orchestrierungsdiagramm
Details zu Schritten / API-Aufrufen
Schritt 1 |
Integrationsausführung erstellen |
---|---|
Methode |
BEITRAG |
API |
|
Query-Parameter |
Nicht zutreffend |
Abfrage Hauptteilmuster |
|
Antwort Körperprobe |
|
Schritt 2 |
Rufen Sie die Liste und Details der Coupa-Rechnungen ab, die im ERP erstellt/aktualisiert werden sollen.Zu den |
---|---|
Methode |
ABFRAGEN |
API |
|
Query-Parameter |
|
Beispiel-URL |
|
Abfrage Hauptteilmuster |
Nicht zutreffend |
Antwort Körperprobe |
Schritt 3 |
Integrationsausführung starten |
---|---|
Methode |
PUT |
API |
|
Query-Parameter |
Nicht zutreffend |
Abfrage Hauptteilmuster |
|
Antwort Körperprobe |
|
Schritt 4 |
Einzelrechnung als exportiert markieren |
---|---|
Methode |
PUT |
API |
|
Query-Parameter |
|
Beispiel-URL |
|
Abfrage Hauptteilmuster |
Nicht zutreffend |
Antwort Körperprobe |
|
Hier erfolgt die Erstellung/Aktualisierung der Rechnung im ERP.
Schritt 5a |
Ungelösten Integrationsverlaufsdatensatz abrufen |
---|---|
Methode |
ABFRAGEN |
API |
|
Query-Parameter |
|
Beispiel-URL |
|
Abfrage Hauptteilmuster |
Nicht zutreffend |
Antwort Körperprobe |
|
Schritt 5b |
Vorherigen Integrationsverlaufsdatensatz auflösen |
---|---|
Methode |
PUT |
API |
|
Query-Parameter |
|
Beispiel-URL |
|
Abfrage Hauptteilmuster |
Nicht zutreffend |
Antwort Körperprobe |
|
Schritt 6a |
Ungelösten Integrationsfehlerdatensatz abrufen |
---|---|
Methode |
ABFRAGEN |
API |
|
Query-Parameter |
|
Beispiel-URL |
|
Abfrage Hauptteilmuster |
Nicht zutreffend |
Antwort Körperprobe |
|
Schritt 6b |
Vorherigen Integrationsverlaufsdatensatz auflösen |
---|---|
Methode |
PUT |
API |
https://<your instance hostname>/api/integration_errors/<Old Integration Error Record id>/lösen |
Query-Parameter |
Nicht zutreffend |
Abfrage Hauptteilmuster |
Nicht zutreffend |
Antwort Körperprobe |
|
Schritt 7a |
Aktualisieren Sie ein benutzerdefiniertes Feld für die ERP-Dokumentennummer (Erfolg) |
---|---|
Methode |
PUT |
API |
|
Query-Parameter |
|
Beispiel-URL |
|
Abfrage Hauptteilmuster |
|
Antwort Körperprobe |
|
Schritt 7b |
Integrationsverlauf erstellen (Erfolg) |
---|---|
Methode |
PUT |
API |
|
Query-Parameter |
|
Beispiel-URL |
|
Abfrage Hauptteilmuster |
|
Antwort Körperprobe |
|
Schritt 7c |
Integrationsfehler erstellen und Benachrichtigung an den Integrationskontakt |
---|---|
Methode |
PUT |
API |
|
Query-Parameter |
Nicht zutreffend |
Abfrage Hauptteilmuster |
|
Antwort Körperprobe |
|
Schritt 8 |
Integrationsausführung erfolgreich beendet |
---|---|
Methode |
PUT |
API |
|
Query-Parameter |
Nicht zutreffend |
Abfrage Hauptteilmuster |
Nicht zutreffend |
Antwort Körperprobe |
|
Wenn während des Integrationslaufs ein allgemeiner Fehler auftritt.
Schritt x |
Raise Failure für den Integrationslauf |
---|---|
Methode |
PUT |
API |
|
Query-Parameter |
Nicht zutreffend |
Abfrage Hauptteilmuster |
Nicht zutreffend |
Antwort Körperprobe |
|