Administrationshandbuch (LIMA-Schnittstelle)

Installation

Voraussetzungen für die Verwendung des Moduls

  • Die Modul-Lizenz EVI-BASIS muss vorliegen und ins System importiert werden.

  • Das Modul C12LIMA ist einzuspielen.

    • Anschließend findet der Administrator im Bereich "Prozesse" in myEvi den Prozess "lima Credentials initialisieren".

      • Der Prozess muss gestartet werden.

      • Zur Authentifizierung wird ein Masterkey verwendet. Jede API benötigt zudem eine APP_ID und einen APP_KEY, die im lima-Portal zu generieren sind. Diese Informationen erhält er über das Portal der rhenag.
        Nun gibt der Administrator die App-Ids, App-Keys der jeweiligen Services sowie den Masterkey ein.

      • Zudem setzt der Administrator die URL des lima-System in der Globalen Variable C12LIMARestUrl

      • 2026.4 Die Credentials für die User-API müssen im Prozess lima Credentials initialisieren eingetragen werden.

Update

Technische Dokumentation

Komponentenübersicht

Prozesse

  • C12LIMAInitCredentials

Skriptbibliothek

  • SC12LimaUtils

    • Stellt Methoden zum Ansteuern der LIMA REST Schnittstelle bereit.

Globale Variablen

  • C12LIMARestURL

Administrationsmöglichkeiten

  • Administration über globale Variable:

Globale Variable

Beschreibung

C12LIMARestURL

URL für den Aufruf des lima-Webservices

  • Eingabe der Anmeldedaten im Prozess C12LIMAInitCredentials

Übersteuerungsmöglichkeiten

Grundsätzlich können die mit dem Modul bereitgestellten Komponenten wie BPM-Prozesse, -teilprozesse, Suchen und Skriptbibliotheksmethoden übersteuert werden, um diese an individuelle Anforderungen und Bedürfnisse anzupassen.

Nach dem Einspielen eines Moduls sollte geprüft werden, ob bereits Methoden im Projekt übersteuert wurden und ob die Methodenänderung aus dem Standard im Projekt übernommen werden sollte

Skriptklasse

Methodenname

Funktionalität

SC12LimaUtils





























































getDataForDeleteCustomerBankAccount

Sammelt Daten aus EVI zum Löschen von Bankdaten und schreibt sie in die Aufrufstruktur für lima.

getDataForGetAllArchivedDocuments

Sammelt Daten aus EVI zum Lesen von Dokumenten in lima, je nach übergebener Entität. Die gelesenen Daten werden entsprechend in die Aufrufstruktur für lima geschrieben.

getDataForGetAllPaymentMethodsForCustomer

Sammelt Daten aus EVI zum Lesen von Zahlwegen in lima. Die gelesenen Daten werden entsprechend in die Aufrufstruktur für lima geschrieben.

getDataForGetArchivedDocuments

Sammelt Daten aus EVI zum Lesen von Dokumenten in lima, je nach übergebener Entität und in Abhängigkeit zum Debitor. Die gelesenen Daten werden entsprechend in die Aufrufstruktur für lima geschrieben.

getDataForGetContractAdvancePay

Sammelt Daten aus EVI zum Lesen von Abschlägen zu Verträgen in lima. Die gelesenen Daten werden entsprechend in die Aufrufstruktur für lima geschrieben.

getDataForGetContractAdvancePayGroupByPaymentDate

Sammelt Daten aus EVI zum Lesen von Abschlägen zu Verträgen und in Abhängigkeit zum übergebenen Datum in lima. Die gelesenen Daten werden entsprechend in die Aufrufstruktur für lima geschrieben.

getDataForGetContractHistory

Sammelt Daten aus EVI zum Lesen von Vertragshistorien in lima. Die gelesenen Daten werden entsprechend in die Aufrufstruktur für lima geschrieben.

getDataForGetContractMeter

Sammelt Daten aus EVI zum Lesen von Zählerinformationen zu einem Vertrag in lima. Die gelesenen Daten werden entsprechend in die Aufrufstruktur für lima geschrieben.

