Liebe Joomla Virtuemart Benutzer. Hier will ich nun mal eine Möglichkeit veröffentlichen, wie Sie Ihrem Virtuemart das Postfinace Modul selber integrieren können.
Joomla Administration --> Komponneten --> VirtueMart --> Ihr Shop --> Neue Zahlungsarten :
Name: Ihr gewünschter Name, erscheint dann auch in der Bezahlauswahl des Kunden
Code: Ihr gewünschter Kürzel dazu, ich nehme mal: PC
Klassenname des Bezahlmoduls: ps_payment
Typ der Zahlungsart: HTML Formular
für Shoppergruppe: Wählen Sie, welche Kundengruppe diese Bezahlmöglichkeit nutzen dürfen.
Rabatt, Rabatt-Typ usw.: Wählen Sie hier Ihre gewünschten Taxen auf diese Bezahlart.
Ich nehme jeweils: 0 Rabatt, Höchst und Mindestgrenze lasse ich Leer.
Nun im Reiter (Tab) Konfiguration folgenden Code:
(Hinweis: Durch löschen der // können Sie in PHP Zeilen auskommentieren. Löschen Sie also entweder bei Test
oder Produktiv die beiden Backslashes.
<?php
// URL zu e-payment PRODUKTIV
//$url = "https://e-payment.postfinance.ch/ncol/prod/orderstandard.asp";
// URL zu e-payment TEST
$url = "https://e-payment.postfinance.ch/ncol/test/orderstandard.asp";
// Ubergabe Paramenter
$post_variables = Array(
"CN" => $dbbt->f('last_name'),
"EMAIL" => $dbbt->f('user_email'),
"owneradress" => $dbbt->f('address_1'),
"ownerZIP" => $dbbt->f('zip'),
"ownercty" => $dbbt->f('city'),
"ownertelno" => $dbbt->f('phone_1'),
// Hier Ihre PSP-ID (Test / Produktive) eintragen
"PSPID" => "POSTIDHIEREINTRAGEN",
"orderID" => $db->f("order_id"),
"language" => "de_DE",
"amount" => ($db->f("order_total")*100),
"currency" => "CHF",
// Hier Ihre PSP-ID und "SHA-1-IN Signature" eintragen
"SHASign" => md5($db->f("order_id").($db->f("order_total") *100)."CHF"."POSTIDHIER"."SHA1SIGNATUREHIEREINTRAGEN"),
"accepturl" => SECUREURL ."index.php?option=com_virtuemart&page=checkout.result&order_id=".$db->f("order_id"),
);
// Zahlungsbestätigung an Kunden
if( $page == "checkout.thankyou" ) {
$query_string = "?";
foreach( $post_variables as $name => $value ) {
$query_string .= $name. "=" . urlencode($value) ."&";
}
vmRedirect( $url . $query_string );
} else {
echo '<form action="'.$url.'" method="post" target="_blank">';
// Pfad zum Bildchen (Damit kann die Zahlung falls fehlgeschlagen nochmals aufgerufen werden).
// Bildpfad und Bild für Ihre Bedürfnisse anpassen.
echo '<input type="image" name="submit" src="/images/postfinance.jpg" border="0" alt="Bezahlen mit Postfinance, schnell und sicher!" />';
foreach( $post_variables as $name => $value ) {
echo '<input type="hidden" name="'.$name.'" value="'.htmlspecialchars($value).'" />';
}
echo '</form>';
}
?>