Wiki-Quellcode von Verwendung


Verstecke letzte Bearbeiter
sas 16.1 1 [[**Plugin download**>>url:https://customer.formcycle.eu/index.php/apps/files/?dir=/FORMCYCLE%20-%20Plugins%20Customer/plugin-bundle-akdb-epayment&fileid=2674||rel="noopener noreferrer" target="_blank"]] (requires login)
2
3 {{content/}}
4
rth 1.2 5 {{info}}
6 **Achtung:**
7 Bevor Sie die AKDB EPayment in ihren Formular-Prozessen einbinden, stellen Sie bitte sicher, dass die konfigurative Anbindung des Dienstes durch den {{formcycle/}}-Administrator erfolgt ist!
8 {{/info}}
9
10 Das kostenpflichtige AKDB EPayment Plugin ermöglicht es, über das von der AKDB bereitgestellte [[ePay-BL Portal>>https://www.epaybl.de/||rel="noopener noreferrer" target="_blank" title="E-Payment Bund und Länder"]], einen Bezahlvorgang in einen Formularprozess einzubauen.
11
12 Der nachfolgende Artikel beschreibt beispielhaft die von einen Formular-Ersteller auszuführenden Schritte, um einen Bezahlvorgang in einem Formular zu integrieren.
13 Auf die notwendigen Schritte, um den Service technisch in {{formcycle/}} einzubinden wird an dieser Stelle nicht eingegangen.
14
15 {{id name="config_reihenfolge"/}}
16 Prinzipiell sind immer folgende Schritte für eine Einbindung auszuführen:
17
18 1. Formular mit "bestellbaren" Artikeln und notwendigen Dateneingaben versehen
19 1. Workflow konfigurieren mit:
20 1*. einer Aktionen zum Starten einer Bezahl-Transaktion
21 1*. Ereignissen für eine gezielten Reaktion auf Rückmeldungen vom Bezahl-Portal
22 1. Anzeige des Ergebnisses der Bezahl-Transaktion
23
24 == 1. Formular für den Bezahlvorgang designen ==
25
26 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.
27
28 {{id name="epay_artikel"/}}
29
30 === 1.1. Artikel definieren durch das Formular-Element: //EPayment Artikel//: ===
31
32 {{figure image="hilfe_epay_artikel_form.png"}}
33 Konfigurationsmöglichkeiten am Formular-Element //EPayment Artikel//
34 {{/figure}}
35
36 Über das Formular-Element //EPayment Artikel// werden die für eine Bestell-Transaktion notwendigen Artikel definiert.
rth 11.5 37 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.
rth 1.2 38
rth 11.5 39 Ab Plugin-Version {{version major="3" minor="3" patch="0"}}{{/version}} können Bestellpositionen auch direkt in der Workflow-Aktion definiert werden.
40 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.
rth 11.3 41
rth 1.2 42 __Grundeigenschaften:__
43
rth 3.1 44 ; Versteckt
45 : Durch das Auswählen dieser Option wird es möglich einen Bestellartikel vor dem Nutzer zu verbergen.
46 Wenn gleichzeitig dazu noch die Option **Pflicht-Artikel** ausgewählt wird, so wird beim Absenden des Formulars dieser Artikel automatisch der Bestellung hinzugefügt.
47 : 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.
rth 1.2 48
49 __EPayment Bestellartikel Einstellungen:__
50
rth 3.1 51 ; Pflicht-Artikel
52 : Diese Option ermöglicht es, einen Artikel als ausgewählt zu markieren, sodass er beim Absenden des Formulars automatisch der Bestellung hinzugefügt wird.
53 ; Beschreibung
rth 1.2 54 : Nähere Beschreibung eines Artikels
rth 3.1 55 ; Artikel-Preis (in Euro)
56 : 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.
rth 1.2 57 ; Artikelnummer
rth 3.1 58 : 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.
59 ; Max. Bestellmenge
60 : Hier kann die für den Nutzer maximal auswählbare Bestellmenge für einen Artikel definiert werden.
61 ; Belegnummer
rth 11.5 62 : Die Belegnummer ist ein optionaler Wert, welcher zur weiterführenden Verarbeitung auf Seiten von ePay-BL dient.
rth 1.2 63
64 {{info}}
rth 3.1 65 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.
rth 1.2 66 {{/info}}
67
68 {{id name="epay_vorlage"/}}
69
rth 4.1 70 === 1.2. Vorlagen zur Ermittlung von Bestellinformationen: ===
71
72 {{figure image="hilfe_epay_vorlagen_form.png"}}
73 Vorlagen zur Datenerhebung für das EPayment
74 {{/figure}}
75
76 Durch das Plugin werden verschiedene Designer-Vorlagen bereitgestellt, mit denen es ermöglicht wird die nachfolgend aufgeführten Daten vom Benutzer zu ermitteln:
77
78 * **Persönliche Daten**: Anrede, Name, Vorname, E-Mail etc.
79 * **Rechnungsadresse**
80 * **Lieferadresse**
81 * **Bankverbindung**
82
83 {{info}}
84 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.
85 {{/info}}
86
87 {{id name="epay_btn"/}}
88
89 === 1.3. Bestellung an den Server übermitteln: ===
90
91 Um eine Bestellung auszulösen und die bestellten Artikel zum Server zu übertragen muss dem Formular eine //Senden//-Schaltfläche hinzugefügt werden.
rth 11.2 92 \\{{id name="config_process"/}}
rth 6.2 93
94 == 2. Workflow für EPayment konfigurieren ==
95
rth 6.3 96 Um eine Bezahl-Transaktion in einen Formularprozess einzubauen werden folgende Elemente vom Plugin zur Verfügung gestellt:
rth 6.2 97
98 * Workflow-Aktion **[[Bestellung übermitteln>>doc:||anchor="plugin_epay_init"]]**: Diese erzeugt eine neue Bezahl-Transaktion auf Seiten der AKDB und leitet den Benutzer auf dessen Portalseite weiter.
99 * Workflow-Ereignis **[[Bezahlung erfolgreich>>doc:||anchor="plugin_event_epay_success"]]**: Verarbeitet ein Ereignis, welches auf der Rückmeldung über eine erfolgreiche Bezahlung auf dem ePay-BL Portal basiert.
100 * 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 ePay-BL 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 ePay-BL Portal gekommen.
101
102 Ein Workflow für einen einfachen Fall kann folgendermaßen konfiguriert sein:
103
rth 11.1 104 {{figure image="hilfe_workflow.png"}}
105 Workflow mit EPayment Anbindung
106 {{/figure}}
107
rth 6.2 108 __Kurze Ablaufbeschreibung zum dargestellten Workflow:__
109
110 ~1. Durch das Absenden des Bestellformulars wird das Ereignis //Bestellen// aufgerufen und dort das Aktions-Plugin **[[AKDB: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 der AKDB. Wenn dies erfolgreich war, wird der Benutzer zum [[ePay-BL>>https://www.epaybl.de/||rel="noopener noreferrer" target="_blank" title="E-Payment Bund und Länder"]] Portal der AKDB weitergeleitet.
111
112 2. Nach Abschluss des Bezahlvorgangs im ePay-BL 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.
113
rth 6.5 114 3. Ist die Bezahlung erfolgt, wird in den Status //Bezahlt// gewechselt und dem Nutzer wird eine entsprechende Abschlussseite angezeigt.
rth 6.2 115
rth 6.5 116 4. Im Falle eines negativen Ergebnisses der Überprüfung des Bezahlvorgangs (z.B.: der Nutzer hat den Bezahlvorgang im ePay-BL 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
117 wird eine entsprechende Abschlussseite angezeigt.
rth 6.2 118
119 {{id name="plugin_epay_init"/}}
120
rth 6.3 121 === 2.1. Konfigurationsmöglichkeiten des Aktions-Plugins //Bestellung übermitteln// ===
rth 6.2 122
rth 6.4 123 Dieses Aktions-Plugin ist für das Erzeugen einer Bezahl-Transaktion im [[ePay-BL>>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.
rth 6.2 124
125 {{info}}
rth 6.4 126 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.
rth 6.2 127
128 Es empfiehlt sich deshalb die in diesem Artikel beschriebene [[Konfigurations-Reihenfolge>>doc:||anchor="config_reihenfolge"]] einzuhalten.
129
130 Es ist aber auch möglich das Formular im Nachhinein anzupassen und anschließend die Daten innerhalb des Aktions-Plugins zu aktualisieren.
131 {{/info}}
132
133 Die Konfigurationsoberfläche des Aktions-Plugins ist in einzelne Bereiche unterteilt die nachfolgend kurz beschrieben werden.
134
rth 6.4 135 {{panel title="Kundenstammdaten" fullwidth="true" initial="visible" triggerable="true"}}
rth 6.2 136
rth 6.4 137 {{figure image="plugin_init_config_kundenstammdaten.png"}}
138 Konfiguration für die Kundenstammdaten
rth 6.2 139 {{/figure}}
140
rth 6.4 141 In diesem Bereich werden die Daten des Benutzers hinterlegt, für den die Bezahl-Transaktion erzeugt werden soll.
142 Die einzelnen Parameter können per Platzhalter oder fest definiert hinterlegt werden.
rth 6.2 143
rth 6.4 144 {{info}}
rth 6.6 145 Über den [[image:icon_update.png]]-Button können diese Felder durch Nutzung der EPayment-Vorlage //Persönliche Daten// vorbelegt werden.
rth 6.4 146 {{/info}}
rth 6.2 147
rth 6.4 148 ; Anrede
149 ; Titel
150 ; Vorname
151 ; Nachname (Pflichtfeld)
152 ; Geburtsdatum
153 : Geburtsdatum muss in der Form **dd.MM.yyyy** übermittelt werden.
154 ; E-Mail
155 : Wird für die Zustellung von Emails an den Kunden in Abhängigkeit von der ePay-BL-Mandantkonfiguration benötigt.
156 ; Telefon
157 ; Mobiltelefon
rth 6.2 158
159 {{/panel}}
160
161 {{id name="config_paypage"/}}
162
163 {{panel title="Konfiguration für die PayPage" fullwidth="true" initial="visible" triggerable="true"}}
164
rth 6.12 165 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, SEPA-Lastschrift, giropay etc.). Die Art und Anzahl der dem Nutzer zur Auswahl stehenden Bezahl-Dienstleister hängt dabei davon ab, was im Vorfeld vertraglich mit der AKDB verbart wurde.
rth 6.2 166
167 {{figure image="plugin_init_config_paypage.png"}}
168 Konfiguration für die PayPage
169 {{/figure}}
170
171 ; Automatische Weiterleitung zur PayPage verhindern
172 : Bei aktivierter Einstellung kann eine automatische Weiterleitung zur PayPage unterbunden werden.
173 ; Fälligkeitsdatum
rth 6.13 174 : 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.
175 ; Buchungstext auf PayPage
176 : Der hier festgelegte Buchungstext wird dem Benutzer auf der PayPage angezeigt.
rth 6.2 177 {{/panel}}
178
rth 14.2 179 {{panel title="Definition zusätzlicher Bestellpositionen" fullwidth="true" triggerable="true"}}
rth 11.5 180
rth 14.2 181 {{figure image="plugin_init_config_bestellposition.png"}}
rth 11.5 182 Konfiguration von zusätzlichen Bestellpositionen
183 {{/figure}}
184
185 ; Anzahl
186 : 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
187 ; Buchungstext
188 : 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.
189 ; Preis (in Euro)
190 : Der (Einzel)Preis für die Bestellposition. Der an dieser Stelle konfigurierte Wert muss sich in eine kommaseparierte Zahl umwandeln lassen und dient zur Berechnung der Gesamtsumme für die Bestellposition. (Berechnung: Gesamtpreis = Anzahl x Preis)
191 ; Beschreibung
192 : Dient der interne Beschreibung der Bestellposition. Diese Information wird nicht an ePay-BL weiter gegeben.
193 ; Belegnummer
194 : Die Belegnummer ist ein optionaler Wert, welcher zur weiterführenden Verarbeitung auf Seiten von ePay-BL dient.
195
rth 14.3 196 Ü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.
197
rth 11.5 198 {{/panel}}
199
rth 6.13 200 {{panel title="Konfiguration AKDB ePayment-Mandant" fullwidth="true" initial="visible" triggerable="true"}}
rth 6.2 201
rth 6.4 202 {{figure image="plugin_init_config_akdb_mandant.png"}}
203 Konfiguration AKDB EPayment-Mandant
rth 6.2 204 {{/figure}}
205
rth 6.14 206 In diesem Bereich können die globalen Einstellungen für den zu verwendenden ePay-BL Mandanten übersteuert werden. Die Einstellungen zum ePay-BL Mandanten sind notwendig, um später die Transaktion auf Seiten von ePay-BL
207 der richtigen Behörde (entspricht der festgelegten Mandant-Nummer), dem Bewirtschafter und der Haushaltsstelle zuzuordnen.
rth 6.15 208 In den meisten Fällen sind diese Einstellungen bereits durch einen Plugin-Administrator global hinterlegt worden, sodass an dieser Stelle keine Konfiguration notwendig ist.
rth 6.2 209
rth 6.15 210 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.
rth 6.2 211
rth 6.15 212 ; Mandant-Nummer
rth 6.4 213 : AKDB-Mandantennummer des aufrufenden eShops (FORMCYCLE) (Wird durch ePay-BL-System vorgegeben)
rth 6.15 214 ; Bewirtschafter-Nummer
rth 6.4 215 : Bewirtschafternummer (Wird durch ePay-BL-System vorgegeben)
rth 6.15 216 ; Haushaltsstelle
rth 6.4 217 : Nummer der Haushaltsstelle, welcher die Buchung zugeordnet werden soll. (Wird durch ePay-BL-System vorgegeben)
rth 6.15 218 ; Objektnummer
rth 6.4 219 : Dient der internen Verbuchung im EPayment-System. (Wird durch ePay-BL-System vorgegeben)
rth 6.15 220 ; Kennzeichen-Mahnverfahren
rth 6.4 221 : Einstellung für das Kennzeichen in einem Mahnverfahren. (Mögliche Werte werden durch ePay-BL-System vorgegeben)
rth 6.15 222 ; Fälligkeitszeitraum
rth 6.4 223 : Einstellung für die Berechnung des Fälligkeitszeitraumes der Zahlung (Dauer in Tagen).
224
rth 6.2 225 {{/panel}}
rth 6.4 226
rth 14.4 227 ==== 2.1.1 Rückgabewerte der Workflow-Aktion ====
228
229 {{figure image="plugin_init_result.png"}}
rth 15.2 230 Rückgabewert und Fehlercodes der Aktion
rth 14.4 231 {{/figure}}
232
rth 15.2 233 __Rückgabewerte__
234
235 ; [%$[Name der Aktion].RESULT.BestellPosition[i]['key']%]
rth 15.7 236 : Eine Auflistung über alle Bestell-Positionen, welche in der aktuellen Bestellung enthalten sind.
237 Zu jeder Bestell-Position können folgende Werte abgefragt werden:
rth 15.5 238
rth 15.7 239 (((
240 * **Artikelnummer**: Die am //EPayment Artikel// hinterlegte eindeutige Kennung für den Artikel
241 * **Buchungstext**: Der übermittelte Buchungstext (max.21 Zeichen, SEPA konform)
242 * **Menge**: Die bestellte Menge für die aktuelle Bestell-Position
243 * **Beschreibung**: Die am //EPayment Artikel// hinterlegte Artikel-Beschreibung
244 * **Einzelpreis**: Der am //EPayment Artikel// hinterlegte Preis für ein Stück. Ausgabe mit Währungssymbol.
245 * **Preis**: Der errechnete Gesamtpreis für die aktuelle Bestell-Position. Ergibt sich aus //Menge x Einzelpreis//. Ausgabe mit Währungssysmbol
rth 15.6 246
rth 15.7 247 Nachfolgend einige Beispiele für die Datenabfrage aus den Bestellpositionen:
248 Für die Beispiele wird folgender durch eine Aktion mit Namen //Bestellung übermitteln// bereitgestellter Platzhalter zu Grunde
249 gelegt: **[%$Bestellung übermitteln.RESULT.Bestellung[i][''key'']%]**
250 Die in den eckigen Klammern hinterlegten Werte sind variabel und haben folgende Bedeutung:
rth 15.6 251
252
rth 15.7 253 * **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.
254 * **key**: Schlüssel für den Zugriff auf die jeweilige Eigenschaft
255
256 Beispiele:
257 Abfrage des Einzelpreises an der 1. Bestell-Position: **[%$Bestellung übermitteln.RESULT.Bestellung[0][''Einzelpreis'']%]**
258 Abfrage der Menge an der 3. Bestell-Position: **[%$Bestellung übermitteln.RESULT.Bestellung[2][''Menge'']%]**
rth 15.5 259 )))
rth 15.7 260
rth 15.2 261 ; [%$[Name der Aktion].RESULT.BestellPositionAnzahl%]
262 : Die Gesamtanzahl der Bestellpositionen, welche in der aktuellen Bestellung enthalten sind
263 ; [%$[Name der Aktion].RESULT.Gesamtbetrag%]
264 : Der in der Zahlungstransaktion ausgewiesene zu zahlende Geldbetrag. Angabe in Euro
265 ; [%$[Name der Aktion].RESULT.Kassenzeichen%]
266 : Das aktuelle Kassenzeichen unter dem die Zahlungstransaktion im ePay-BL Portal geführt wird.
267 ; [%$[Name der Aktion].RESULT.UrlToPaypage%]
268 : Die URL zur Bezahlseite auf Seiten von ePay-BL, wo die Bezahlung der aktuellen Transaktion durchgeführt werden kann.
269
270 __Fehlercodes__
271
272 ; NO_ORDER_DATA
273 : Fehlercode, wenn zur Laufzeit keine Bestellpositionen übermittelt wurden. Diese kann beispielweise auftreten, wenn der Formular-Nutzer beispielsweise keine Artikel zum Bestellen ausgewählt hatte.
274 ; SRV_NOT_AVIALABLE
275 : Fehlercode, wenn der ePay-BL Service nicht verfügbar ist.
276 ; SRV_METHOD_ERROR
277 : Fehlercode, wenn eine ePay-BL Webservice-Methode einen Fehler lieferte. Bei Auftreten von solchen Fehlertypen sollte das
rth 15.3 278 {{formcycle/}} interne Fehler-Protokoll für eine tiefere Analyse einbezogen werden.
rth 15.2 279 ; INTERNAL_ERROR
280 : Fehlercode für einen nicht nähere beschriebenen Fehler. Bei Auftreten von solchen Fehlertypen sollte das
rth 15.3 281 {{formcycle/}} interne Fehler-Protokoll für eine tiefere Analyse einbezogen werden.
rth 10.2 282 {{id name="plugin_event_epay_success"/}}
283
284 === 2.2. Workflow-Ereignis //Bezahlung erfolgreich// ===
285
rth 10.3 286 Eine Workflow-Verarbeitungskette mit diesem Ereignis wird ausgeführt, wenn eine Rückleitung aus dem ePay-BL Portal erfolgt
287 und die Bezahlung erfolgreich durchgeführt wurde. Pro Formular-Vorgang kann dieses Ereignis genau einmal eintreten.
288 Das Ereignis stellt dabei folgende Werte bereit, die per Platzhalter in nachfolgenden Aktionen ausgewertet werden können:
rth 10.2 289
290 ; **[%$TRIGGER.paymentStatus%]**
rth 10.3 291 : Bezeichnung des Status, wie er vom ePay-BL Portal zurückgeliefert wird. (Möglicher Wert: INAKTIV)
rth 10.2 292 ; **[%$TRIGGER.paymentStatusText%]**
rth 10.3 293 : Eine Nachricht, die den zurückgelieferten Status näher beschreibt
rth 10.2 294
295 {{id name="plugin_event_epay_error"/}}
296
297 === 2.3. Workflow-Ereignis //Bezahlung nicht erfolgreich// ===
298
rth 10.3 299 Eine Workflow-Verarbeitungskette mit diesem Ereignis wird immer dann ausgeführt, wenn eine Rückleitung aus dem ePay-BL Portal erfolgte
300 und die Bezahlung nicht durchgeführt wurde. Pro Formular-Vorgang kann dieses Ereignis mehrfach eintreten (Bei Fehlern im ePay-BL Portal oder bei Abbruch des Bezahlvorgangs durch den Nutzer).
301 Das Ereignis stellt folgende Werte bereit, die per Platzhalter in nachfolgenden Aktionen ausgewertet werden können:
302
303 ; **[%$TRIGGER.paymentStatus%]**
304 : Bezeichnung des Status, wie er vom ePay-BL Portal zurückgeliefert wird.
rth 10.4 305 : Folgende Werte sind möglich:
306 : **AKTIV**: Die Bezahlung über die PayPage ist noch nicht erfolgt.
rth 11.2 307 : **MANDANT_NICHT_GEFUNDEN**: Der Mandant wurde im ePayment-System nicht gefunden.
rth 10.4 308 : **MANDANT_INAKTIV**: Der Mandant ist im ePayment-System derzeit als inaktiv gekennzeichnet.
309 : **VERBINDUNG_OHNE_HTTPS**: Die Verbindung zum Webservice erfolgte nicht über HTTPS mit Client-Zertifikaten.
310 : **VERBINDUNG_ZERTIFIKAT_FEHLER**: Das für die Verbindung verwendete Client-Zertifikat darf nicht für den gewählten Mandanten verwendet werden.
311 : **KASSENZEICHEN_NICHT_VORHANDEN**: Das gewählte Kassenzeichen ist nicht vorhanden.
312 : **KASSENZEICHEN_NICHT_GEFUNDEN**: Das gewählte Kassenzeichen konnte nicht gefunden werden.
313 : **INTERNER_EPAYMENT_FEHLER**: Interner nicht dokumentierter Fehler im ePayment-System.
314 : **UNDEFINIERT**: Ein im System nicht bekannter Status
rth 10.3 315 ; **[%$TRIGGER.paymentStatusText%]**
316 : Eine Nachricht, die den zurückgelieferten Status näher beschreibt
317 ; **[%$TRIGGER.paypageUrl%]**
318 : URL zur Paypage mit der aktuellen Transaktionsnummer. Damit ist ein nochmaliges Aufrufen und Bezahlen der offenen Transaktion möglich.
rth 10.5 319
320 == 3. Ergebnisanzeige ==
321
rth 10.6 322 Die Anzeige des Ergebnisses bzw. des Status einer Bezahl-Transaktion erfolgt standardmäßig mittels einer extra Abschluss-Seite.
323 Dafür stellt das Plugin 3 HTML-Templates bereit:
rth 10.5 324
rth 10.6 325 * **AKDB ePayment Bezahlung Erfolg**: Standard-Template für Anzeige bei erfolgreich abgeschlossener Bezahlung.
rth 10.7 326 * **AKDB 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.
rth 10.8 327 * **AKDB ePayment Fehler**: Standard-Template für Anzeige bei allgemeinen technischen Fehlern. Der genaue Fehler wird mittels enthaltener Platzhalter ausgewiesen.
328
329 {{info}}
rth 10.9 330 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.
331 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.
rth 10.8 332 {{/info}}
rth 10.10 333
334 == Versionshistorie ==
335
rth 16.4 336 (% class="wikigeneratedid" %)
rth 16.5 337 === 3.5.0 ===
338
339 * Erweiterungen: EPayment-Verifikation-Aktion (V6) um 'Zahlverfahren' erweitert.
340 Trigger (Workflow V7) um genutztes 'Zahlverfahren' innerhalb der Rückgabewerte erweitert.
341 Error-Trigger (Workflow V7) um 'PaymentVerifyUrl' erweitert. Dieser Parameter kann zum nochmaligen Aufruf der Verifizierung einer Bezahlung genutzt werden.
342 * Erweiterung AKDB ePay Setup: Eingabemöglichkeit für Daten des anzubindenden ePayment-Mandanten; Zusätzlicher Hinweis auf freizugebende URLs (notwendige Firewall-Freigaben)
343
rth 16.4 344 === 3.4.3 ===
345
346 * 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.
347
348 === 3.4.2 ===
349
350 * Fehlerbehebung: ein Anzeige-Fehler bei der Berechnung des Gesamtpreises für einen EPayment-Bestellartikel wurde behoben
351 * Fehlerbehebung: Aufgrund von Fehlern beim Decodieren und Entschlüsseln von URL-Parametern, wurde die Verschlüsselungs-Routine angepasst.
352
rth 16.2 353 === 3.4.1 ===
354
rth 16.3 355 * Fehlerbehebung EPayment Bestellartikel: Die Werte der widget-internen HTML-Elemente sind bei einer Zwischenspeicherung nicht berücksichtigt worden. Dies wurde behoben.
rth 16.2 356
357 === 3.4.0 ===
358
359 * Erweiterung AKDB ePay Setup: Ein Verbindungstest ist jetzt auch ohne Konfiguration eines AKDB-Mandanten möglich.
360 * Anpassung EPayment Bestellartikel: HTML-Elemente innerhalb des Widgets um 'data-' Präfix erweitert
rth 16.3 361 * Fehlerbehebung: Session-Replacer werden bei Verarbeitung der Workflow-Ereignisse berücksichtigt. 
rth 16.2 362
rth 15.9 363 === 3.3.1 ===
364
365 * 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.
366
rth 14.2 367 === 3.3.0 ===
368
369 * Plugin benötigt mindestens {{formcycle/}} in der Version {{version major="7" patch="9"}}{{/version}}
370 * Erweiterung Workflow-Aktion //Bestellung übermitteln//: Möglichkeit für serverseitige Definition von Bestellpositionen
371 * 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.
372
rth 11.2 373 === 3.2.0 ===
374
375 * Erweiterung EPayment Bestellartikel: Am Element ist der Gesamtpreis (Anzahl * Einzelpreis) als verstecktes Element verfügbar. Dieser kann über die CSS-Klasse 'CXOrderItemTotalPrice' eingeblendet werden.
376 * Erweiterung Anzahl-Eingabe-Element am EPayment Bestellartikel: Bei einer direkten Werteingabe wird diese sofort gegen die definierte untere und obere Wertgrenze validiert.
377
rth 10.11 378 === 3.1.4 ===
rth 10.10 379
380 * Formatierung des Rückgabewertes für den Gesamtbetrag auf #0,00 €
381
rth 10.11 382 === 3.1.3 ===
rth 10.10 383
rth 10.11 384 * Fehlerbehebung: Es wurden Problem behoben, welche beim Öffnen von EPayment-Formularen im Designe aufgetreten sind.
rth 10.10 385
rth 10.11 386 === 3.1.2 ===
rth 10.10 387
388 * Neuer Pluginparameter *epayment.webservice.timeout* zum Konfigurieren des Timeouts zum Webservice in Sekunden.
389
rth 10.11 390 === 3.1.1 ===
rth 10.10 391
rth 10.11 392 * Fehlerbehebung: Bei EPayment-Artikel Objekt werden bei fehlenden Werten, Defaultwerte angenommen.
rth 10.10 393
394 === 3.1.0 ===
395
rth 10.11 396 * Neue Eigenschaften am EPayment-Artikel Objekte hinzugefügt:
397 ** 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
rth 10.10 398 ** Maximale Bestellmenge: Die durch den Nutzer maximal auswählbare Bestellmenge lässt sich begrenzen
399
400 === 3.0.1 ===
401
402 * Plugin benötigt mindestens {{formcycle/}} in der Version {{version major="7" minor="0" patch="1"}}{{/version}}
403 ** Anpassungen der Validierungen im Designer für EPayment-Artikel Objekte
404
405 === 3.0.0 ===
406
407 * Plugin benötigt mindestens {{formcycle/}} in der Version {{version major="7" minor="0" patch="0"}}{{/version}}
408 ** Neue Workflow-Aktion für Initialisierung der Bezahl-Transaktion
409 ** Einführung Ereignisse für Absenden der Bestellung, sowie Verifizierung der erfolgreichen / nicht erfolgreichen Bezahltransaktion