Anzahlungsformular
Transaktionsbasierte Schnittstellen erlauben Zahlungsvorgänge, die nicht an einen Gutschein oder eine Buchung gebunden sind.
Ein Gast kann, z.B. über die Webseite, einen eigenen Zahlungsvorgang anstoßen. Dies wird von den Hotels meist zur Bestätigung von Angeboten per Anzahlung genutzt.
Da es sich hier um normale Condeon-Formulare handelt können beispielsweise aus einem Angebotsgenerator schon ein Link mit vorbefüllten Feldern übergeben werden.
Das Anzahlungsformular selbst ist von Condeon unabhängig, kann also auch bei Remoteintegrationen verwendet werden.
Aufbau
Das Formular besteht aus dem Formular selbst und jeweils einer Unterseite für den Erfolgs- und Fehlerfall.
Pflichtfelder:
Diese Felder müssen für eine erfolgreiche Transaktion vorhanden sein
Hotel ID | hotel |
Erfolgsseite | success_url |
Fehlerseite | error_url |
Zu zahlender Betrag | amount |
Eigene Felder
Zusätzlich können beliebige Felder ergänzt werden die an der Transaktion hängen. Gerne benutzt werden z.B. Anreisedatum und Reservierungsnummer
Der Feldname sollte so aufgebaut sein: custom[BEZEICHNER], zb custom[reservation_number].
Die Felder werden dann in der Transaktions-Ansicht in der Admin-Oberfläche und den Transaktionsmails ausgegeben.
Beispiel
www.hotel-feuerberg.at/de/payment/ -> Formular
https://hotel-feuerberg.viomassl.com/de/payment/success/ -> Erfolgreich
https://hotel-feuerberg.viomassl.com/de/payment/error/ -> Fehler / Abgebrochen
Code Formular
<form method="post" action="https://cst-sync-hobex.viomassl.com/index.php"> <table class="payment-form"> <tbody> <tr> <td>Betrag*</td> <td><input type="text" name="amount" value=""></td> <td>€</td> </tr> <tr> <td> </td> <td><input type="submit" value="Zum Zahlungsvorgang"></td> <td> </td> </tr> </tbody> </table> <input type="hidden" name="hotel" value="2672"> <input type="hidden" name="success_url" value="https://hotel-feuerberg.viomassl.com/de/payment/success/"> <input type="hidden" name="error_url" value="https://hotel-feuerberg.viomassl.com/de/payment/error/"> </form>
Einrichtung Zahlungsmails
Sollte E-Mail Buchhaltung gesetzt sein gehen die Mails an diese Adresse, ansonsten an E-Mail Rezeption.
Verwendete Platzhalter für Betreff und Text sind payment_custom_new_hotel_subject und payment_custom_new_hotel_text
Platzhalter:
%payment_id | Transaktionsnummer |
%payment_amount | Betrag |
%payment_method | Zahlungart (CC/Paypal) |
%payment_method_subtype | Kreditkartentyp (Visa/MC/Amex usw) |
%payment_message | Nachricht |
Eigene Felder
Platzhalter für eigene Felder sind nach dem Schema %custom_FELDNAME aufgebaut.
Aus custom[reservation_number] im Formular wird bspw. %custom_reservation_number als Platzhalter.
Alternative E-Mail Empfänger
Die Zahlungs-E-Mails werden automatisch an "E-Mail Rezeption" und "E-Mail Buchhaltung" weitergeleitet, sofern diese angegeben sind.
Diese können in den Hotel Stammdaten eingepflegt werden.
Code Vollständigkeitsüberprüfung
Alle Pflichtfelder mit der Klasse "payment-required" versehen
<input name="client_name" class="payment-required" type="text" />
<script> function payment_form_check(form) { var all_fields_filled = true; var required_fields = {}; $('input.payment-required',$(form)).each(function() { required_fields[$(this).attr('name')] = 1; }); var form_fields = {} $(form).serializeArray().map(function(x){form_fields[x.name] = x.value;}); for( key in required_fields) { if (!key in form_fields || $.trim(form_fields[key]) == '') { all_fields_filled = false; break; } } if( !all_fields_filled ) { alert('Please fill all required fields'); return false; } return true; } </script>
Den Funktionsaufruf im form tag nicht vergessen:
onsubmit="return payment_form_check(this)"