Wiki-Quellcode von GiroSolution: ePayment-Plugin
Verstecke letzte Bearbeiter
author | version | line-number | content |
---|---|---|---|
![]() |
1.1 | 1 | {{content/}} |
2 | |||
3 | Das GiroSolution ePayment Plugin ermöglicht es, über die von GiroSolution bereitgestellte PayPage, einen Bezahlvorgang innerhalb eines Formularprozesses einzubauen. | ||
4 | |||
![]() |
1.2 | 5 | {{info}} |
![]() |
1.1 | 6 | Für die Nutzung des Plugins ist es im Vorfeld notwendig, dass ein Vertrag mit der Firma GiroSolution über zur Nutzung der Service-Schnittstelle abgeschlossen wird. |
![]() |
1.2 | 7 | {{/info}} |
![]() |
1.1 | 8 | |
9 | == Aktions-Plugin //GiroSolution: Paypage: Initialisierung// == | ||
![]() |
1.2 | 10 | |
![]() |
4.13 | 11 | Mit der Einbindung des Aktions-Plugin //GiroSolution: Paypage: Initialisierung// ist es möglich ein Bezahl-Transaktion innerhalb der {{formcycle/}} Statusverarbeitung auszuführen. Nachfolgend werden die dafür notwendigen Konfigurations-Parameter näher beschrieben. |
![]() |
1.10 | 12 | |
![]() |
4.2 | 13 | === Transaktionsdaten === |
![]() |
1.11 | 14 | |
![]() |
4.2 | 15 | {{figure image="plugin_trans_data.png"}} |
16 | Konfiguration der Transaktionsdaten | ||
17 | {{/figure}} | ||
18 | |||
![]() |
4.4 | 19 | ; Automatisch zur Paypage witerleiten |
20 | : Diese Einstellung ist standardmäßig aktiviert. Dadurch wird nach dem Initialisieren der Bezahl-Transaktion automatisch auf die Payment-Page von //GiroSolution// weitergeleitet. Wenn dies nicht gewünscht ist, kann durch Deaktivierung dieser Einstellung eine Weiterleitung unterbunden werden. | ||
21 | |||
![]() |
4.5 | 22 | {{info title="Hinweis:"}} |
23 | Wenn eine Transaktion auf Seiten von //GiroSolution// erfolgreich erzeugt wurde, wird die URL zur Paypage als Plugin-Rückgabe-Parameter zurückgeliefert. Diese kann dann zu einem späteren Zeitpunkt aufgerufen werden. | ||
24 | {{/info}} | ||
25 | |||
26 | ; Betrag | ||
27 | : Hier ist der zu bezahlende Betrag in der kleinsten Währungseinheit (z.B.: Cent, Penny) anzugeben. Es werden Platzhalter unterstützt. | ||
28 | |||
29 | {{info title="Hinweis:"}} | ||
30 | Wenn die Werte direkt aus dem Formular kommen, beachten Sie, dass diese durch den Nutzer manipuliert sein könnten. Es empfiehlt sich deshalb an dieser Stelle mit festen Werten zur arbeiten oder die Zahlbeträge serverseitig zu berechnen. | ||
31 | {{/info}} | ||
32 | |||
33 | ; Verwendungszweck | ||
34 | : Verwendungszweck der Transaktion, welcher später auf der Kartenabrechnung bzw. dem Kontoauszug erscheint. Es werden Platzhalter unterstützt. Maximal sind 20 (SEPA-konforme) Zeichen erlaubt: | ||
35 | |||
36 | * a b c d e f g h i j k l m n o p q r s t u v w x y z | ||
37 | * A B C D E F G H I J K L M N O P Q R S T U V W X Y Z | ||
38 | * Zahlen von 0 – 9 | ||
39 | * Sonderzeichen: ' : ? , - ( + . ) / | | ||
40 | |||
41 | ; Beschreibung für Bezahlung | ||
![]() |
4.6 | 42 | : Definiert die Beschreibung zum Zahlbetrag, welcher auf der Bezahlseite von //GiroSolution// angezeigt wird. Es werden Platzhalter unterstützt. Maximal sind 60 Zeichen zulässig. Unterstützt werden Buchstaben aller Sprachen, also beispielsweise auch Umlaute und spanische Sonderzeichen usw., Satzzeichen, Ziffern und Symbole, die sich auf Währungen beziehen (also $ und € etc.). |
![]() |
4.5 | 43 | |
![]() |
1.11 | 44 | === Zielstatus === |
45 | |||
![]() |
4.2 | 46 | {{figure image="plugin_states.png"}} |
47 | Konfiguration des Zielstatus nach Rückkehr von der Bezahlseite in {{formcycle/}} | ||
48 | {{/figure}} | ||
49 | |||
![]() |
4.6 | 50 | In diesem Bereich können Status festgelegt werden, in welchen der Vorgang versetzt wird, wenn {{formcycle/}} eine Rückmeldung von //GiroSolution// erhält: |
51 | |||
![]() |
5.9 | 52 | {{id name="payment_server_result"/}} |
![]() |
4.6 | 53 | ; Zielstatus für Payment Server Rückmeldung |
![]() |
5.8 | 54 | : Hier kann ein Status definiert werden, in dem gewechselt wird, wenn die Transaktions-Benachrichtigung bei einer Server-To-Server-Verbindung zurückgemeldet wird. In der jeweiligen Status-Verarbeitung stehen dann die unter //[[Notification-Parameter>>doc:||anchor="notification_params"]]// aufgeführten Parameter zur Verfügung. |
![]() |
4.6 | 55 | ; Zielstatus für erfolgreiche Zahlung |
56 | : Hier kann ein Status festgelegt werden, in welchen gewechselt wird, wenn der Kunde die Zahlung erfolgreich abgeschlossen hat. In der jeweiligen Status-Verarbeitung stehen dann die unter //Notification-Parameter// aufgeführten Parameter zur Verfügung. | ||
57 | ; Zielstatus für abgebrochenen Zahlvorgang | ||
58 | : Hier kann ein Status festgelegt werden, in welchen gewechselt wird, wenn der Kunde innerhalb der //GiroSolution// Bezahlseite auf "Zurück" klickt und damit den Bezahlvorgang abbricht. | ||
![]() |
4.7 | 59 | ; Zielstatus für erfolglose Zahlung |
60 | : Hier kann ein Status festgelegt werden, in welchen gewechselt wird, wenn der Bezahlvorgang erfolglos beendet wurde. | ||
![]() |
4.6 | 61 | |
![]() |
4.7 | 62 | Nach dem Durchlaufen der jeweiligen Statusverarbeitung erfolgt standardmäßig eine Weiterleitung ins Formular. |
![]() |
4.8 | 63 | Wenn in der Statusverarbeitung eine Aktion vom Typ "[[Abschlussseite (Template)>>doc:Formcycle.UserInterface.MyForms.WorkflowProcessing.Actions.ResponsePage||target="_blank"]]" definiert ist, erfolgt die Weiterleitung zu dieser Abschluss-Seite anstatt ins Formular. |
![]() |
4.7 | 64 | |
![]() |
1.11 | 65 | === Übersteuerung globaler Einstellungen === |
66 | |||
![]() |
4.3 | 67 | {{figure image="plugin_global_data.png"}} |
68 | Globale Einstellungen übersteuern | ||
69 | {{/figure}} | ||
70 | |||
![]() |
4.9 | 71 | In diesem Bereich können die unter //[[Globale Einstellungen für Anbindung einer Paypage>>doc:||anchor="global_config"]]// getroffenen Einstellungen übersteuert werden. |
72 | |||
![]() |
4.10 | 73 | ; Händler-ID |
74 | : Händler-ID aus einem //GiroSolution Payment Page// Projekt. | ||
75 | ; Projekt-ID | ||
76 | : Projekt-ID aus einem //GiroSolution Payment Page// Projekt. | ||
77 | ; Projekt-Passwort | ||
78 | : Projekt-Passwort aus einem //GiroSolution Payment Page// Projekt. | ||
79 | ; Währung | ||
![]() |
4.12 | 80 | : Währung mit der alle Payment Page Transaktionen ablaufen. Angabe muss im [[ISO 4217 Format>>https://de.wikipedia.org/wiki/ISO_4217||rel="noopener noreferrer" target="_blank" title="ISO 4217"]] erfolgen. |
![]() |
4.10 | 81 | ; Sprache |
82 | : Sprache auf der Payment Page, mögliche Werte: | ||
83 | |||
84 | * **de**: Anzeige in deutscher Sprache | ||
85 | * **en**: Anzeige in englischer Sprache | ||
86 | |||
87 | ; Anbietername | ||
88 | : Name des Anbieters auf der Bezahlseite. Wenn nichts festgelegt ist, wird der im //GiroSolution GiroCockpit// festgelegte Wert verwendet. | ||
89 | ; Test-Modus? | ||
90 | : Legt fest, in welchem Modus die Zahlarten auf den Payment Page anzuzeigen sind. Wenn aktiviert ist der **Test-Betrieb** aktiv, sonst der **Live-Betrieb**. | ||
91 | |||
![]() |
4.14 | 92 | === Allgemeine Rückgabeparameter === |
93 | |||
![]() |
5.2 | 94 | {{figure image="plugin_result.png"}} |
95 | Allgemeine Rückgabeparameter | ||
![]() |
5.3 | 96 | {{/figure}} |
![]() |
5.2 | 97 | |
![]() |
5.4 | 98 | In diesem Bereich werden die vom Plugin als Ergebnis zurückgelieferten Parameter aufgeführt. Für die einzelnen Parameter kann ein Alias vergeben werden. In weiteren Aktionen kann auf den entsprechenden Rückgabeparameter per Platzhalter-Syntax zugegriffen werden. Der Platzhalter wird dabei nach dem folgenden Muster gebildet: |
99 | |||
100 | {{code}} | ||
101 | |||
102 | [%$<Plugin-Name>.RESULT[0].<Name oder vergebener Alias der Rückgabeparameters>%] | ||
![]() |
5.6 | 103 | {{/code}} |
![]() |
5.4 | 104 | |
![]() |
4.15 | 105 | ; ResultCode |
106 | : Enthält einen Zahlenwert, welcher den Abarbeitungs- bzw. Fehlerstatus des Plugins widergibt. | ||
107 | ; ResultMessage | ||
108 | : Enthält eine Klartextmeldung, welche den zurückgelieferten //ResultCode// näher erläutert. | ||
109 | ; ResultMerchantTxID | ||
110 | : Enthält die erzeugte Transaktions-ID enthält. Dieser Rückgabewert ist nur vorhanden, wenn auf Seiten von //GiroSolution// eine Transaktion erfolgreich erzeugt werden konnte. | ||
111 | ; ResultPaypageUrl | ||
112 | : Enthält die Redirect-URL zur Payment-Page von GiroSolution. Dieser Rückgabewert ist nur vorhanden, wenn auf Seiten von //GiroSolution// eine Transaktion erfolgreich erzeugt werden konnte. | ||
113 | ; ResultPaypageReferenceID | ||
114 | : Enthält die Referenznummer für die Payment Page. Dieser Rückgabewert ist nur vorhanden, wenn auf Seiten von //GiroSolution// eine Transaktion erfolgreich erzeugt werden konnte. | ||
![]() |
4.14 | 115 | |
![]() |
5.5 | 116 | == Notification-Parameter == |
117 | |||
![]() |
5.7 | 118 | Die nachfolgende Tabelle listet die garantierten bzw. optionalen Parameter auf, welche von der //GiroSolution//-Schnittstelle zurück übermittelt werden und damit den Status der Bezahl-Transaktion kennzeichnen. |
![]() |
5.9 | 119 | Die Parameter stehen in den konfigurierten //[[Zielstatus für Payment Page Rückmeldungen>>doc:||anchor="payment_server_result"]]// zur Verfügung und können über die Platzhalternotation {{code}}[%<Parametername>%]{{/code}} angesprochen werden. |
![]() |
5.5 | 120 | |
![]() |
5.8 | 121 | {{id name="notification_params"/}} |
122 | |=Parametername|=Optional|=Bedeutung | ||
123 | |gcAccountHolder|ja|Kontoinhaber bei Lastschriftverfahren | ||
124 | |gcAmount|nein|Rechnungsbetrag, bei Dezimalwährungen den Betrag in der kleinsten Währungseinheit angeben, z.B. Cent, Penny | ||
125 | |gcBackendTxId|nein|Zahlungsabwickler Transaktions-ID | ||
126 | |gcCardExpDate|ja|Gültigkeitsdatum der Kreditkarte im Format Monat/Jahr, wenn Kreditkartenzahlung | ||
127 | |gcCardnumber|ja|Maskierte Kreditkartennummer | ||
128 | |gcCurrency|nein|Die in der Transaktion verwendete Währung | ||
129 | |gcHash|nein|HMAC MD5 Hash über alle Werte des Aufrufs | ||
130 | |gcIban|ja|IBAN bei Lastschrift | ||
131 | |gcMerchantTxId|nein|Verkäufer Transaktions-ID | ||
132 | |gcPaymethod|nein|((( | ||
133 | ID der Zahlungsart der Transaktion, mögliche Werte: | ||
![]() |
5.5 | 134 | |
![]() |
5.8 | 135 | * **1:** giropay |
136 | * **2:** eps | ||
137 | * **6:** Lastschrift | ||
138 | * **7:** Lastschrift mit Sperrdatei | ||
139 | * **8:** Garantierte Lastschrift | ||
140 | * **11:** Kreditkarte | ||
141 | * **12:** iDEAL | ||
142 | * **14:** PayPal | ||
143 | * **23:** paydirekt | ||
144 | * **27:** Sofort | ||
145 | ))) | ||
146 | |gcPkn|ja|Pseudokartennummer | ||
147 | |gcProjectId|nein|GiroCheckout Projekt-ID, über die die Transaktion abgewickelt wurde. | ||
148 | |gcReference|nein|GiroCheckout Transaktions-ID | ||
149 | |gcResultPayment|nein|Ergebniscodes der Zahlung, mögliche Werte:((( | ||
150 | * **4000:** Transaktion erfolgreich | ||
151 | * **4001:** giropay Bank offline | ||
152 | * **4002:** Online Banking Zugang ungültig | ||
153 | * **4051:** Kontoverbindung ungültig | ||
154 | * **4101:** Ausgabeland der Karte nicht gültig oder unbekannt | ||
155 | * **4102:** 3D-Secure Autorisierung fehlgeschlagen | ||
156 | * **4103:** Gültigkeitsdatum der Karte überschritten | ||
157 | * **4104:** Kreditkartentyp ungültig oder unbekannt | ||
158 | * **4105:** Karte eingeschränkt nutzbar | ||
159 | * **4106:** Pseudo-Kartennummer ungültig | ||
160 | * **4107:** Karte gestohlen, verdächtig oder zum Einziehen markiert | ||
161 | * **4108:** Telefonische Genehmigung | ||
162 | * **4151:** PayPal Token ungültig | ||
163 | * **4152:** Nachbearbeitung bei PayPal notwendig | ||
164 | * **4153:** Zahlungsmethode bei PayPal ändern | ||
165 | * **4154:** PayPal-Zahlung nicht abgeschlossen | ||
166 | * **4500:** Zahlungsausgang unbekannt | ||
167 | * **4501:** Timeout / Keine Benutzereingabe | ||
168 | * **4502:** Abbruch durch Benutzer | ||
169 | * **4503:** Doppelte Transaktion | ||
170 | * **4504:** Manipulationsverdacht oder Zahlungsmittel temporär gesperrt | ||
171 | * **4505:** Zahlungsmittel gesperrt oder abgelehnt | ||
172 | * **4506:** Blue Code Barcode ungültig | ||
173 | * **4900:** Transaktion nicht erfolgreich | ||
174 | ))) | ||
175 | |gcType|nein|((( | ||
176 | Transaktionsart, mögliche Werte: | ||
177 | |||
178 | * **SALE:** Verkauf wird sofort gebucht | ||
179 | ))) | ||
180 | |||
![]() |
1.2 | 181 | == Globale Plugin-Einstellungen == |
182 | |||
183 | {{info}} | ||
184 | Dieser Abschnitt ist nur für {{formcycle/}}-Administratoren relevant, welche das Plugin-Bundle initial im System einrichten. | ||
185 | {{/info}} | ||
186 | |||
187 | === Konfiguration der Plugin-Bundle Properties === | ||
188 | |||
![]() |
1.3 | 189 | Über die nachfolgend beschriebenen Einstellungen wird das Plugin an die durch GiroSolution zur Verfügung gestellte Schnittstelle angeschlossen. |
190 | |||
![]() |
4.9 | 191 | {{id name="global_config"/}} |
![]() |
4.11 | 192 | |
![]() |
1.3 | 193 | ==== Globale Einstellungen für Anbindung einer Paypage ==== |
194 | |||
195 | ; payment.paypage.merchant.id (Pflicht) | ||
196 | : Händler-ID aus einem //GiroSolution Payment Page// Projekt. | ||
197 | ; payment.paypage.project.id (Pflicht) | ||
198 | : Projekt-ID aus einem //GiroSolution Payment Page// Projekt. | ||
199 | ; payment.paypage.project.pwd (Pflicht) | ||
200 | : Projekt-Passwort aus einem //GiroSolution Payment Page// Projekt. | ||
201 | ; payment.paypage.testmode (Pflicht) | ||
202 | : Legt fest, in welchem Modus die Zahlarten auf den Payment Page anzuzeigen sind, mögliche Werte: | ||
![]() |
1.7 | 203 | |
![]() |
1.3 | 204 | * **true**: Anzeige im Test-Betrieb |
205 | * **false**: Anzeige im Live-Betrieb | ||
![]() |
1.7 | 206 | |
![]() |
1.3 | 207 | ; payment.paypage.currency (Pflicht) |
208 | : Währung mit der alle Payment Page Transaktionen ablaufen. Angabe muss im ISO 4217 Format erfolgen. | ||
209 | ; payment.paypage.locale (Pflicht) | ||
210 | : Sprache auf der Payment Page, mögliche Werte: | ||
![]() |
1.7 | 211 | |
![]() |
1.6 | 212 | * **de**: Anzeige in deutscher Sprache |
213 | * **en**: Anzeige in englischer Sprache | ||
![]() |
1.7 | 214 | |
![]() |
1.3 | 215 | ; payment.paypage.organization |
216 | : Name des Anbieters der Payment Page. Wenn nichts festgelegt ist, wird der im //GiroSolution GiroCockpit// festgelegte Wert verwendet. | ||
217 | ; payment.paypage.proxy.host | ||
218 | : Hostname eines Proxy-Servers, wenn die Kommunikation zwischen //GiroSolution// und {{formcycle/}} über einen Proxy-Server erfolgen soll | ||
219 | ; payment.paypage.proxy.port | ||
220 | : Angabe eines Proxy-Server Ports, wenn die Kommunikation zwischen //GiroSolution// und {{formcycle/}} über einen Proxy-Server erfolgen soll. |