Повідомлення про платіж

Матеріал з apidocs
Перейти до: навігація, пошук

Merchant API

Головна сторінка

(Токенізація з передачею даних картки у запиті

Повідомлення про платіж


  1. Партнер обов'язково вибирає 1 або кілька способів сповіщення та повідомляє його в EasyPay. Партнер зазначає платіж успішним на своїй стороні лише після отримання цього повідомлення
  2. Ми надсилаємо HTTP - колек з IP 93.183.196.26 методом POST з інформацією про платіж.
  3. Запит надсилає EasyPay партнеру після того, як транзакція набула фінального статусу (Accepted, Declined).
  4. URL для повідомлень (UrlNotify) партнер направляє у запиті createOrder у параметрі:


"order":{
"additionalItems":{
"Merchant.UrlNotify":"https://notify.url"
}
}


"Merchant.UrlNotify" Параметр не може бути порожнім і має відповідати формату URL.

⚠️ Важливо! Якщо у відповіді не отримано HTTP StatusCode 200, запит нотифікації буде надіслано повторно протягом 1-10 хвилин. Повторення може продовжуватися визначену кількість разів (за замовчуванням – 50 разів), поки не буде отримано статусу "200 ОК".

Request

headers

"Sign": "Bq2d0oaqVGMRWpX5wsGpOlpqLg42pBdDO7TfTPYVmnU="
body
{
  "OperationType": "Payment",
  "PartnerKey": "groshi-com", 
  "ServiceKey": "GROSHI-COM-GOOGLEPAY",
  "TransactionStatus": "Accepted",
  "MerchantOrderId": "3127194_28_450866",
  "DateTime": "2023-12-09T14:00:48",
  "Amount": 2059.08,
  "Commission": 28.83,
  "TransactionId": 1336448544,
  "AdditionalItems": {
    "Merchant.Inn": "3178404189",
    "Merchant.Details": ";0;0;;4;",
    "Merchant.UrlNotify": "https://testpartner.ua/callback",
    "Merchant.ClientFullName": "Іванов Дмитро"
    "Acquirer.MerchantId":"12345678"
    "Acquirer.TerminalId":"E1234567"
    "Card.BrandType":"Visa"
    "AuthCode":"012345"
   }
}

Опис параметрів

Параметр Характеристика Коментарій
OperationType тип оповіщення Можливі значення:

payment - про успішний платіж (повторюється, якщо у відповідь не отримано статусу 200)

refund - про успішне скасування платежу (відправляється разово)

PartnerKey ІД партнера у системі EasyPay
ServiceKey ІД сервісу партнера у системі EasyPay
TransactionStatus статус платежу
MerchantOrderId номер замовлення партнера із запиту createOrder
Acquirer.MerchantId ідентифікатор торговця
Acquirer.TerminalId ідентифікатор платіжного пристрою
Card.BrandType найменування платіжної системи, платіжний інструмент якої використовується
AuthCode Код авторизації
DateTime час надання платежу статусу на стороні EasyPay якщо партнер не відповість статусом 200 на запит з action:payment, то в наступному запиті час буде новим
TransactionId ID транзакції на стороні EasyPay


Необхідно перевіряти підпис у нашому HTTP notify, налаштувати прийом лише для наших IP 93.183.196.26. Для правильного обчислення підпису, тіло з нотифай потрібно брати як є, без перетворень та форматувань. У випадку, якщо підпис notify не перевірено, всі фінансові ризики перекладаються на партнера.


Отримання інформації про рекурентний платіж


GET /api/merchant/reccurent/info

Request

headers

"PartnerKey": "partnerName"
"locale": "ua"
"AppId": "a5806a5f-dbb8-496a-a23f-aab6d2fcbce1"
"PageId": "2ce7dba6-4600-456e-b9c8-f13cacf1c85d"
"Sign": "e0v1vIOMyNt2qSmrG5+sjAq8wOhvgDDUEyfVP21mRU4="
queryParams
"serviceKey": "string"
 "orderId": "string"
 "reccurentId":  "0"
 "dateFrom": 2025-03-10
 "dateTo": 2025-03-17
 "isEnabled": true|false
 "pageNumber": 1
 "countPerPage": 3

Response

headers

body
{
  "merchantReccurentPaymentDetails":[
    {
      "recurrentId":14433854,
      "orderDescription":"Easy payment",
      "serviceName":"Мерчант Тест UA",
      "serviceKey":"MERCHANT-TEST",
      "orderId":"test_20250312-153601+url",
      "amount":1.000000,
      "croneRule":"* 17 * * *",
      "dateCreate":"2025-03-12T16:38:02+02:00",
      "dateRun":"2025-03-13T17:00:00+02:00",
      "dateLastPayment":"2025-03-12T19:47:05+02:00",
      "isEnabled":true,
      "dateExpire":"2025-03-12T21:37:42+02:00",
      "properties":{
        "failedCount":"1",
"urlNotify":"http://109.251.205.8:9987/merch/notifysigncheckexample.php"
      }
    },
    {
      "recurrentId":14433852,
      "orderDescription":"Easy payment",
      "serviceName":"Мерчант Тест UA",
      "serviceKey":"MERCHANT-TEST",
      "orderId":"test_20250312-153601",
      "amount":1.000000,
      "croneRule":"* 17 * * *",
      "dateCreate":"2025-03-12T16:37:25+02:00",
      "dateRun":"2025-03-13T17:00:00+02:00",
      "dateLastPayment":"2025-03-12T19:47:05+02:00",
      "isEnabled":true,
      "dateExpire":"2025-03-12T21:37:03+02:00",
      "properties":{
        "failedCount":"1"
      }
    }
  ],
  "totalCount":2,
  "totalFilteredCount":2,
  "pageFilteredCount":2,
  "currentPageNumber":1,
  "numberOfPages":1,
  "error":null
}
Параметр Характеристика
serviceKey ІД сервісу партнера у системі EasyPay
orderId номер замовлення партнера із запиту createOrder
reccurentId номер рекурента
dateFrom дата створення рекурента з..
dateTo дата створення рекурента по..
isEnabled відобразити лише активні / або неактивні рекуренти
pageNumber відобразити сторінку номер..
countPerPage кількість записів на сторінці
templateId номер рекуренту (reccurentId)


Виклик рекурентного платежу


POST /api/merchant/reccurent/payment

Request

headers

"Content-Type": "application/json"
"PartnerKey": "partnerName"
"locale": "ua"
"AppId": "a5806a5f-dbb8-496a-a23f-aab6d2fcbce1"
"PageId": "2ce7dba6-4600-456e-b9c8-f13cacf1c85d"
"Sign": "e0v1vIOMyNt2qSmrG5+sjAq8wOhvgDDUEyfVP21mRU4="

body
{
  "reccurentId": 0,
  "amount": 0
}

Response

headers

body
{
  "reccurentId": 0,
  "transactionId": 0,
  "transactionStatus": "None",
  "error": {
    "errorCode": "string",
    "title": "string",
    "description": "string",
    "errorMessage": "string",
    "fieldErrors": [
      {
        "fieldName": "string",
        "errorCode": "string",
        "errorMessage": "string"
      }
    ]
  }
}

Також буде надіслано нотифікацію у разі успішного платежу. Створення рекурентного платежу на операцію, у структурі якої є спліт – не підтримується.

Видалення рекурентного платежу


DELETE /api/merchant/reccurent/delete/{id}

Request

headers

"PartnerKey": "partnerName"
"locale": "ua"
"AppId": "a5806a5f-dbb8-496a-a23f-aab6d2fcbce1"
"PageId": "2ce7dba6-4600-456e-b9c8-f13cacf1c85d"
"Sign": "e0v1vIOMyNt2qSmrG5+sjAq8wOhvgDDUEyfVP21mRU4="

body
відсутній

Response

headers

- 

body

-