Писал скрипт под рапиду (rapida.ru) для автоматизации платежей. Долго мучался с параметрами curl-а, но в итоге победил :) Пример проверки на правильность платежа (ф-я check
):
$params = http_build_query(array(
'function' => 'check',
'PaymExtId' => ..., // идентификатор платежа
'PaymSubjTp' => ..., // код получателя из каталога
'Amount' => sprintf('%03d', ...), // сумма в копейках
'Params' => ..., // параметры платежа
'TermType' => ..., // тип платежного инструмента
'TermId' => ..., // идентификатор точки
'FeeSum' => 0, // сумма комиссии
), '', '&');
$ch = curl_init('https://online.rapida.ru/test/?' . $params);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, 0);
curl_setopt($ch, CURLOPT_SSL_VERIFYHOST, 0);
curl_setopt($ch, CURLOPT_SSLKEY, '/path/to/Prkeys.pem');
curl_setopt($ch, CURLOPT_SSLCERT, '/path/to/Cert.pem');
curl_setopt($ch, CURLOPT_SSLCERTPASSWD, 'cert password');
$result = curl_exec($ch);
curl_close($ch);
Если после выполнения в $result
пусто, то стоит включить вывод ошибок в файл и поизучать его:
$file = fopen('curl_errors.log', 'w');
curl_setopt($ch, CURLOPT_VERBOSE, 1);
curl_setopt($ch, CURLOPT_STDERR, $file);
Написанное актуально для
Протокол версии 007
Комментарии
Если не жалко, можешь поделится скриптом платежей, а то задача стоит написать за два дня... боюсь не успею.
Заранее спасибо.
скрипта как такового нет, это просто кусок кода в большой системе
Добавить комментарий