Към съдържанието

Заявка за нареждане на банков превод

Обща информация

  • Клиент - Kраен потребител на услугата
  • Търговец - Юридическо лице, сключило договор с ePay.bg
  • Файловете , които се цитират в документацията, може да се свалят от линка "Демо пакет" под бутона за вход на https://demo.epay.bg/

Всеки регистриран търговец в системата на ePay.bg има

  • Буквено-цифрена секретна дума с дължина 64 (secret)
  • Клиентски идентификационен номер (KIN)

Търговецът може да ги открие в профила си в https://epay.bg/, без да може да ги променя.

Описание на процеса

  1. Търговецът желае да нареди един или повече банкови преводи към получател/и.
  2. Търговецът изпраща HTTP GET заявка към даденото URL, което включва всички нужни данни на получателите.
  3. В същата HTTP сесия, ePay.bg ще върне на търговеца "Системен код", което е знак за успешно изплащане на суми по IBAN сметки.

Комуникационна схема

epay bank trasfer

Продукционна среда

Метод URL
GET https://www.epay.bg/send/send_vnbel.cgi

Демо среда

Метод URL
GET https://demo.epay.bg/send/send_vnbel.cgi

Заявка за нареждане на банков превод

Параметър Тип Описание Опционалност
ENCODED string Кодирана с base64 (RFC 3548) заявка за плащане, EOL=''. Задължителен
CHECKSUM string Контролна сума върху ENCODED, генерирана като HMAC с алгоритъм SHA-1 и секретната дума на търговеца. Задължителен

Параметри в ENCODED

Параметър Тип Описание Опционалност
MIN int Клиентски идентификационен номер (КИН) Задължителен
MEMAIL string Електронна поща на търговеца в системата Задължителен
INVOICE string Уникален номер на заявката до 64 символа

Приемат се: цифри, латиница
Задължителен
RECIPIENT string Получател на превода до 35 символа

Приемат се: кирилица, латиница, цифри, интервали, тирета, запетаи, точки
Задължителен
IBAN string Валиден IBAN на получателя Задължителен
AMOUNT float Валидна сума > 0.01 (например: 22, 22.8, 22.80) Задължителен
STATEMENT string Основание на превода до 70 символа

Приемат се: кирилица, латиница, цифри, интервали, тирета, запетаи, точки
Задължителен
CURRENCY string Приемана валута е BGN; ако не се подаде е BGN по подразбиране Опционален
ENCODING encoding encoding на RECIPIENT и STATEMENT; приема се само с utf-8 Опционален

Важно

Заявка с даден INVOICE може да влезе в системата само един път.

Примерен код за изготвяне на заявката

1
2
3
4
5
6
7
{
    # Кодиране на заявката
    $ENCODED  = encode_base64('DATA', ''); # '' за EOL (def. е "\n")

    # Генериране на контролна сума
    $CHECKSUM = hmac_hex($ENCODED, $secret, \&sha1);
}
1
2
3
4
5
6
7
8
{
    # Кодиране на заявката
    $ENCODED  = base64_encode('DATA');

    # Генериране на контролна сума
    $CHECKSUM = hmac('sha1', $ENCODED, $secret);
    # кода на функцията hmac може да видите в demo.php
}

Oтговор

SYS_CODE=1234567890
ERR=Описание на грешка