getDataForGetContractMeterReadingValues

Sammelt Daten aus EVI zum Lesen von Zählerständen zu einem Vertrag in lima. Die gelesenen Daten werden entsprechend in die Aufrufstruktur für lima geschrieben.

getDataForGetCustomerBankAccount

Sammelt Daten aus EVI zum Lesen von Bankdaten in lima. Die gelesenen Daten werden entsprechend in die Aufrufstruktur für lima geschrieben.

getDataForGetDocument

Erzeugt die Aufrufstruktur für den Download eines Dokumentes aus lima.

getDataForPostCheckContractOutflow

Sammelt Daten aus EVI um die Prüfung des Vertragsabgangs in lima anzustoßen. Die gelesenen Daten werden entsprechend in die Aufrufstruktur für lima geschrieben.

getDataForPostContactInformations

Sammelt Daten aus EVI um Kontaktinformationen zu einem Geschäftspartner in lima zu ändern. Die gelesenen Daten werden entsprechend in die Aufrufstruktur für lima geschrieben.

getDataForPostContract

Sammelt Daten aus EVI um einen Vertrag in lima mit definierten Kriterien zu suchen. Die gelesenen Daten werden entsprechend in die Aufrufstruktur für lima geschrieben.

getDataForPostContractAdvancePay

Sammelt Daten aus EVI um einen neuen Abschlag zu einem Vertrag in lima anzulegen. Die gelesenen Daten werden entsprechend in die Aufrufstruktur für lima geschrieben.

getDataForPostContractRateChange

Sammelt Daten aus EVI um einen Produktwechsel zu einem Vertrag in lima anzustoßen. Die gelesenen Daten werden entsprechend in die Aufrufstruktur für lima geschrieben.

getDataForPostContractReadingMeter

Sammelt Daten aus EVI um einen neuen Zählerstand zu einem Vertrag in lima zu melden. Die gelesenen Daten werden entsprechend in die Aufrufstruktur für lima geschrieben.

veraltet ab 25.5

getDataForPutContractReadingMeterV2

ab 25.5

Sammelt Daten aus EVI um einen neuen Zählerstand zu einem Vertrag in lima zu melden. Die gelesenen Daten werden entsprechend in die Aufrufstruktur für lima geschrieben.

getDataForPostCustomerBankAccount

Sammelt Daten aus EVI um eine neue Bankverbindung zu einem Geschäftspartner in lima anzulegen. Die gelesenen Daten werden entsprechend in die Aufrufstruktur für lima geschrieben.

getDataForPostDebitorMandate

Sammelt Daten aus EVI um ein neues SEPA-Mandat zu einem Debitor in lima zu erzeugen. Die gelesenen Daten werden entsprechend in die Aufrufstruktur für lima geschrieben.

getDataForPostDebitorMandateForBankAccount

Sammelt Daten aus EVI um ein neues SEPA-Mandat zu einem Debitor und einer Bankverbindung in lima zu erzeugen. Die gelesenen Daten werden entsprechend in die Aufrufstruktur für lima geschrieben.

getDataForPostExecuteContractOutflow

Sammelt Daten aus EVI um den Vertragsabgang in lima anzustoßen. Die gelesenen Daten werden entsprechend in die Aufrufstruktur für lima geschrieben.

getDataForPostPaymentType

Sammelt Daten aus EVI um einen neuen Zahlweg in lima anzulegen. Die gelesenen Daten werden entsprechend in die Aufrufstruktur für lima geschrieben.

getDataForPutContactInformations

Sammelt Daten aus EVI um Kontaktinformationen zu einem Geschäftspartner in lima zu aktualisieren. Die gelesenen Daten werden entsprechend in die Aufrufstruktur für lima geschrieben.

getDataForPutContacts

Sammelt Daten aus EVI um einen Geschäftspartner in lima zu aktualisieren. Die gelesenen Daten werden entsprechend in die Aufrufstruktur für lima geschrieben.

