Wiki-Quellcode von Verwendung


Zeige letzte Bearbeiter
1 [[**Plugin download**>>url:https://customer.formcycle.eu/index.php/apps/files/?dir=/FORMCYCLE%20-%20Plugins%20Customer/ePayBL%3A%20Epayment%20Plugin%20(plugin-bundle-epaybl)&fileid=50473||rel="noopener noreferrer" target="_blank"]] (Anmeldung erforderlich)
2
3 {{info}}
4 **Achtung:**
5 Seit Plugin-Version {{version major="4" minor="0" patch="0"}}{{/version}} ist ein Anbindung an von der AKDB unabhängigen Anbietern möglich. Alte AKDB spezifische Plugin-Versionen sind [[**unter diesem Link **>>url:https://customer.formcycle.eu/index.php/apps/files/?dir=/FORMCYCLE%20-%20Plugins%20Customer/AKDB%3A%20EPayment%20plugin%20(plugin-bundle-akdb-epayment)&fileid=2674||rel="noopener noreferrer" target="_blank"]] (Anmeldung erforderlich) zu finden.
6 Bezahlvorgänge, welche in einer früheren Version abgebrochen wurden, können nicht in der Plugin-Version {{version major="4" minor="0" patch="0"}}{{/version}} abgeschlossen werden.
7 {{/info}}
8
9 {{content/}}
10
11 {{info}}
12 **Achtung:**
13 Bevor Sie die ePayBL EPayment in ihren Formular-Prozessen einbinden, stellen Sie bitte sicher, dass die konfigurative Anbindung des Dienstes durch den {{formcycle/}}-Administrator erfolgt ist!
14 {{/info}}
15
16 Das kostenpflichtige ePayBL EPayment Plugin ermöglicht es, über das [[ePayBL Portal>>https://www.epaybl.de/||rel="noopener noreferrer" target="_blank" title="E-Payment Bund und Länder"]], einen Bezahlvorgang in einen Formularprozess einzubauen.
17
18 Der nachfolgende Artikel beschreibt beispielhaft die von einen Formular-Ersteller auszuführenden Schritte, um einen Bezahlvorgang in einem Formular zu integrieren.
19 Auf die notwendigen Schritte, um den Service technisch in {{formcycle/}} einzubinden wird an dieser Stelle nicht eingegangen.
20
21 {{id name="config_reihenfolge"/}}
22 Prinzipiell sind immer folgende Schritte für eine Einbindung auszuführen:
23
24 1. Formular mit "bestellbaren" Artikeln und notwendigen Dateneingaben versehen
25 1. Workflow konfigurieren mit:
26 1*. einer Aktionen zum Starten einer Bezahl-Transaktion
27 1*. Ereignissen für eine gezielten Reaktion auf Rückmeldungen vom Bezahl-Portal
28 1. Anzeige des Ergebnisses der Bezahl-Transaktion
29
30 == 1. Formular für den Bezahlvorgang designen ==
31
32 Durch die Installation des Plugins im {{formcycle/}}-System sind im Designer ein zusätzliches Element, sowie 4 Vorlagen vorhanden, welche den Nutzer bei der notwendigen Konfiguration für das EPayment unterstützen sollen.
33
34 {{id name="epay_artikel"/}}
35
36 === 1.1. Artikel definieren durch das Formular-Element: //EPayment Artikel//: ===
37
38 {{figure image="hilfe_epay_artikel_form.png"}}
39 Konfigurationsmöglichkeiten am Formular-Element //EPayment Artikel//
40 {{/figure}}
41
42 Über das Formular-Element //EPayment Artikel// werden die für eine Bestell-Transaktion notwendigen Artikel definiert.
43 Das Formular-Element dient dabei zum Einen für eine visuelle Darstellung des Artikels (mit Bild, Beschreibung, Preisangabe, Eingabemöglichkeit für Bestellmenge) innerhalb eines Formulars, als auch als Vorlage für die Erstellung einer konkreten Bestellposition zum Zeitpunkt der Ausführung einer Bezahl-Transaktion.
44
45 Ab Plugin-Version {{version major="3" minor="3" patch="0"}}{{/version}} können Bestellpositionen auch direkt in der Workflow-Aktion definiert werden.
46 Dadurch muss kein //EPayment Artikel// zwingend im Formular vorhanden sein. Bei Konfiguration der Workflow-Aktion **[[Bestellung übermitteln>>doc:||anchor="plugin_epay_init"]]** wird geprüft, dass mindestens ein //EPayment Artikel// im Formular oder eine Bestellposition direkt in der Workflow-Aktion vorhanden ist.
47
48 __Grundeigenschaften:__
49
50 ; Versteckt
51 : Durch das Auswählen dieser Option wird es möglich einen Bestellartikel vor dem Nutzer zu verbergen.
52 Wenn gleichzeitig dazu noch die Option **Pflicht-Artikel** ausgewählt wird, so wird beim Absenden des Formulars dieser Artikel automatisch der Bestellung hinzugefügt.
53 : Dies kann immer dann sinnvoll sein, wenn dem Benutzer selbst keine Entscheidung für die Auswahl eines Bestellartikels ermöglicht werden soll, zum Beispiel bei der Erhebung einer Gebühr.
54
55 __EPayment Bestellartikel Einstellungen:__
56
57 ; Pflicht-Artikel
58 : Diese Option ermöglicht es, einen Artikel als ausgewählt zu markieren, sodass er beim Absenden des Formulars automatisch der Bestellung hinzugefügt wird.
59 ; Beschreibung
60 : Nähere Beschreibung eines Artikels
61 ; Artikel-Preis (in Euro)
62 : Der Preis für einen Artikel. Der an dieser Stelle konfigurierte Wert dient zum Einen für die Anzeige innerhalb des Formulars, als auch zur Berechnung der Gesamtsumme im Fall einer Bestellung des Artikels.
63 ; Artikelnummer
64 : Eine eindeutige Nummer für den einzelnen Artikel innerhalb des Formulars. Dient bei der Ausführung eines Bestell-Prozesses zur eindeutigen Identifizierung des jeweiligen Artikels.
65 ; Max. Bestellmenge
66 : Hier kann die für den Nutzer maximal auswählbare Bestellmenge für einen Artikel definiert werden.
67 ; Belegnummer
68 : Die Belegnummer ist ein optionaler Wert, welcher zur weiterführenden Verarbeitung auf Seiten von ePayBL dient.
69
70 {{info}}
71 Bei Übermittlung einer Bestellung werden nur die Artikelnummer, sowie die jeweilige Anzahl von einem Bestellartikel, zum Server übertragen. Damit ein Artikel innerhalb einer Bestellung übermittelt wird, muss die "Bestellen"-Option angehakt sein.
72 {{/info}}
73
74 {{id name="epay_vorlage"/}}
75
76 === 1.2. Vorlagen zur Ermittlung von Bestellinformationen: ===
77
78 {{figure image="hilfe_epay_vorlagen_form.png"}}
79 Vorlagen zur Datenerhebung für das EPayment
80 {{/figure}}
81
82 Durch das Plugin werden verschiedene Designer-Vorlagen bereitgestellt, mit denen es ermöglicht wird die nachfolgend aufgeführten Daten vom Benutzer zu ermitteln:
83
84 * **Persönliche Daten**: Anrede, Name, Vorname, E-Mail etc.
85 * **Rechnungsadresse**
86 * **Lieferadresse**
87 * **Bankverbindung**
88
89 {{info}}
90 Die Vorlagen "Persönliche Daten" und "Rechnungsadresse" können im Zusammenspiel mit dem //Bürgerkonto-Login// der AKDB verwendet werden. Sie werden nach einem erfolgreichen Login automatisch vorbelegt.
91 {{/info}}
92
93 {{id name="epay_btn"/}}
94
95 === 1.3. Bestellung an den Server übermitteln: ===
96
97 Um eine Bestellung auszulösen und die bestellten Artikel zum Server zu übertragen muss dem Formular eine //Senden//-Schaltfläche hinzugefügt werden.
98 \\{{id name="config_process"/}}
99
100 == 2. Workflow für EPayment konfigurieren ==
101
102 Um eine Bezahl-Transaktion in einen Formularprozess einzubauen werden folgende Elemente vom Plugin zur Verfügung gestellt:
103
104 * Workflow-Aktion **[[Bestellung übermitteln>>doc:||anchor="plugin_epay_init"]]**: Diese erzeugt eine neue Bezahl-Transaktion auf Seiten des ePayBL Anbieters und leitet den Benutzer auf dessen Portalseite weiter.
105 * Workflow-Ereignis **[[Bezahlung erfolgreich>>doc:||anchor="plugin_event_epay_success"]]**: Verarbeitet ein Ereignis, welches auf der Rückmeldung über eine erfolgreiche Bezahlung auf dem ePayBL Portal basiert.
106 * Workflow-Ereignis **[[Bezahlung nicht erfolgreich>>doc:||anchor="plugin_event_epay_error"]]**: Verarbeitet ein Ereignis, welches auf der Rückmeldung über eine noch offene Bezahlung auf dem ePayBL Portal basiert. Dabei kann dies verschiedene Ursachen haben. Zum einen kann die Bezahlvorgang durch den Nutzer abgebrochen worden sein oder es ist zu einem Fehler im ePayBL Portal gekommen.
107
108 Ein Workflow für einen einfachen Fall kann folgendermaßen konfiguriert sein:
109
110 {{figure image="hilfe_workflow.png"}}
111 Workflow mit EPayment Anbindung
112 {{/figure}}
113
114 __Kurze Ablaufbeschreibung zum dargestellten Workflow:__
115
116 ~1. Durch das Absenden des Bestellformulars wird das Ereignis //Bestellen// aufgerufen und dort das Aktions-Plugin **[[ePayBL:Bestellung übermitteln>>doc:||anchor="plugin_epay_init"]]** ausgeführt. Dieses ermittelt die für den Bestellvorgang notwendigen Daten aus dem Formular und startet eine Bezahl-Transaktion auf Seiten des ePayBL Anbieters. Wenn dies erfolgreich war, wird der Benutzer zum [[ePayBL>>https://www.epaybl.de/||rel="noopener noreferrer" target="_blank" title="E-Payment Bund und Länder"]] Portal der angebundenden Umgebung weitergeleitet.
117
118 2. Nach Abschluss des Bezahlvorgangs im ePayBL Portal wird der Benutzer wieder zu {{formcycle/}} zurückgeleitet. Dort erfolgt automatisch eine Überprüfung des Bezahlstatus am EPayment-System. Aus dem Ergebnis dieser Überprüfung ergibt sich das vom System ausgelöste Ereignis. Wenn die Überprüfung ergeben hat, dass die Bezahlung erfolgreich war, wird ein **[[Bezahlung erfolgreich>>doc:||anchor="plugin_event_epay_success"]]**-Ereignis durch das System ausgelöst. In allen anderen Fällen ist es ein **[[Bezahlung nicht erfolgreich>>doc:||anchor="plugin_event_epay_error"]]** Ereignis.
119
120 3. Ist die Bezahlung erfolgt, wird in den Status //Bezahlt// gewechselt und dem Nutzer wird eine entsprechende Abschlussseite angezeigt.
121
122 4. Im Falle eines negativen Ergebnisses der Überprüfung des Bezahlvorgangs (z.B.: der Nutzer hat den Bezahlvorgang im ePayBL Portal abgebrochen; während des Bezahlvorgangs ist ein Fehler aufgetreten), wird im vorliegenden Beispiel eine E-Mail erzeugt, in der der Benutzer auf die noch ausstehende Zahlung hingewiesen wird. Der Workflow wird in den Status //Nicht bezahlt// versetzt und dem Nutzer
123 wird eine entsprechende Abschlussseite angezeigt.
124
125 {{id name="plugin_epay_init"/}}
126
127 === 2.1. Konfigurationsmöglichkeiten des Aktions-Plugins //Bestellung übermitteln// ===
128
129 Dieses Aktions-Plugin ist für das Erzeugen einer Bezahl-Transaktion im [[ePayBL>>https://www.epaybl.de/||rel="noopener noreferrer" target="_blank" title="E-Payment Bund und Länder"]] Portal zuständig. Hier werden im Vorfeld die Daten, welche im Zusammenhang mit der Transaktion stehen (bestellte Artikel, Preisbestimmung, persönliche Daten des Käufers etc.), festgelegt.
130
131 {{info}}
132 Wenn vor der Konfiguration des Plugins bereits mindestens ein **[[EPayment-Artikel>>doc:||anchor="epay_artikel"]]**, sowie die **[[Vorlage>>doc:||anchor="epay_vorlage"]]** für die **persönlichen Daten** im Formular hinterlegt wurden, werden bei einer Neueinrichtung der //Bestellung übermitteln// Plugin-Aktion die notwendigen Pflicht-Konfigurationen bereits mit den ermittelten Daten aus dem Formular vorbelegt.
133
134 Es empfiehlt sich deshalb die in diesem Artikel beschriebene [[Konfigurations-Reihenfolge>>doc:||anchor="config_reihenfolge"]] einzuhalten.
135
136 Es ist aber auch möglich das Formular im Nachhinein anzupassen und anschließend die Daten innerhalb des Aktions-Plugins zu aktualisieren.
137 {{/info}}
138
139 Die Konfigurationsoberfläche des Aktions-Plugins ist in einzelne Bereiche unterteilt die nachfolgend kurz beschrieben werden.
140
141 {{panel title="Kundenstammdaten" fullwidth="true" initial="visible" triggerable="true"}}
142
143 {{figure image="plugin_init_config_kundenstammdaten.png"}}
144 Konfiguration für die Kundenstammdaten
145 {{/figure}}
146
147 In diesem Bereich werden die Daten des Benutzers hinterlegt, für den die Bezahl-Transaktion erzeugt werden soll.
148 Die einzelnen Parameter können per Platzhalter oder fest definiert hinterlegt werden.
149
150 {{info}}
151 Über den [[image:icon_update.png]]-Button können diese Felder durch Nutzung der EPayment-Vorlage //Persönliche Daten// vorbelegt werden.
152 {{/info}}
153
154 ; Anrede
155 ; Titel
156 ; Vorname
157 ; Nachname (Pflichtfeld)
158 ; Geburtsdatum
159 : Geburtsdatum muss in der Form **dd.MM.yyyy** übermittelt werden.
160 ; E-Mail
161 : Wird für die Zustellung von Emails an den Kunden in Abhängigkeit von der ePay-BL-Mandantkonfiguration benötigt.
162 ; Telefon
163 ; Mobiltelefon
164
165 {{/panel}}
166
167 {{id name="config_paypage"/}}
168
169 {{panel title="Konfiguration für die PayPage" fullwidth="true" initial="visible" triggerable="true"}}
170
171 Bei der "PayPage" handelt es sich um eine bereits vorbefüllte Bezahlseite zur Online-Bezahlung. Der Nutzer hat hier noch die Auswahl, mit welchem Bezahl-Dienstleister er bezahlen möchte (Paypal, giropay etc.). Die Art und Anzahl der dem Nutzer zur Auswahl stehenden Bezahl-Dienstleister hängt dabei davon ab, was im Vorfeld vertraglich mit dem ePayBL Anbieter vereinbart wurde.
172
173 {{figure image="plugin_init_config_paypage.png"}}
174 Konfiguration für die PayPage
175 {{/figure}}
176
177 ; Automatische Weiterleitung zur PayPage verhindern
178 : Bei aktivierter Einstellung kann eine automatische Weiterleitung zur PayPage unterbunden werden.
179 ; Fälligkeitsdatum
180 : Der konfigurierte Wert muss sich in ein gültiges Datum umwandeln lassen. Wenn an dieser Stelle ein Wert hinterlegt ist, wird dieser als Fälligkeitszeitpunkt für die Zahlung übermittelt und die globale Einstellung für den **Fälligkeitszeitraum** wird nicht beachtet.
181 ; Buchungstext auf PayPage
182 : Der hier festgelegte Buchungstext wird dem Benutzer auf der PayPage angezeigt.
183 {{/panel}}
184
185 {{panel title="Definition zusätzlicher Bestellpositionen" fullwidth="true" triggerable="true"}}
186
187 {{figure image="plugin_init_config_bestellposition.png"}}
188 Konfiguration von zusätzlichen Bestellpositionen
189 {{/figure}}
190
191 ; Anzahl
192 : Definiert die für die Bestellposition geltende Anzahl. Der hier definierte Wert muss zur Laufzeit einer Zahl größer 0 entsprechen, damit die Bestellposition mit in die aktuelle Bestellung einbezogen wird. Die Anzahl dient weiterhin zur Berechnung des Gesamtpreises der Bestellposition innerhalb der Bestellung
193 ; Buchungstext
194 : Der hier definierte Text wird als Buchungstext übermittelt. Er darf nur aus SEPA-konformen Zeichen bestehen und maximal 21 Zeichen lang sein. Der Text kann dabei auch aus Platzhaltern stammen. Er wird, wenn dies notwendig ist, automatisch auf 21 Zeichen eingekürzt.
195 ; Preis (in Euro)
196 : Der (Einzel)Preis für die Bestellposition. Der an dieser Stelle konfigurierten Wert muss sich in eine kommaseparierte Zahl umwandeln lassen und dient zur Berechnung der Gesamtsumme für die Bestellposition. (Berechnung: Gesamtpreis = Anzahl x Preis)
197 ; Beschreibung
198 : Dient der interne Beschreibung der Bestellposition. Diese Information wird nicht an ePayBL weiter gegeben.
199 ; Belegnummer
200 : Die Belegnummer ist ein optionaler Wert, welcher zur weiterführenden Verarbeitung auf Seiten von ePayBL dient.
201
202 Über den Button [[image:icon_add.png]] können neue Bestellpositionen hinzugefügt werden. Über den Button [[image:icon_del.png]] lässt sich die jeweilige Bestellposition wieder aus der Tabelle entfernen.
203
204 {{/panel}}
205
206 {{panel title="Konfiguration ePayBL ePayment-Mandant" fullwidth="true" initial="visible" triggerable="true"}}
207
208 {{figure image="plugin_init_config_akdb_mandant.png"}}
209 Konfiguration ePayBL EPayment-Mandant
210 {{/figure}}
211
212 In diesem Bereich können die globalen Einstellungen für den zu verwendenden ePayBL Mandanten übersteuert werden. Die Einstellungen zum ePayBL Mandanten sind notwendig, um später die Transaktion auf Seiten von ePayBL
213 der richtigen Behörde (entspricht der festgelegten Mandant-Nummer), dem Bewirtschafter und der Haushaltsstelle zuzuordnen.
214 In den meisten Fällen sind diese Einstellungen bereits durch einen Plugin-Administrator global hinterlegt worden, sodass an dieser Stelle keine Konfiguration notwendig ist.
215
216 Die einzelnen Parameter können per Platzhalter oder fest definiert hinterlegt werden. Weiterhin kann über den Button [[image:icon_update.png]] //Webservice Erreichbarkeit prüfen// die generelle Erreichbarkeit des EPayment Webservice geprüft werden.
217
218 ; Mandant-Nummer
219 : ePayBL-Mandantennummer des aufrufenden eShops (FORMCYCLE) (Wird durch ePayBL-System vorgegeben)
220 ; Bewirtschafter-Nummer
221 : Bewirtschafternummer (Wird durch ePayBL-System vorgegeben)
222 ; Haushaltsstelle
223 : Nummer der Haushaltsstelle, welcher die Buchung zugeordnet werden soll. (Wird durch ePayBL-System vorgegeben)
224 ; Objektnummer
225 : Dient der internen Verbuchung im EPayment-System. (Wird durch ePayBL-System vorgegeben)
226 ; Kennzeichen-Mahnverfahren
227 : Einstellung für das Kennzeichen in einem Mahnverfahren. (Mögliche Werte werden durch ePayBL-System vorgegeben)
228 ; Fälligkeitszeitraum
229 : Einstellung für die Berechnung des Fälligkeitszeitraumes der Zahlung (Dauer in Tagen).
230
231 {{/panel}}
232
233 ==== 2.1.1 Rückgabewerte der Workflow-Aktion ====
234
235 {{figure image="plugin_init_result.png"}}
236 Rückgabewert und Fehlercodes der Aktion
237 {{/figure}}
238
239 __Rückgabewerte__
240
241 ; [%$[Name der Aktion].RESULT.BestellPosition[i]['key']%]
242 : Eine Auflistung über alle Bestell-Positionen, welche in der aktuellen Bestellung enthalten sind.
243 Zu jeder Bestell-Position können folgende Werte abgefragt werden:
244
245 (((
246 * **Artikelnummer**: Die am //EPayment Artikel// hinterlegte eindeutige Kennung für den Artikel
247 * **Buchungstext**: Der übermittelte Buchungstext (max.21 Zeichen, SEPA konform)
248 * **Menge**: Die bestellte Menge für die aktuelle Bestell-Position
249 * **Beschreibung**: Die am //EPayment Artikel// hinterlegte Artikel-Beschreibung
250 * **Einzelpreis**: Der am //EPayment Artikel// hinterlegte Preis für ein Stück. Ausgabe mit Währungssymbol.
251 * **Preis**: Der errechnete Gesamtpreis für die aktuelle Bestell-Position. Ergibt sich aus //Menge x Einzelpreis//. Ausgabe mit Währungssysmbol
252
253 Nachfolgend einige Beispiele für die Datenabfrage aus den Bestellpositionen:
254 Für die Beispiele wird folgender durch eine Aktion mit Namen //Bestellung übermitteln// bereitgestellter Platzhalter zu Grunde
255 gelegt: **[%$Bestellung übermitteln.RESULT.Bestellung[i][''key'']%]**
256 Die in den eckigen Klammern hinterlegten Werte sind variabel und haben folgende Bedeutung:
257
258
259 * **i**: Zählvariable für den Zugriff auf eine Bestell-Position aus der Gruppe aller Bestell-Positionen. Ein möglicher Wert muss sich im Bereich von 0 bis zum Wert der BestellPositionAnzahl -1 befinden.
260 * **key**: Schlüssel für den Zugriff auf die jeweilige Eigenschaft
261
262 Beispiele:
263 Abfrage des Einzelpreises an der 1. Bestell-Position: **[%$Bestellung übermitteln.RESULT.Bestellung[0][''Einzelpreis'']%]**
264 Abfrage der Menge an der 3. Bestell-Position: **[%$Bestellung übermitteln.RESULT.Bestellung[2][''Menge'']%]**
265 )))
266
267 ; [%$[Name der Aktion].RESULT.BestellPositionAnzahl%]
268 : Die Gesamtanzahl der Bestellpositionen, welche in der aktuellen Bestellung enthalten sind
269 ; [%$[Name der Aktion].RESULT.Gesamtbetrag%]
270 : Der in der Zahlungstransaktion ausgewiesene zu zahlende Geldbetrag. Angabe in Euro
271 ; [%$[Name der Aktion].RESULT.Kassenzeichen%]
272 : Das aktuelle Kassenzeichen unter dem die Zahlungstransaktion im ePayBL Portal geführt wird.
273 ; [%$[Name der Aktion].RESULT.UrlToPaypage%]
274 : Die URL zur Bezahlseite auf Seiten von ePayBL, wo die Bezahlung der aktuellen Transaktion durchgeführt werden kann.
275
276 __Fehlercodes__
277
278 ; NO_ORDER_DATA
279 : Fehlercode, wenn zur Laufzeit keine Bestellpositionen übermittelt wurden. Diese kann beispielweise auftreten, wenn der Formular-Nutzer beispielsweise keine Artikel zum Bestellen ausgewählt hatte.
280 ; SRV_NOT_AVIALABLE
281 : Fehlercode, wenn der ePayBL Service nicht verfügbar ist.
282 ; SRV_METHOD_ERROR
283 : Fehlercode, wenn eine ePayBL Webservice-Methode einen Fehler lieferte. Bei Auftreten von solchen Fehlertypen sollte das
284 {{formcycle/}} interne Fehler-Protokoll für eine tiefere Analyse einbezogen werden.
285 ; INTERNAL_ERROR
286 : Fehlercode für einen nicht nähere beschriebenen Fehler. Bei Auftreten von solchen Fehlertypen sollte das
287 {{formcycle/}} interne Fehler-Protokoll für eine tiefere Analyse einbezogen werden.
288 {{id name="plugin_event_epay_success"/}}
289
290 === 2.2. Workflow-Ereignis //Bezahlung erfolgreich// ===
291
292 {{figure image="trigger_success.png"}}
293 Workflow-Ereignis bei erfolgreicher Bezahlung
294 {{/figure}}
295
296 Eine Workflow-Verarbeitungskette mit diesem Ereignis wird ausgeführt, wenn eine Rückleitung aus dem ePayBL Portal erfolgt
297 und die Bezahlung erfolgreich durchgeführt wurde. Pro Formular-Vorgang kann dieses Ereignis genau einmal eintreten.
298 Das Ereignis stellt dabei folgende Werte bereit, die per Platzhalter in nachfolgenden Aktionen ausgewertet werden können:
299
300 ; **[%$TRIGGER.paymentStatus%]**
301 : Bezeichnung des Status, wie er vom ePayBL Portal zurück geliefert wird. (Möglicher Wert: INAKTIV)
302 ; **[%$TRIGGER.paymentStatusText%]**
303 : Eine Nachricht, die den zurück gelieferten Status näher beschreibt
304 ; **[%$TRIGGER.paymentMethod%] {{version major="3" minor="5"}}{{/version}}**
305 : Parameter gibt Auskunft über das in der Bezahl-Transaktion angewendete Zahlverfahren
306
307 {{id name="plugin_event_epay_error"/}}
308
309 === 2.3. Workflow-Ereignis //Bezahlung nicht erfolgreich// ===
310
311 {{figure image="trigger_error.png"}}
312 Workflow-Ereignis bei nicht erfolgreicher Bezahlung
313 {{/figure}}
314
315 Eine Workflow-Verarbeitungskette mit diesem Ereignis wird immer dann ausgeführt, wenn eine Rückleitung aus dem ePayBL Portal erfolgte
316 und die Bezahlung nicht durchgeführt wurde. Pro Formular-Vorgang kann dieses Ereignis mehrfach eintreten (Bei Fehlern im ePayBL Portal oder bei Abbruch des Bezahlvorgangs durch den Nutzer).
317 Das Ereignis stellt folgende Werte bereit, die per Platzhalter in nachfolgenden Aktionen ausgewertet werden können:
318
319 ; **[%$TRIGGER.paymentStatus%]**
320 : Bezeichnung des Status, wie er vom ePayBL Portal zurückgeliefert wird.
321 : Folgende Werte sind möglich:
322 : **AKTIV**: Die Bezahlung über die PayPage ist noch nicht erfolgt (z.B. weil der Nutzer den Bezahlvorgang auf Seiten von ePayBL abgebrochen hat).
323 : **MANDANT_NICHT_GEFUNDEN**: Der Mandant wurde im ePayment-System nicht gefunden.
324 : **MANDANT_INAKTIV**: Der Mandant ist im ePayment-System derzeit als inaktiv gekennzeichnet.
325 : **VERBINDUNG_OHNE_HTTPS**: Die Verbindung zum Webservice erfolgte nicht über HTTPS mit Client-Zertifikaten.
326 : **VERBINDUNG_ZERTIFIKAT_FEHLER**: Das für die Verbindung verwendete Client-Zertifikat darf nicht für den gewählten Mandanten verwendet werden.
327 : **KASSENZEICHEN_NICHT_VORHANDEN**: Das gewählte Kassenzeichen ist nicht vorhanden.
328 : **KASSENZEICHEN_NICHT_GEFUNDEN**: Das gewählte Kassenzeichen konnte nicht gefunden werden.
329 : **INTERNER_EPAYMENT_FEHLER**: Interner nicht dokumentierter Fehler im ePayment-System.
330 : **UNDEFINIERT**: Ein im System nicht bekannter Status
331 ; **[%$TRIGGER.paymentStatusText%]**
332 : Eine Nachricht, die den zurückgelieferten Status näher beschreibt
333 ; **[%$TRIGGER.paypageUrl%]**
334 : URL zur Paypage mit der aktuellen Transaktionsnummer. Damit ist ein nochmaliges Aufrufen und Bezahlen der offenen Transaktion möglich.
335 ; **[%$TRIGGER.paymentMethod%]** {{version major="3" minor="5"}}{{/version}}
336 : Parameter gibt Auskunft über das in der Bezahl-Transaktion angewendete Zahlverfahren
337 ; **[%$TRIGGER.paymentVerifyUrl%] {{version major="3" minor="5"}}{{/version}}**
338 : URL zum erneuten Prüfen des Bezahlstatus. Ein Aufruf der URL löst im Anschluss, an die Überprüfung des aktuellen Bezahlstatus, die entsprechenden Workflow-Ereignisse aus
339
340 == 3. Ergebnisanzeige ==
341
342 Die Anzeige des Ergebnisses bzw. des Status einer Bezahl-Transaktion erfolgt standardmäßig mittels einer extra Abschluss-Seite.
343 Dafür stellt das Plugin 3 HTML-Templates bereit:
344
345 * **ePayBL ePayment Bezahlung Erfolg**: Standard-Template für Anzeige bei erfolgreich abgeschlossener Bezahlung.
346 * **ePayBL ePayment Bezahlung Fehler**: Standard-Template für Anzeige bei offenen bzw. fehlerhaft beendeten Bezahlvorgang. Dieser Template enthält Platzhalter für Anzeige des konkreten Fehlers und einen Link zum Wiederaufruf des noch ausstehenden Bezahlvorgangs.
347 * **ePayBL ePayment Fehler**: Standard-Template für Anzeige bei allgemeinen technischen Fehlern. Der genaue Fehler wird mittels enthaltener Platzhalter ausgewiesen.
348
349 {{info}}
350 Die durch das Plugin bereitgestellten HTML-Templates können bearbeitet werden. Änderungen haben dabei auf alle Formulare mit Bezahl-Workflow Auswirkungen, wenn Sie diese Standard-Templates nutzen.
351 Möchte man in einem einzelnen Bezahl-Workflow ein eigenes Abschluss-Seiten Template verwenden, so kann man dies über eine Aktion //HTML-Abschlussseite// in der jeweiligen Verarbeitungskette realisieren.
352 {{/info}}
353
354 == Versionshistorie ==
355
356 === 4.0.0 ===
357
358 * Wechsel von der SOAP Schnittstelle zu REST. Dadurch ist immer ein Zertifikat und Passwort notwendig sowie die Angabe der Zahlverfahren.
359 * Umstellung von AKDB spezifischer ePayBL Umgebung zu einer freien Festlegung der anzubindenden Umgebung.
360 * Umbennung aller Vorkommnisse von AKDB zu ePayBL.
361
362 === 3.6.0 ===
363
364 * Erweiterung AKDB ePay Setup: Konfigurationsmöglichkeit für Proxy-Server-Einstellungen
365 * Platzhalter für Payment Verify-Url: Mit dem Platzhalter [%$PAYMENT_VERIFY_URL%] kann Status-übergreifend auf den URL zum nochmaligen Prüfen des Status einer Bezahltransaktion zugegriffen werden.
366
367 === 3.5.1 ===
368
369 * Fehlerbehebung: Im Zusammenspiel mit der {{formcycle/}} Version {{version major="7" patch="10"}}{{/version}} konnten Zertifikatsdateien nicht über das AKDB ePay Setup hochgeladen werden. Dieser Fehler wurde behoben.
370
371 === 3.5.0 ===
372
373 * Erweiterungen: EPayment-Verifikation-Aktion (V6) um 'Zahlverfahren' erweitert.
374 Trigger (Workflow V7) um genutztes 'Zahlverfahren' innerhalb der Rückgabewerte erweitert.
375 Error-Trigger (Workflow V7) um 'PaymentVerifyUrl' erweitert. Dieser Parameter kann zum nochmaligen Aufruf der Verifizierung einer Bezahlung genutzt werden.
376 * Erweiterung AKDB ePay Setup: Eingabemöglichkeit für Daten des anzubindenden ePayment-Mandanten; Zusätzlicher Hinweis auf freizugebende URLs (notwendige Firewall-Freigaben)
377
378 === 3.4.3 ===
379
380 * Fehlerbehebung bei Rückleitung von der PayPage zum Formular: In einigen Fällen, insbesondere bei Kommunikation über den Frontend-Server, kam es zu Störungen beim Auslösen der nachgelagerten Workflow-Verarbeitung. Dies wurde behoben.
381
382 === 3.4.2 ===
383
384 * Fehlerbehebung: ein Anzeige-Fehler bei der Berechnung des Gesamtpreises für einen EPayment-Bestellartikel wurde behoben
385 * Fehlerbehebung: Aufgrund von Fehlern beim Decodieren und Entschlüsseln von URL-Parametern, wurde die Verschlüsselungs-Routine angepasst.
386
387 === 3.4.1 ===
388
389 * Fehlerbehebung EPayment Bestellartikel: Die Werte der widget-internen HTML-Elemente sind bei einer Zwischenspeicherung nicht berücksichtigt worden. Dies wurde behoben.
390
391 === 3.4.0 ===
392
393 * Erweiterung AKDB ePay Setup: Ein Verbindungstest ist jetzt auch ohne Konfiguration eines AKDB-Mandanten möglich.
394 * Anpassung EPayment Bestellartikel: HTML-Elemente innerhalb des Widgets um 'data-' Präfix erweitert
395 * Fehlerbehebung: Session-Replacer werden bei Verarbeitung der Workflow-Ereignisse berücksichtigt. 
396
397 === 3.3.1 ===
398
399 * Fehlerbehebung: Mehrfache Anfragen auf den gleichen Vorgang bei Rückleitung vom ePay-BL-Portal werden jetzt vom System abgelehnt, solange der aktuell angefragte Vorgang sich in Verarbeitung befindet.
400
401 === 3.3.0 ===
402
403 * Plugin benötigt mindestens {{formcycle/}} in der Version {{version major="7" patch="9"}}{{/version}}
404 * Erweiterung Workflow-Aktion //Bestellung übermitteln//: Möglichkeit für serverseitige Definition von Bestellpositionen
405 * Einführung AKDB ePay Setup: Je nach Umgebung (Test oder Live) werden die korrekten URL's zum WS-Endpoint und zur PayPage hinterlegt. Weiterhin kann das Zertifikat für die Anbindung des ePay-Live Systems hinterlegt werden.
406
407 === 3.2.0 ===
408
409 * Erweiterung EPayment Bestellartikel: Am Element ist der Gesamtpreis (Anzahl * Einzelpreis) als verstecktes Element verfügbar. Dieser kann über die CSS-Klasse 'CXOrderItemTotalPrice' eingeblendet werden.
410 * Erweiterung Anzahl-Eingabe-Element am EPayment Bestellartikel: Bei einer direkten Werteingabe wird diese sofort gegen die definierte untere und obere Wertgrenze validiert.
411
412 === 3.1.4 ===
413
414 * Formatierung des Rückgabewertes für den Gesamtbetrag auf #0,00 €
415
416 === 3.1.3 ===
417
418 * Fehlerbehebung: Es wurden Problem behoben, welche beim Öffnen von EPayment-Formularen im Designe aufgetreten sind.
419
420 === 3.1.2 ===
421
422 * Neuer Pluginparameter *epayment.webservice.timeout* zum Konfigurieren des Timeouts zum Webservice in Sekunden.
423
424 === 3.1.1 ===
425
426 * Fehlerbehebung: Bei EPayment-Artikel Objekt werden bei fehlenden Werten, Defaultwerte angenommen.
427
428 === 3.1.0 ===
429
430 * Neue Eigenschaften am EPayment-Artikel Objekte hinzugefügt:
431 ** Pflicht-Artikel: Ein Artikel kann als Pflicht definiert werden und wird dadurch automatisch der Bestellung hinzugefügt, egal ob dieser durch Manipulation vor dem Absenden aus der Bestellung entfernt wurde
432 ** Maximale Bestellmenge: Die durch den Nutzer maximal auswählbare Bestellmenge lässt sich begrenzen
433
434 === 3.0.1 ===
435
436 * Plugin benötigt mindestens {{formcycle/}} in der Version {{version major="7" minor="0" patch="1"}}{{/version}}
437 ** Anpassungen der Validierungen im Designer für EPayment-Artikel Objekte
438
439 === 3.0.0 ===
440
441 * Plugin benötigt mindestens {{formcycle/}} in der Version {{version major="7" minor="0" patch="0"}}{{/version}}
442 ** Neue Workflow-Aktion für Initialisierung der Bezahl-Transaktion
443 ** Einführung Ereignisse für Absenden der Bestellung, sowie Verifizierung der erfolgreichen / nicht erfolgreichen Bezahltransaktion