Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

...

Diese Felder müssen für eine erfolgreiche Transaktion vorhanden sein

Hotel IDhotel
Erfolgsseitesuccess_url
Fehlerseiteerror_url
Zu zahlender Betragamount

 


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

...

https://hotel-feuerberg.viomassl.com/de/payment/error/ -> Fehler / Abgebrochen 


Code Formular

Code Block
languagexml
<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>&nbsp;</td>
				<td><input type="submit" value="Zum Zahlungsvorgang"></td>
				<td>&nbsp;</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

...

Verwendete Platzhalter für Betreff und Text sind payment_custom_new_hotel_subject und payment_custom_new_hotel_text

Platzhalter:

%payment_idTransaktionsnummer
%payment_amountBetrag
%payment_methodZahlungart (CC/Paypal)
%payment_method_subtype

Kreditkartentyp (Visa/MC/Amex usw)

%payment_messageNachricht

Eigene Felder

Platzhalter für eigene Felder sind nach dem Schema %custom_FELDNAME aufgebaut.

...

Diese können in den Hotel Stammdaten eingepflegt werden.

 

Code Vollständigkeitsüberprüfung

Alle Pflichtfelder mit der Klasse "payment-required" versehen

Code Block
languagejs
 <input name="client_name" class="payment-required" type="text" />


  

Code Block
languagejs
<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:


Code Block
onsubmit="return payment_form_check(this)"