getDataForPutCustomerBankAccount

Sammelt Daten aus EVI um eine neue Bankverbindung von einem Geschäftsparter in lima zu aktualisieren. Die gelesenen Daten werden entsprechend in die Aufrufstruktur für lima geschrieben.

getDataForPutDebitorMandateForBankAccount

Sammelt Daten aus EVI um ein SEPA-Mandat zu einem Debitor und einer Bankverbindung in lima zu aktualisieren. Die gelesenen Daten werden entsprechend in die Aufrufstruktur für lima geschrieben.

getDataForPutPaymentType

Sammelt Daten aus EVI um einen Zahlweg in lima zu aktualisieren. Die gelesenen Daten werden entsprechend in die Aufrufstruktur für lima geschrieben.

getDebitorMandateForBankAccount

Sammelt Daten aus EVI um ein SEPA-Mandat zu einem Debitor und einer Bankverbindung in lima zu lesen. Die gelesenen Daten werden entsprechend in die Aufrufstruktur für lima geschrieben.

getDocument

Lädt ein Dokument aus lima herunter.

getLimaUsername

Liefert den Usernamen, der für die Kommunikation mit lima verwendet werden soll.

getNeededCredentialIds

Diese Methode liefert alle Credentials an den Prozess C12LIMAInitCredentials, die initialisiert werden müssen. Sollten weitere Services oder weniger Services verwendet werden, muss diese Methode entsprechend angepasst bzw. erweitert werden.

getPaymentType

Liest die Zahlwege aus lima aus.

getResultForGetCustomerBankAccount

Schreibt die aus lima ausgelesenen Bankdaten in die EVI-Datenstrukturen zur Weiterverarbeitung.

postCheckContractOutflow

Ruft die Prüfung zum Vertragsabgang auf.

postContactInformations

Schreibt neue Kontaktinformationen nach lima.

postContacts

Schreibt einen neuen Geschäftspartner nach lima. 

postContract

Sendet die Suchanfrage zu einem Vertrag an lima.

postContractAdvancePay

Sendet einen neuen Abschlag an lima.

postContractRateChange

Sendet einen Produktwechsel an lima.

postContractReadingMeter

Sendet einen Zählerstand an lima.

veraltet ab 25.5

putContractReadingMeterV2

ab 25.5

Sendet einen Zählerstand über die neue API an lima.

postCustomerBankAccount

Sendet eine Bankverbindung an lima.

postDebitorMandate

Sendet ein SEPA-Mandat für einen Debitor an lima.

postDebitorMandateForBankAccount

Sendet ein SEPA-Mandat für einen Debitor und eine Bankverbindung an lima.

postExecuteContractOutflow

Sendet einen Vertragsabgang an lima.

postPaymentType

Sendet einen Zahlweg an lima.

putContactInformations

Sendet eine Änderung für Kontaktinformationen an lima.

putContacts

Sendet eine Änderung für einen Geschäftspartner an lima.

putCustomerBankAccount

Sendet eine Änderung für eine Bankverbindung an lima.

putDebitorMandateForBankAccount

Sendet eine Änderung für ein SEPA-Mandat zu einem Debitor und einer Bankverbindung an lima.

putPaymentType

Sendet eine Änderung für einen Zahlweg an lima.

deleteContactInformations

Sendet einen Löschauftrag für Kontaktinformationen an lima.

deleteContacts

Sendet einen Löschauftrag für einen Kunden an lima.

deleteContractAdvancePay

Sendet einen Löschauftrag für einen Abschlag an lima.

deleteContractReadingMeter

Sendet einen Löschauftrag für einen Zählerstand an lima.

deleteCustomerBankAccount

Sendet einen Löschauftrag für eine Bankverbindung an lima.

deleteDebitorMandateForBankAccount

Sendet einen Löschauftrag für ein SEPA-Mandat für einen Debitor und eine Bankverbindung an lima.

deletePaymentType

Sendet einen Löschauftrag für einen Zahlweg an lima.

