Signature
Формування підпису
Підпис XML документу залежить від мови програмування яку використовує клієнт.
Підпис має відповідати стандарту W3C XML Signature Syntax and Processing.
Приклад на мові PHP з використанням бібліотеки для підпису xmlseclibs.
1.Формуєм запит XML (приклад для Card-to-Card).
<CardZoneRequest> <MerchantId>1752739</MerchantId> <TerminalId>E7880539</TerminalId> <TrackingId>fd4e1c67a28</TrackingId>
<CardFromNumber>4999999999990011</CardFromNumber>
<CardToNumber>5559490000000148</CardToNumber>
</CardZoneRequest>
2. Підключаємо бібліотеку - require_once dirname(__FILE__) .'/xmlseclibs/xmlseclibs.php';
3.Функція для підпису
Вхідні параметри
$fxml – xml запит.
$fpkey – згенерований приватний ключ.
Результат – підписаний XML запит.
Перевірка відповіді шлюзу
Функція для перевірки підпису
Вхідні параметри
$fxmlsigned – xml-відповідь сервера.
$crt_server – сертифікат сервера.
Тільки на основі перевірки валідності XML можна оброблювати отримані дані, впевнившись що вони отримані з шлюзу УПЦ.
Підпис XML потрібно використовувати без виключення для всіх запитів. (В подальших прикладах елемент <Signature></Signature> опускається, оскільки принцип його формування викладений вище.)