Skip to content

Документация Haskaplan API (1.0.0)

Хаскаплан помогает бизнесу автоматизировать массовые выплаты и документооборот с физлицами и самозанятыми, например, с клиентами или исполнителями.

Возможности OpenAPI Хаскаплан:

  • создание выплат и получение информации по выплатам бизнеса;
  • получение информации по банковским счетам;
  • получение информации об исполнителях;
  • получение информации о подписанных документах (договорах, актах, выбитых чеках);
  • управление группами исполнителей и комиссиями на вывод.
Download OpenAPI description
Languages
Servers
Mock server

https://open-api.haskaplan.ru/_mock/openapi/

https://client-api.dev.haskaplan.net/

Балансы и исполнители

Методы предназначены для проверки баланса по счетам и получения карточек исполнителей.

Исполнители выполняют работы и получают за это вознаграждение. В Хаскаплан исполнители создаются автоматически при первом начислении средств.

Operations

Выплаты

Методы предназначены для проведения платежей исполнителям — на баланс в приложении Хаскаплан или напрямую на карту или через СБП

Operations

Получить список всех выплат

Request

Возвращает все выплаты, совершенные от лица компании. Можно отфильтровать по дате от / до, исполнителю performer_id, а также типу платежа

Security
clientID and clientSecret and requestSignature
Query
fromstring(date)

Start date for filtering

tostring(date)

End date for filtering

performer_idstring
payment_typestring
Enum"card_direct""sbp_direct""sbp_mp""card_mp"
curl -i -X GET \
  'https://open-api.haskaplan.ru/_mock/openapi/v1/payments?from=2019-08-24&to=2019-08-24&performer_id=string&payment_type=card_direct' \
  -H 'client-id: YOUR_API_KEY_HERE' \
  -H 'client-secret: YOUR_API_KEY_HERE' \
  -H 'request-signature: YOUR_API_KEY_HERE'

Responses

Успешный запрос

Bodyapplication/json
paymentsArray of objects(PaymentInfo)
Response
application/json
{ "payments": [ {} ] }

Создать выплату через приложение с одновременным созданием исполнителя

Request

Исполнителю автоматически отправится приглашение на номер телефона для подписания договора. Далее исполнитель сможет зайти в мобильное приложение Хаскаплан, пройти верификацию, подписать договор и вывести средства себе на карту или по СБП.

После создания реестра выплат необходимо проверить статус начислений методом /v1/payments/registry/{request_id}. Метод отобразит статус начисления реестра в приложение; для проверки списаний из приложения воспользуйтесь методом /v1/payments.

Security
clientID and clientSecret and requestSignature
Bodyapplication/jsonrequired
requestIDstring(uuid)required

Идентификатор реестра

Example: "4faeea50-d2bb-4f73-8888-f9034d6cc804"
sourceAccountIDstringrequired

Идентификатор банковского счета для списания

Example: "b318731d-d2bb-4f73-bd85-f9034d6cc404"
paymentsArray of objects(PaymentRegistryItem)required
payments[].​paymentIDstring(uuid)required

Идентификатор платежа

Example: "4b41b0ee-c144-40b4-87c0-6d2f59cb2915"
payments[].​amountstringrequired
Example: "10000"
payments[].​currencystringrequired
Example: "643"
payments[].​purposestringrequired
Example: "Оплата по договору №12345 от 01.01.2024"
payments[].​performerobject(PerformerDetailsForPayment)required
payments[].​performer.​firstNamestring
Example: "Иван"
payments[].​performer.​middleNamestring
Example: "Иванович"
payments[].​performer.​lastNamestring
Example: "Иванов"
payments[].​performer.​TINstring

ИНН исполнителя

Example: "789012345678"
payments[].​performer.​phonestringrequired
Example: "+79012345678"
payments[].​performer.​countrystring
Example: "RUS"
payments[].​performer.​agreementTypestringrequired

Тип договора, заключенного с исполнителем для работы с балансом

Example: "ФЛ"
curl -i -X POST \
  https://open-api.haskaplan.ru/_mock/openapi/v1/payments/registry \
  -H 'Content-Type: application/json' \
  -H 'client-id: YOUR_API_KEY_HERE' \
  -H 'client-secret: YOUR_API_KEY_HERE' \
  -H 'request-signature: YOUR_API_KEY_HERE' \
  -d '{
    "requestID": "4faeea50-d2bb-4f73-8888-f9034d6cc804",
    "sourceAccountID": "b318731d-d2bb-4f73-bd85-f9034d6cc404",
    "payments": [
      {
        "paymentID": "4b41b0ee-c144-40b4-87c0-6d2f59cb2915",
        "amount": "10000",
        "currency": "643",
        "purpose": "Оплата по договору №12345 от 01.01.2024",
        "performer": {
          "firstName": "Иван",
          "middleName": "Иванович",
          "lastName": "Иванов",
          "TIN": "789012345678",
          "phone": "+79012345678",
          "country": "RUS",
          "agreementType": "ФЛ"
        }
      }
    ]
  }'

Responses

Успешный запрос

Bodyapplication/json
requestIDstring(uuid)required

Идентификатор реестра платежей

Example: "4b41b0ee-c144-40b4-87c0-6d2f59cb2915"
statusstringrequired
Enum"created""processing""completed""partially_completed""failed"
Example: "created"
payments_countinteger

