ciao Marcus,
dunque io ho utilizzato il pacchetto gestpaycrypt-php-2.0.1 per realizzare l'interfacciamento con banca sella del mio prodotto.
E' una cartella che ho scaricato dal web e come dicevo funziona bene, ha anche la pagina per la risposta positiva e negativa (che devo inserire sempre nel back office, ..le url intendo) però non c'è la pagina per la comunicazione server to server, allora io non essendo programmatore sono andato a prendere la pagina s2s.php che viene utilizzata per interfacciare oscommerce con bancasella ed ho inserito quella, però non so se funzionerà correttamente, ti digito quì sotto il codice di questa pagina che immagino cmq già conoscerai:
<?php
/*
$Id: s2s.php,v 2.0 2003/06/25 05:51:31 svfz Exp $
Payment Gateway Banca Sella
Copyright (c) 2003 Pronesis Srl
Released under the GNU General Public License
Author: Stefano Vita Finzi Zalman
<
stefano.vita@pronesis.it>
*/
/*
Script per il collegamento diretto server2server con banca sella
Lo script attende che il cliente torni indietro da banca sella
e termini di completare l'ordine.
*/
set_time_limit(0);
if ($_GET['a'] && $_GET['b'])
{
$parametro_a = trim($_GET['a']);
$parametro_b = trim($_GET['b']);
require_once(DIR_WS_CLASSES . 'GestPayCrypt.inc.php');
$objdeCrypt = new GestPayCrypt();
if (!$objdeCrypt)
{
echo "Errore di decodifica";
}
else
{
$objdeCrypt->SetShopLogin($parametro_a);
$objdeCrypt->SetEncryptedString($parametro_b);
$objdeCrypt->Decrypt();
// DI SEGUITO SI HANNO UNA SERIE DI VARIABILI VALORIZZATE CON I
// DATI RICEVUTI DA GESTPAY DA UTILIZZARE PER L'INTEGRAZIONE CON
// IL PROPRIO SISTEMA
$myshoplogin=trim($objdeCrypt->GetShopLogin());
$mycurrency=$objdeCrypt->GetCurrency();
$myamount=$objdeCrypt->GetAmount();
$myshoptransactionID=trim($objdeCrypt->GetShopTransactionID());
$mybuyername=trim($objdeCrypt->GetBuyerName());
$mybuyeremail=trim($objdeCrypt->GetBuyerEmail());
$mytransactionresult=trim($objdeCrypt->GetTransactionResult());
$myauthorizationcode=trim($objdeCrypt->GetAuthorizationCode());
$myerrorcode=trim($objdeCrypt->GetErrorCode());
$myerrordescription=trim($objdeCrypt->GetErrorDescription());
$mybanktransactionid=trim($objdeCrypt->GetBankTransactionID());
$myalertcode=trim($objdeCrypt->GetAlertCode());
$myalertdescription=trim($objdeCrypt->GetAlertDescription());
$mycustominfo=trim($objdeCrypt->GetCustomInfo());
// FINE SCRIPT DI DECRITTOGRAFIA
}
if ($myerrorcode == 0)
{
$check_query = tep_db_query("select * FROM orders_sellanet WHERE bank_transaction_id = " . $mybanktransactionid);
$check = tep_db_num_rows($check_query);
if($check > 0)
{
tep_db_query("UPDATE orders_sellanet SET s2s_status = 1 WHERE bank_transaction_id = " . $mybanktransactionid);
}
else
{
tep_db_query("INSERT INTO orders_sellanet (bank_transaction_id, shop_transaction_id, authorization_code, amount, s2s_status, date) VALUES (" . $mybanktransactionid . ", '" . $myshoptransactionID . "','" . $myauthorizationcode . "', " . $myamount . ",1," . time() . ")");
}
}
}
questo parametro l'ho modificato con il nome del file della mia cartella:
require_once(DIR_WS_CLASSES . 'GestPayCrypt.lib.php');
ho sostituito con:
require_once(DIR_WS_CLASSES . 'GestPayCrypt.inc.php');
fammi sapere se può anda bene così.
GRAZIE
