Seite 1 von 1

Einbindung Billsafe als Zahlungsmodul

Verfasst: Do 5. Apr 2012, 06:38
von rraetz
Ich habe versucht Billsafe als Zahlungsmodul zu implementieren. Die Installation erfolgte problemlos, das Modul wird nur auf der Auswahlseite der Zahlungsweisen nicht angezeigt. Habt Ihr eine Idee?
Für den normalen xtc vorgesehenen header snippet habe ich erstmal ins template in die index.html gepackt:

Code: Alles auswählen

{piwik url=abs-protect.de/piwik id=1 goal=1}
<!-- BillSAFE-Layer Start-->
{php}

if (preg_match('/checkout_payment/',$_SERVER['PHP_SELF']) && MODULE_PAYMENT_BILLSAFE_2_LAYER == 'True') {
	if (isset($_GET['payment_error'])) {
		$bs_error = stripslashes('payment_error='.$_GET['payment_error'].'&error_message='.urlencode(html_entity_decode($_GET['error_message'])));
	} else {
		$bs_error = '';
	}
	echo '<script type="text/javascript"><!--
		if (top.lpg) top.lpg.close("'.str_replace('&', '&', xtc_href_link(FILENAME_CHECKOUT_PAYMENT, $bs_error, 'SSL')).'");
	--></script>';
}
if (preg_match('/checkout_success/',$_SERVER['PHP_SELF']) && MODULE_PAYMENT_BILLSAFE_2_LAYER == 'True') {
	echo '<script type="text/javascript"><!--
		if (top.lpg) top.lpg.close("'.xtc_href_link(FILENAME_CHECKOUT_SUCCESS, '', 'SSL').'");
	--></script>';
}
{/php}
<!-- BillSAFE-Layer End-->
</head>
Im Backend läßt sich alles entsprechend aktivieren - mit dem beschriebenen Ergebnis

Re: Einbindung Billsafe als Zahlungsmodul

Verfasst: Di 10. Apr 2012, 13:29
von rraetz
Funktioniert jetzt, hat an der "Bestellsumme" gelegen. Diese wird von Billsafe im Vertrag festgelegt, und wenn überschritten, steht die Zahlungsoption nicht mehr zur Verfügung.

Für eine Info, wie man o.g. snippet ggf besser einbindet, wäre ich trotzdem dankbar.

Re: Einbindung Billsafe als Zahlungsmodul

Verfasst: Di 10. Apr 2012, 19:27
von Xantiva
Snippet ist nicht der passende Begriff, eine "Smarty Function" ist das, was Du brauchst.

Code: Alles auswählen

function smarty_function_billsafe($params, $smarty)
{
    if (preg_match('/checkout_payment/',$_SERVER['PHP_SELF']) && MODULE_PAYMENT_BILLSAFE_2_LAYER == 'True') {
        if (isset($_GET['payment_error'])) {
            $bs_error = stripslashes('payment_error='.$_GET['payment_error'].'&error_message='.urlencode(html_entity_decode($_GET['error_message'])));
        } else {
            $bs_error = '';
        }
       echo '<script type="text/javascript"><!--
          if (top.lpg) top.lpg.close("'.str_replace('&', '&', xtc_href_link(FILENAME_CHECKOUT_PAYMENT, $bs_error, 'SSL')).'");
          --></script>';
    }
    if (preg_match('/checkout_success/',$_SERVER['PHP_SELF']) && MODULE_PAYMENT_BILLSAFE_2_LAYER == 'True') {
        echo '<script type="text/javascript"><!--
            if (top.lpg) top.lpg.close("'.xtc_href_link(FILENAME_CHECKOUT_SUCCESS, '', 'SSL').'");
            --></script>';
    }
}
Und dann in der index.html:

Code: Alles auswählen

    {piwik url=abs-protect.de/piwik id=1 goal=1}
    {billsafe}
Ohne Gewähr, ich habe Deinen Code nur per Copy&Paste eingefügt.

Ciao,
Mike