getAllParameters

Diese Methode enthält die Definition für alle Webservices, die aufgerufen werden können. Sollten weitere Services eingebunden werden, ist diese Methode zu erweitern.

createHeaderParams*

Diese Methoden sind entsprechend der in der Webservice-Definition enthaltenen Header-Parameter anzupassen oder neu aufzunehmen, wenn weitere Services eingebunden werden.

createQueryParams*

Diese Methoden sind entsprechend der in der Webservice-Definition enthaltenen Query-Parametern anzupassen oder neu aufzunehmen, wenn weitere Services eingebunden werden.

createPathParams*

Diese Methoden sind entsprechend der in der Webservice-Definition enthaltenen Path-Parametern anzupassen oder neu aufzunehmen, wenn weitere Services eingebunden werden.

Interner Ablauf

Implementierte APIs

Für jede API gibt es folgende Methoden:

  • POST für das Erstellen eines Datensatzes in lima

  • PUT für das Aktualisieren

  • GET für das Abrufen

  • DELETE für das Löschen eines Datensatzes

image2022-1-27_12-37-17.png
Umgesetzte APIs

  • dokumenten-management

  • zahlweg-pflege

  • zaehlerstand-erfassung

  • kunden-pflege

  • PHP API bis 2026.4

  • User API Ab 2026.4

  • prozesse

  • vertrag-pflege

  • forderungen 

Anzubindende Webservices

Mapping

Api/Method-Path

Mapping

Skript-Methode

Kommentar

dokumenten-management




GET /V1/kunden/{Kundennummer}/{Debitornummer}/dokumente

Ein Container kann von 2 Typen sein:

  • ContractAccount

    • Kundennummer - Freenumber3

    • Debitorennummer - Freenumber1

  • C12InstAcc (Anlagenkonto)

    • über ContractAccPk (Vertragskonto) an Vertragskonto kommen. Siehe Logik dort.

getDataForGetArchivedDocuments


GET /V1/kunden/{Kundennummer}/dokumente

Ein Container kann von 3 Typen sein:

  • Customer

    • Kundennummer - CustomerNo2

  • ContractAccount

    • Kundennummer - Freenumber3

  • C12InstAcc (Anlagenkonto)

    • über ContractAccPk (Vertragskonto) an Vertragskonto kommen. Siehe Logik dort.

    • Wenn ContractAccPk nicht gefüllt dann über CustomerPk zu Customer. Siehe Logik dort.

getDataForGetAllArchivedDocuments


zahlweg-pflege




DELETE /V1/kunden/{Kundennummer}/zahlwege/{Zahlweg}/bankverbindung

Container ContractAccount


    • Kundennummer - Freenumber3

    • Zahlweg (bei uns Debitorennummer) - Freenumber1

    • Body: GueltigAb (StartDate), LetzteAenderung (UpdateDate)

getDataForDeleteCustomerBankAccount


GET /V1/kunden/{Kundennummer}/zahlwege/{Zahlweg}/bankverbindung

Container ContractAccount

  • Kundennummer - Freenumber3

  • Zahlweg (bei uns Debitorennummer) - Freenumber1

getDataForGetCustomerBankAccount

{ "GueltigAb": keinFeld, "Bankleitzahl": keinFeld, "Kontonummer": keinFeld, "AbweichenderKundenname": AccOwner.BankAccount, "Zahlungsartkennzeichen": C12Zahlweg (Mapping folgt), "Einzugsermaechtigung": C12Zahlweg (Mapping der Schlüssel folgt), "Bic": BICKey.BankAccount, "Iban": IBAN.BankAccount, "Historie": keinFeld, "Erstelldatum": CreateDate.BankAccount, "ErstellZeit": keinFeld, "ErstellUser": CreateUser.BankAccount, "LetzteAenderung": UpdateDate.BankAccount }


Wenn C12Zahlweg = 'KEINE', dann Zahlungsartkennzeichen = 0 und Einzugsermächtigung = 0.