Количество успешно обработанных платежей

Example: 0
Response
application/json
{ "requestID": "4b41b0ee-c144-40b4-87c0-6d2f59cb2915", "status": "created", "payments_count": 0 }

Создать выплату исполнителю напрямую на карту или через СБП

Request

Для каждого исполнителя необходимо передать тип платежного метода и реквизиты.

После создания реестра выплат необходимо проверить статус выплат методом /v1/payments/registry/{request_id}.

Security
clientID and clientSecret and requestSignature
Bodyapplication/jsonrequired
requestIDstring(uuid)required

Идентификатор реестра платежей

Example: "4b41b0ee-c144-40b4-87c0-6d2f59cb2915"
sourceAccountIDstringrequired

Идентификатор банковского счета для списания

Example: "uuid"
paymentsArray of objects(DirectPaymentItem)required
payments[].​paymentIDstring(uuid)required
Example: "4b41b0ee-c144-40b4-87c0-6d2f59cb2915"
payments[].​amountstringrequired
Example: "card"
payments[].​currencystringrequired
Example: "card"
payments[].​purposestringrequired
Example: "card"
payments[].​performerobject(DirectPaymentPerformer)required
payments[].​performer.​firstNamestringrequired
Example: "Иван"
payments[].​performer.​middleNamestring
Example: "Иванович"
payments[].​performer.​lastNamestringrequired
Example: "Иванов"
payments[].​performer.​TINstring
Example: "123456789012"
payments[].​performer.​phonestring
Example: "+79012345678"
payments[].​performer.​countrystringrequired
Example: "RUS"
payments[].​performer.​agreementTypestringrequired
Example: "ФЛ"
payments[].​performer.​paymentMethodobject(PaymentMethodDetails)required
payments[].​performer.​paymentMethod.​paymentMethodTypestringrequired
Enum"card""sbp"
Example: "card"
payments[].​performer.​paymentMethod.​cardPanstring
Example: "2200700122223333"
payments[].​performer.​paymentMethod.​sbpPhonestring
Example: "+79012345678"
curl -i -X POST \
  https://open-api.haskaplan.ru/_mock/openapi/v1/payments/direct \
  -H 'Content-Type: application/json' \
  -H 'client-id: YOUR_API_KEY_HERE' \
  -H 'client-secret: YOUR_API_KEY_HERE' \
  -H 'request-signature: YOUR_API_KEY_HERE' \
  -d '{
    "requestID": "4b41b0ee-c144-40b4-87c0-6d2f59cb2915",
    "sourceAccountID": "uuid",
    "payments": [
      {
        "paymentID": "4b41b0ee-c144-40b4-87c0-6d2f59cb2915",
        "amount": "card",
        "currency": "card",
        "purpose": "card",
        "performer": {
          "firstName": "Иван",
          "middleName": "Иванович",
          "lastName": "Иванов",
          "TIN": "123456789012",
          "phone": "+79012345678",
          "country": "RUS",
          "agreementType": "ФЛ",
          "paymentMethod": {
            "paymentMethodType": "card",
            "cardPan": "2200700122223333",
            "sbpPhone": "+79012345678"
          }
        }
      }
    ]
  }'

Responses

Успешный запрос

Bodyapplication/json
requestIDstring(uuid)required
Example: "4b41b0ee-c144-40b4-87c0-6d2f59cb2915"
statusstringrequired
Enum"created""processing""completed""failed"
Example: "created"
payments_countinteger

Количество успешно обработанных платежей

Example: 0
Response
application/json
{ "requestID": "4b41b0ee-c144-40b4-87c0-6d2f59cb2915", "status": "created", "payments_count": 0 }

Получить статус выплат

Request

Возвращает список платежей в реестре и их статусов с кодом ошибки

Security
clientID and clientSecret and requestSignature
Path
request_idstring(uuid)required
curl -i -X GET \
  'https://open-api.haskaplan.ru/_mock/openapi/v1/payments/registry/{request_id}' \
  -H 'client-id: YOUR_API_KEY_HERE' \
  -H 'client-secret: YOUR_API_KEY_HERE' \
  -H 'request-signature: YOUR_API_KEY_HERE'

Responses

Успешный запрос

Bodyapplication/json
requestIDstring(uuid)required

Идентификатор реестра платежей

Example: "4b41b0ee-c144-40b4-87c0-6d2f59cb2915"
statusstringrequired
Enum"created""processing""completed""partially_completed""failed"
Example: "created"
paymentsArray of objects(PaymentStatusItem)required
payments[].​paymentIDstring(uuid)required

Идентификатор платежа

Example: "4b41b0ee-c144-40b4-87c0-6d2f59cb2915"
payments[].​statusstringrequired
Enum"created""processing""completed""failed"
Example: "created"
payments[].​error_messagestring
Example: "uuid"
Response
application/json
{ "requestID": "4b41b0ee-c144-40b4-87c0-6d2f59cb2915", "status": "created", "payments": [ {} ] }

Группы исполнителей

Группы определяют условия комиссии для исполнителей. У компании может быть только одна “группа по умолчанию” - в нее автоматически попадают все новые исполнители

Operations

Работа с документами

В Хаскаплан документы исполнителей создаются автоматически: договоры — перед получением первого начисления, акты и чеки — при выводе средств.

Все типы документов можно отфильтровать по дате от / до и исполнителю performer_id.

Operations