В настоящее время я реализую сценарий обработки кредитной карты, большинство из которых предоставлены торговым шлюзом. Код вызывает функции внутри класса и возвращает строку, основанную на ответе. Конечный php-код, который я использую (детали удалены, конечно) с примером информации:
<?php
$gw = new gwapi;
$gw->setLogin("username", "password");
$gw->setBilling("John","Smith","Acme, Inc.","888","Suite 200", "Beverly Hills",
"CA","77777","US","555-555-5555","555-555-5556","support@example.com",
"www.example.com");
// "CA","90210","US","support@example.com");
$gw->setOrder("1234","Big Order",1, 2, "PO1234","65.192.14.10");
$r = $gw->doSale("1.00","4111111111111111","1010");
print $gw->responses['responsetext'];
?>
, где setlogin позволяет мне войти в систему, setbilling принимает информацию о потребителе образца, set order принимает идентификатор и описание заказа, dosale принимает начисленную сумму, номер cc и дату истечения.
когда все переменные отправляются проверенными, а затем отправляются на обработку, возвращается строка в следующем формате:
ответ = 1 & responsetext = УСПЕХ & AuthCode = 123456 & TransactionID = 23456 & avsresponse = М & OrderID = & тип = продажа & RESPONSE_CODE = 100
где:
- ответ = транзакция одобрена или
снизился
- текст ответа = текстовый ответ
- authcode = авторизация транзакции
код
- транзакция = платежный шлюз
ID
- avsresponse = avs код ответа
- orderid = исходный идентификатор заказа передан в
запрос транс
- response_code = числовое отображение
отклик процессора
Я пытаюсь решить следующее:
- Как мне взять данные, которые
прошло назад и отобразить его
соответственно на странице - если
транзакция не удалась или код AVS
не соответствует моему вкусу или что-то
неправильно, отображается ошибка
потребитель; если сделка
обработаны, они принимаются
Страница завершения и транзакции
Идентификатор отправляется в СЕССИИ как вывод
потребитель
- Если значение кода_ответа соответствует
таблица значений, определенные действия
принято, т.е. если код = 100, принять
страница успеха, если код = 300 распечатать
конкретная ошибка на исходной странице
клиент и т. д.