Weitere Mappings müssen in C2 erfolgen, da wir keine weiteren Schlüssel wie SEPA o.ä. ausliefern.

GET /V1/kunden/{Kundennummer}/zahlwege

Container ContractAccount

  • Kundennummer - Freenumber3

getDataForGetAllPaymentMethodsForCustomer


POST /V1/sepa-mandat/generate

-

getDataForPostDebitorMandate


POST /V1/kunden/{Kundennummer}/zahlwege/{Zahlweg}/bankverbindung

Container ContractAccount

  • Kundennummer - Freenumber3

  • Zahlweg (bei uns Debitorennummer) - Freenumber1

  • Body:

    • GueltigAb (StartDate)

    • AbweichenderKundenname - CustNoInvoicePk (Rechnungsempfänger)

Zweiter Container kommt rein BankAccount

  • Body:

    • Bankleitzahl - ?

    • Kontonummer - ?

    • Zahlungsartkennzeichen - C12Zahlweg (Zahlungsweise)

    • Einzugsermaechtigung - ?

    • Bic - BICKey (BIC)

    • Iban - IBAN

getDataForPostCustomerBankAccount


POST /V1/kunden/{Kundennummer}/zahlwege/{Zahlweg}/bankverbindung/sepa-mandat

Container ContractAccount

  • Kundennummer - Freenumber3

  • Zahlweg (bei uns Debitorennummer) - Freenumber1

  • Body:

    • LetzteAenderung - UpdateDate

    • GlaeubigerId - ContAccountDescription

    • Mandatsref - ContAccountType

    • GueltigAb - GueltigAb (StartDate)

    • Unterschriftsdatum - GueltigAb (StartDate)

    • Sequenztyp - ?

    • BasisFirmenlastschrift - ?

    • Mandatsverfalldatum - ?

    • Mandatserzeugung - Freetext6

getDataForPostDebitorMandateForBankAccount


POST /V1/kunden/{Kundennummer}/zahlwege

Container ContractAccount

  • Kundennummer - Freenumber3

  • Body:

    • Bezeichnung - ? generieren?

getDataForPostPaymentType


PUT /V1/kunden/{Kundennummer}/zahlwege/{Zahlweg}

Container ContractAccount

  • Kundennummer - Freenumber3

  • Zahlweg (bei uns Debitorennummer) - Freenumber1

  • Body:

    • Bezeichnung - ? generieren?

    • LetzteAenderung - UpdateDate

getDataForPutPaymentType


PUT /V1/kunden/{Kundennummer}/zahlwege/{Zahlweg}/bankverbindung

Container ContractAccount

  • Kundennummer - Freenumber3

  • Zahlweg (bei uns Debitorennummer) - Freenumber1

  • Body:

    • GueltigAb - GueltigAb (StartDate)

    • Bankleitzahl - ?

    • Kontonummer - ?

    • AbweichenderKundenname - CustNoInvoicePk (Rechnungsempfänger)

    • Zahlungsartkennzeichen - C12Zahlweg (Zahlungsweise)

    • Einzugsermaechtigung - ?

    • Bic - BICKey (BIC)

    • Iban - IBAN

    • LetzteAenderung - UpdateDate

getDataForPutCustomerBankAccount


PUT /V1/kunden/{Kundennummer}/zahlwege/{Zahlweg}/bankverbindung/sepa-mandat

Container ContractAccount

  • Kundennummer - Freenumber3

  • Zahlweg (bei uns Debitorennummer) - Freenumber1

  • Body:

    • LetzteAenderung - UpdateDate

    • GlaeubigerId - ContAccountDescription

    • Mandatsref - ContAccountType

    • GueltigAb - GueltigAb (StartDate)

    • Unterschriftsdatum - GueltigAb (StartDate)

    • Sequenztyp - ?

    • BasisFirmenlastschrift - ?

    • Mandatsverfalldatum - ?

    • Mandatserzeugung - Freetext6

    • GueltigAb_AlterWert - ?

