Исторически так сложилось, что модуль mps есть, но робокассу и сбербанк подключили через самописный шлюз. удобнее.
скрипт для организации взаимодействия со сбербанком через ФСПУ (привозят железки с шифрованием)
Код:
<?php
header('Content-Type: text/xml; charset=UTF-8');
$command = $_GET['command'];
$txn_id = $_GET['txn_id'];
$account = $_GET['account'];
$cid = $account - 1000000000;
if ($command=='check') {
$xml = simplexml_load_file('http://ip:8080/bgbilling/executer?user=sberbank&pswd=sberbank&sql=SELECT+c.summa1%2Bc.summa2-c.summa3-c.summa4+%2C+b.val%2C+a.address+FROM+contract_parameter_type_2+AS+a+%0ALEFT+JOIN+contract_parameter_type_1+AS+b+ON+%28a.cid%3Db.cid+AND+b.pid%3D1%29+%0ALEFT+JOIN+contract_balance+AS+c+ON+%28a.cid%3Dc.cid+%29%0AWHERE+a.cid%3D'.$cid.'%0AORDER+BY+c.yy+DESC%2C+c.mm+DESC%0ALIMIT+1&action=SQLEditor&module=sqleditor');
foreach($xml->table->data->row->attributes() as $key=>$value) {
switch ($key) {
case "row0":$balance=$value;
case "row1":$fio=$value;
case "row2":$address=$value;
}}if (is_null($balance)) {$result=300;}else{$result=0;}
iconv("windows-1251", "utf-8",$address);
$xml='<?xml version="1.0" encoding="UTF-8"?><response><osmp_txn_id>1</osmp_txn_id><balance>'.$balance.'</balance><fio>'.$fio.'</fio><address>'.$address.'</address><result>'.$result.'</result><comment>Успешно.</comment></response>';
} elseif ($command=='pay') {
$sum = $_GET['sum'];
$txn_date = $_GET['txn_date'];
preg_match( '|([0-9]{4})([0-9]{1,2})([0-9]{1,2})|i', $txn_date, $date);
$xml = simplexml_load_file('http://ip:8080/bgbilling/executer?user=sberbank&pswd=sberbank&id=new&module=contract&summa='.$sum.'&pt=10&action=UpdateContractPayment&comment='.$txn_date.'_'.$txn_id.'&date='.$date[3].'.'.$date[2].'.'.$date[1].'&cid='.$cid);
foreach($xml->attributes() as $key=>$value) {
switch ($key) {
case "id":$pay_id=$value;
case "status":$status=$value;
}}if ($status='ok') {$result=0;}else{$result=300;}
echo '<?xml version="1.0" encoding="UTF-8"?><response><txn_id>'.$txn_id.'</txn_id><prv_txn>'.$pay_id.'</prv_txn><sum>'.$sum.'</sum><result>'.$result.'</result><comment>Успешно.</comment></response>';
}echo $xml;
?>