getDataForPutDebitorMandateForBankAccount


zaehlerstand-erfassung




POST /V1/vertraege/{VertragsID}/zaehlerstand/vorgangsdatum/{Vorgangsdatum}

Container Contract

  • VertragsId - ContNo

  • Vorgangsdatum - Freedate1 (Ablesedatum)

  • Body:

    • Zaehlerstand - Freenumber5 (Zählerstand)

    • Ablesekennzeichen - Freetext16 (Ablesekennzeichen)

    • StandAlternative - -

    • LaufzeitUebertragen - -

    • AblkzUebernehmen - -

getDataForPostContractReadingMeter


kunden-pflege




POST /V1/kunden/{Kundennummer}/kontakte

Customer

  • Kundennummer - CustomerNo2

  • Body:

    • Typ - ?

    • Kontakt - ?

    • Bemerkung - ?

getDataForPostContactInformations


POST /V1/kunden/create

Customer

  • Body

    • TODO JKO

getDataForPutContacts


PUT /V1/kunden/{Kundennummer}/kontakte/{TypLaufendeNummer}

Customer

getDataForPutContactInformations


PHP API




GET /base/DocumentDownload

  • Body

    • file_id - Ergebnis aus anderem Aufruf

getDataForGetDocument


prozesse




GET /V1/wechsel-prozesse/kunden/{Kundennummer}/objekte/{Objektnummer}

Container Installation

  • LocationPk auf Location (Anschkussobjekt)

  • CustomerPk auf Customer (GP)

Customer

  • Kundennummer - CustomerNo2

Location

  • Objektnummer - ReferenceNumber

getDataForGetCustomerObjectChangeProcess


vertrag-pflege




GET /V1/vertraege/{VertragsID}/verbraeuche

Contract

  • VertragsID - ContNo

getDataForGetContractConsumption


GET /V1/vertraege/{VertragsID}/history

Contract

  • VertragsID - ContNo

getDataForGetContractHistory


GET /V1/vertraege/{VertragsID}/auto-strom

Contract

  • VertragsID - ContNo

getDataForGetContractCarElectricity


GET /V1/vertraege/{VertragsID}/boni

Contract

  • VertragsID - ContNo

getDataForGetContractBonus


POST /V1/vertraege/{VertragsID}/checkVertragsabgang

Contract

  • VertragsID - ContNo

  • Body:

    • TODO JKO

getDataForPostCheckContractOutflow


POST /V1/vertraege/executeVertragsabgang

Contract

  • Body:

    • TODO JKO

getDataForPostExecuteContractOutflow


POST /V1/vertraege/{VertragsID}/anschlusswerte

Contract

  • VertragsID - ContNo

  • Body:

    • Formular - ?

getDataForPostContractSupply


POST /V1/vertraege/{VertragsID}/tarifwechsel

Contract

  • VertragsID - ContNo

  • Body:

    • TODO JKO

getDataForPostContractRateChange


PUT /V1/vertraege/{VertragsID}/boni

Contract

  • VertragsID - ContNo

  • Body:

    • Bonusart - ?

    • Bonusname - ?

    • BonusBetrag - ?

    • BonusWarningOff - ?

getDataForPutContractBonus


forderungen 




POST /V1/vertraege/{VertragsID}/abschlaege

Contract

  • VertragsID - ContNo

  • Body:

    • Versorgungsart - ProductTypeKey

    • Faelligkeitsdatum - Freedate2

    • AufNachfolgeTermineUebertragen - ?

    • Betrag - Freenumber2

    • Sperrkennzeichen - ContractAccountPk → Freetext2.ContractAccount

getDataForPostContractAdvancePay


GET /V1/vertraege/{VertragsID}/abschlaege

Contract

  • VertragsID - ContNo

getDataForGetContractAdvancePay


GET /V1/vertraege/{VertragsID}/abschlaege/gruppierungen/Faelligkeitsdatum

Contract

  • VertragsID - ContNo

getDataForGetContractAdvancePayGroupByPaymentDate