Перейти к основному содержимому

Методы

При обработке запросов проверяется корректность входных параметров, наличие необходимых заголовков, права на выполнение действий.

Проведение операций

recurrent/disable

Отключение токена

С помощью этого запроса можно отключить токен. Отправьте в запросе токен, в ответ придет is_active: false. Это значит, что с этим токеном больше нельзя проводить рекуррентные платежи.

После отключения токена в параметре даты окончания действия токена finished_at может появиться дата, относящаяся к 2000 году — она ни на что не влияет, можно не обращать на неё внимание.

Адрес для отправки запроса

/api/v1/recurrent/disable

Параметры запроса

НазваниеОбязательностьТипОписание
recurrent+objectТокен, который нужно отключить
Пример запроса
curl -X POST \
https://proxy-demo.pikepayments.com/api/v1/recurrent/disable \
-H 'Content-Type: application/json' \
-H 'X-PARTNER-PROJECT: your_project_name' \
-H 'X-PARTNER-SIGN: signature' \
-d '{
"recurrent": {
"token": "97417d4a9a23da9c2401c510a3fc45c2d1752f68ac9fd2a366698d70293b6427"
}
}'

Параметры ответа

НазваниеОбязательностьТипОписание
status+stringСтатус. Возможные варианты: error, ok
recurrent+objectИнформация о токене для рекуррентных платежей
error-objectОшибка
Пример успешного ответа
{
"recurrent": {
"token": "97417d4a9a23da9c2401c510a3fc45c2d1752f68ac9fd2a366698d70293b6427",
"created_at": "2020-07-14T13:17:11+03:00",
"finished_at": "2020-07-31T16:05:42+03:00",
"is_active": false,
"type": "recurrent_token"
},
"status": "ok"
}
Пример неуспешного ответа
{
"error": {
"code": "error code",
"description": "error description"
},
"status": "error"
}

session/cancel

Отмена операции

Этот запрос можно отправлять, когда Pike готов провести операцию — выплату или платеж. Например, вы получили вебхук ready_to_confirm или ready_to_capture.

Если не хотите проводить эту операцию, можете ее отменить: отправьте запрос session/cancel.

Если всё в порядке, отправьте запрос на подтверждение операции (session/confirm) или на списание замороженной суммы (session/capture).

Адрес для отправки запроса

/api/v1/session/cancel

Параметры запроса

НазваниеОбязательностьТипОписание
session_id+stringИдентификатор сессии
Пример запроса
curl -X POST \
https://proxy-demo.pikepayments.com/api/v1/session/cancel \
-H 'Content-Type: application/json' \
-H 'X-PARTNER-PROJECT: your_project_name' \
-H 'X-PARTNER-SIGN: signature' \
-d '{
"session_id": "ps_3230"
}'

Параметры ответа

НазваниеОбязательностьТипОписание
status+stringСтатус. Возможные варианты: error, ok
session-objectПлатежная сессия
error-objectОшибка
Пример успешного ответа
{
"status": "ok",
"session": {
"id": "ps_3230",
"status": "in_progress",
"created_at": "2024-05-27T02:03:00.000000Z",
"updated_at": "2024-05-27T02:03:00.000000Z",
"payments": [{
"id": "po_1313",
"status": "pending",
"created_at": "2024-05-27T02:03:00.000000Z",
"customer": {
"reference": "user123",
"contacts": [{
"email": "user@gmail.com"
}]
},
"payment_method": {
"type": "card",
"card": {
"last4": "4242",
"brand": "visa"
}
},
"amount_details": {
"amount": 10000,
"currency": "rub"
},
"metadata": "good"
}]
}
}
Пример неуспешного ответа
{
"error": {
"code": "error code",
"description": "error description"
},
"status": "error"
}

session/capture

Списание захолдированной суммы

Этот запрос можно использовать, если вы отправляете холдированные платежи. Такой платеж проходит в две стадии: сначала деньги замораживаются (например, на банковской карте пользователя), а потом списываются по вашей команде.

Запрос можно отправлять, когда Pike готов списать деньги и прислал вам вебхук ready_to_capture.

Если вы хотите списать замороженную сумму, отправьте запрос session/capture. Можно списать замороженную сумму полностью или частично.

Чтобы отменить списание, отправьте session/cancel.

Адрес для отправки запроса

/api/v1/session/capture

Параметры запроса

НазваниеОбязательностьТипОписание
session_id+stringИдентификатор сессии Pike
amount_details-objectСумма к списанию. Может быть меньше замороженной, но обязательно больше 0. Если параметр отсутствует, то замороженная сумма будет списана полностью
Пример запроса
curl -X POST \
https://proxy-demo.pikepayments.com/api/v1/session/capture \
-H 'Content-Type: application/json' \
-H 'X-PARTNER-PROJECT: your_project_name' \
-H 'X-PARTNER-SIGN: signature' \
-d '{
"session_id": "ps_3230"
}'

Параметры ответа

НазваниеОбязательностьТипОписание
status+stringСтатус. Возможные варианты: error, ok
session-objectПлатежная сессия
error-objectОшибка
Пример успешного ответа
{
"status": "ok",
"session": {
"id": "ps_3230",
"status": "in_progress",
"created_at": "2024-05-27T02:03:00.000000Z",
"updated_at": "2024-05-27T02:03:00.000000Z",
"acquiring_payments": [{
"id": "pm_1313",
"status": "succeeded",
"created_at": "2024-05-27T02:03:00.000000Z",
"finished_at": "2024-05-27T02:03:00.000000Z",
"customer": {
"reference": "lucky"
},
"payment_details": {
"type": "card",
"card": {
"brand": "visa",
"last4": "4242"
}
},
"amount_details": {
"amount": 10000,
"currency": "usd"
},
"refunds": [{
"id": "rf_23",
"status": "in_progress",
"created_at": "2024-05-27T02:03:00.000000Z",
"amount_details": {
"amount": 10000,
"currency": "usd"
}
}]
}]
}
}
Пример неуспешного ответа
{
"error": {
"code": "error code",
"description": "error description"
},
"status": "error"
}

session/confirm

Подтверждение операции

Этот запрос можно отправлять, когда Pike готов провести операцию — выплату или платеж. Например, вы получили вебхук ready_to_confirm.

Вам нужно проверить параметры операции и принять решение. Если всё в порядке, подтвердите операцию: отправьте Pike session/confirm. Если что-то не так, отмените операцию: отправьте запрос session/cancel.

Адрес для отправки запроса

/api/v1/session/confirm

Параметры запроса

НазваниеОбязательностьТипОписание
session_id+stringИдентификатор сессии
Пример запроса
curl -X POST \
https://proxy-demo.pikepayments.com/api/v1/session/confirm \
-H 'Content-Type: application/json' \
-H 'X-PARTNER-PROJECT: your_project_name' \
-H 'X-PARTNER-SIGN: signature' \
-d '{
"session_id": "ps_3230"
}'

Параметры ответа

НазваниеОбязательностьТипОписание
status+stringСтатус. Возможные варианты: error, ok
session-objectПлатежная сессия
error-objectОшибка
Пример успешного ответа
{
"status": "ok",
"session": {
"id": "ps_3230",
"status": "in_progress",
"created_at": "2024-05-27T02:03:00.000000Z",
"updated_at": "2024-05-27T02:03:00.000000Z",
"payments": [{
"id": "po_1313",
"status": "pending",
"created_at": "2024-05-27T02:03:00.000000Z",
"customer": {
"reference": "user123",
"contacts": [{
"email": "user@gmail.com"
}]
},
"payment_method": {
"type": "card",
"card": {
"last4": "4242",
"brand": "visa"
}
},
"amount_details": {
"amount": 10000,
"currency": "rub"
},
"metadata": "good"
}]
}
}
Пример неуспешного ответа
{
"error": {
"code": "error code",
"description": "error description"
},
"status": "error"
}

session/create

Создание платежной сессии

Этот запрос создает платежную сессию на стороне Pike.

Сессия необходима для проведения платежных операций. В рамках сессии может проходить одна или несколько операций одного или разных типов (например, несколько выплат, платеж и возврат, оплата с последующим разделением платежей).

Используйте этот запрос, если вам нужно запросить у пользователя данные для проведения выплаты или оплаты. Например, вызвать виджет для токенизации, показать пользователю и получить токенизированные данные карты и уже с этими данными отправить запрос на выплату.

Если вы готовы сразу передать параметры для платежа или выплаты, вы можете это сделать.
Для платежа передайте: payment_details, amount_details, customer.
Для выплаты передайте: payment_method/payout_details, amount_details.

В ответе возвращаются параметры созданной сессии.

Адрес для отправки запроса

/api/v1/session/create

Параметры запроса

НазваниеОбязательностьТипОписание
payment_method-objectПлатежные данные (карта, банковский счет и др.)
payment_details-objectПлатежные данные
amount_details-objectСумма. Передается в минорных единицах. Если отправляете 100 рублей, евро или долларов США, нужно передать 10000
participant_details-objectИнформация об участниках операции
customer-objectДанные получателя в вашей системе
metadata-*Дополнительная информация. Любые данные, которые вам необходимы для проведения операции
Пример запроса
curl -X POST \
https://proxy-demo.pikepayments.com/api/v1/session/create \
-H 'Content-Type: application/json' \
-H 'X-PARTNER-PROJECT: your_project_name' \
-H 'X-PARTNER-SIGN: signature' \
-d '{
"amount_details": {
"amount": 10000,
"currency": "rub"
},
"metadata": "order123"
}'

Параметры ответа

НазваниеОбязательностьТипОписание
status+stringСтатус. Возможные варианты: error, ok
session-objectПлатежная сессия
error-objectОшибка
Пример успешного ответа
{
"status": "ok",
"session": {
"id": "ps_3230",
"status": "created",
"created_at": "2024-05-27T02:03:00.000000Z",
"updated_at": "2024-05-27T02:03:00.000000Z",
}
}
Пример неуспешного ответа
{
"error": {
"code": "invalid_request",
"description": "customer.reference.not_blank"
},
"status": "error"
}

session/init/payment

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

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

В ответе возвращаются параметры созданной сессии и массив с информацией о платеже (acquiring_payments/payment_list).

Адрес для отправки запроса

/api/v1/session/init/payment

Параметры запроса

НазваниеОбязательностьТипОписание
payment_details+objectПлатежные данные
amount_details+objectСумма. Передается в копейках. Если отправляете 100 рублей, нужно передать 10000
participant_details-objectИнформация об участниках операции
customer+objectДанные клиента в вашей системе
payment_options-objectДополнительные параметры платежа
metadata-*Любая дополнительная информация. Если транзакция обрабатывается субпартнером, укажите сайт оплаты: "metadata" {"merchant": leave_it_blank,"submerchant": "https://website"}
Пример запроса
curl -X POST \
https://proxy-demo.pikepayments.com/api/v1/session/init/payment \
-H 'Content-Type: application/json' \
-H 'X-PARTNER-PROJECT: your_project_name' \
-H 'X-PARTNER-SIGN: signature' \
-d '{
"payment_details": {
"type": "card",
"card": {
"type": "bank_card",
"bank_card": {
"number": "4242424242424242",
"expiration_month": "05",
"expiration_year": "22",
"security_code": "123"
}
}
},
"amount_details": {
"amount": 10000,
"currency": "rub"
},
"customer": {
"reference": "lucky"
},
"payment_options": {
"return_url": "https://pikepayments.com"
}
}'

Параметры ответа

НазваниеОбязательностьТипОписание
status+stringСтатус. Возможные варианты: error, ok
session-objectПлатежная сессия
error-objectОшибка
Пример успешного ответа
{
"status": "ok",
"session": {
"id": "ps_3230",
"status": "in_progress",
"created_at": "2024-05-27T02:03:00.000000Z",
"updated_at": "2024-05-27T02:03:00.000000Z",
"acquiring_payments": [{
"id": "pm_1313",
"status": "in_progress",
"created_at": "2024-05-27T02:03:00.000000Z",
"customer": {
"reference": "lucky"
},
"payment_details": {
"type": "card",
"card": {
"brand": "visa",
"last4": "4242"
}
},
"amount_details": {
"amount": 10000,
"currency": "rub"
},
"payment_options": {
"return_url": "https://pikepayments.com"
}
}]
}
}
Пример неуспешного ответа
{
"error": {
"code": "invalid_request",
"description": "customer.reference.not_blank"
},
"status": "error"
}

session/init/payout

Создание сессии с одновременным стартом выплаты

Можно использовать этот запрос, если вы сразу готовы передать все параметры для создания выплаты на банковский счет или банковскую карту.

Также можно стартовать выплату с использованием токена, который был получен при создании рекуррентного платежа.

В ответе возвращаются параметры созданной сессии и массив с информацией о выплате (payments/payout_list).

Адрес для отправки запроса

/api/v1/session/init/payout

Параметры запроса

НазваниеОбязательностьТипОписание
payment_method+objectПлатежные данные (карта, банковский счет и др.)
amount_details+objectСумма. Передается в копейках. Если отправляете 100 рублей, нужно передать 10000
participant_details-objectИнформация об участниках операции (отправителе и получателе)
customer-objectДанные получателя в вашей системе
metadata-*Любая дополнительная информация. Если транзакция обрабатывается субпартнером, укажите сайт оплаты: "metadata" {"merchant": leave_it_blank,"submerchant": "https://website"}
Пример запроса
curl -X POST \
https://proxy-demo.pikepayments.com/api/v1/session/init/payout \
-H 'Content-Type: application/json' \
-H 'X-PARTNER-PROJECT: your_project_name' \
-H 'X-PARTNER-SIGN: signature' \
-d '{
"payment_method": {
"type": "card",
"card": {
"type": "bank_card",
"bank_card": {
"number": "4242424242424242"
}
}
},
"amount_details": {
"amount": 1000,
"currency": "rub"
},
"participant_details": {
"recipient": {
"full_name": "Ivanov Ivan"
}
}
}'

Параметры ответа

НазваниеОбязательностьТипОписание
status+stringСтатус. Возможные варианты: error, ok
session-objectПлатежная сессия
error-objectОшибка
Пример успешного ответа
{
"status": "ok",
"session": {
"id": "ps_3230",
"status": "in_progress",
"created_at": "2024-05-27T02:03:00.000000Z",
"updated_at": "2024-05-27T02:03:00.000000Z",
"payments": [{
"id": "po_1313",
"status": "in_progress",
"created_at": "2024-05-27T02:03:00.000000Z",
"customer": {
"reference": "user123",
"contacts": [{
"email": "user@gmail.com"
}]
},
"payment_method": {
"type": "card",
"card": {
"last4": "4242",
"brand": "visa"
}
},
"amount_details": {
"amount": 10000,
"currency": "rub"
},
"metadata": "good"
}]
}
}
Пример неуспешного ответа
{
"error": {
"code": "error code",
"description": "error description"
},
"status": "error"
}

session/refund

Возврат

С помощью этого запроса можно вернуть деньги пользователю после успешного платежа.

После проведения возврата Pike отправит вам вебхук payment_refunded.

Адрес для отправки запроса

/api/v1/session/refund

Параметры запроса

НазваниеОбязательностьТипОписание
session_id+stringИдентификатор успешной платежной сессии, по которой необходимо провести возврат.
amount_details-objectСумма возврата. Если не указывать, то возврат будет на полную сумму платежа
metadata-*Дополнительная информация
Пример запроса
curl -X POST \
https://proxy-demo.pikepayments.com/api/v1/session/refund \
-H 'Content-Type: application/json' \
-H 'X-PARTNER-PROJECT: your_project_name' \
-H 'X-PARTNER-SIGN: signature' \
-d '{
"session_id":"ps_3230"
}'

Параметры ответа

НазваниеОбязательностьТипОписание
status+stringСтатус. Возможные варианты: error, ok
session-objectПлатежная сессия
error-objectОшибка
Пример успешного ответа
{
"status": "ok",
"session": {
"id": "ps_3230",
"status": "in_progress",
"created_at": "2024-05-27T02:03:00.000000Z",
"updated_at": "2024-05-27T02:03:00.000000Z",
"acquiring_payments": [{
"id": "pm_1313",
"status": "succeeded",
"created_at": "2024-05-27T02:03:00.000000Z",
"finished_at": "2024-05-27T02:03:00.000000Z",
"customer": {
"reference": "lucky"
},
"payment_details": {
"type": "card",
"card": {
"brand": "visa",
"last4": "4242"
}
},
"amount_details": {
"amount": 10000,
"currency": "rub"
},
"refunds": [{
"id": "rf_23",
"status": "in_progress",
"created_at": "2024-05-27T02:03:00.000000Z",
"amount_details": {
"amount": 10000,
"currency": "rub"
}
}]
}]
}
}
Пример неуспешного ответа
{
"error": {
"code": "error code",
"description": "error description"
},
"status": "error"
}

session/start/payment

Старт платежа

Этот запрос можно использовать, чтобы начать платеж в рамках уже созданной сессии. В параметрах запроса можно передать недостающие данные для проведения оплаты или заменить уже переданные.

Адрес для отправки запроса

/api/v1/session/start/payment

Параметры запроса

НазваниеОбязательностьТипОписание
session_id+stringИдентификатор платежной сессии
payment_details- (обязательно, если не передано в session/create)objectПлатежные данные
amount_details- (обязательно, если не передано в session/create)objectСумма
participant_details-objectИнформация об участниках операции
customer- (обязательно, если не передано в session/create)objectДанные отправителя в вашей системе
payment_options-objectДополнительные параметры платежа
metadata-*Любая дополнительная информация. Если транзакция обрабатывается субпартнером, укажите сайт оплаты: "metadata" {"merchant": leave_it_blank,"submerchant": "https://website"}
Пример запроса
curl -X POST \
https://proxy-demo.pikepayments.com/api/v1/session/start/payment \
-H 'Content-Type: application/json' \
-H 'X-PARTNER-PROJECT: your_project_name' \
-H 'X-PARTNER-SIGN: signature' \
-d '{
"session_id": "ps_3230",
"payment_details": {
"type": "card",
"card": {
"type": "bank_card",
"bank_card": {
"number": "4242424242424242",
"expiration_month": "01",
"expiration_year": "26",
"security_code": "123"
}
}
},
"amount_details": {
"amount": 10000,
"currency": "rub"
},
"customer": {
"reference": "lucky"
},
"payment_options": {
"return_url": "https://pikepayments.com"
},
"metadata": "good"
}'

Параметры ответа

НазваниеОбязательностьТипОписание
status+stringСтатус. Возможные варианты: error, ok
session-objectПлатежная сессия
error-objectОшибка
Пример успешного ответа
{
"status": "ok",
"session": {
"id": "ps_3230",
"status": "in_progress",
"created_at": "2024-08-21T06:21:36.913863Z",
"updated_at": "2024-08-21T06:21:56.832509Z",
"acquiring_payments": [{
"id": "pm_3232",
"status": "in_progress",
"created_at": "2024-08-21T06:21:56.846204Z",
"customer": {
"reference": "lucky"
},
"payment_details": {
"type": "card",
"card": {
"last4": "4242",
"brand": "visa",
"country_iso3": "RUS"
}
},
"amount_details": {
"amount": 10000,
"currency": "rub"
},
"payment_options": {
"return_url": "https://pikepayments.com"
},
"metadata": "good"
}]
}
}
Пример неуспешного ответа
{
"status": "error",
"error": {
"description": "internal error",
"code": "repository_record_not_found"
}
}

session/start/payout

Старт выплаты

Этот запрос можно использовать, чтобы начать выплату в рамках уже созданной сессии. В параметрах запроса можно передать недостающие данные для проведения выплаты или заменить уже переданные.

Если вы используете выплатной виджет, чтобы получить токенизированные данные банковской карты пользователя, в этом запросе можно их передать.

Адрес для отправки запроса

/api/v1/session/start/payout

Параметры запроса

НазваниеОбязательностьТипОписание
session_id+stringИдентификатор платежной сессии
payment_method- (обязательно, если не передано в session/create)objectПлатежные данные (карта, банковский счёт и др.)
amount_details- (обязательно, если не передано в session/create)objectСумма
participant_details-objectИнформация об участниках выплаты
customer-objectДанные получателя в вашей системе
metadata-*Любая дополнительная информация. Если транзакция обрабатывается субпартнером, укажите сайт оплаты: "metadata" {"merchant": leave_it_blank,"submerchant": "https://website"}
Пример запроса
curl -X POST \
https://proxy-demo.pikepayments.com/api/v1/session/start/payout \
-H 'Content-Type: application/json' \
-H 'X-PARTNER-PROJECT: your_project_name' \
-H 'X-PARTNER-SIGN: signature' \
-d '{
"session_id": "ps_3230"
}'

Параметры ответа

НазваниеОбязательностьТипОписание
status+stringСтатус. Возможные варианты: error, ok
session-objectПлатежная сессия
error-objectОшибка
Пример успешного ответа
{
"status": "ok",
"session": {
"id": "ps_3230",
"status": "in_progress",
"created_at": "2024-05-27T02:03:00.000000Z",
"updated_at": "2024-05-27T02:03:00.000000Z",
"payments": [{
"id": "po_1313",
"status": "in_progress",
"created_at": "2024-05-27T02:03:00.000000Z",
"customer": {
"reference": "user123",
"contacts": [{
"email": "user@gmail.com"
}]
},
"payment_method": {
"type": "card",
"card": {
"last4": "4242",
"brand": "visa"
}
},
"amount_details": {
"amount": 10000,
"currency": "rub"
},
"metadata": "good"
}]
}
}
Пример неуспешного ответа
{
"error": {
"code": "error code",
"description": "error description"
},
"status": "error"
}

token

Генерация публичного токена для работы с виджетами

Токен нужен для доступа к JavaScript-библиотеке Pike. Вы можете сгенерировать его этим запросом и использовать для работы с виджетами.

Токен действителен 24 часа. Его можно использовать для одной операции. При отправке запроса следует передать параметры для работы с виджетами, которые вы собираетесь использовать с этим токеном.

Адрес для отправки запроса

/api/v1/token

Параметры запроса

НазваниеОбязательностьТипОписание
tokenize_widget-objectДанные для работы виджета токенизации
acquiring_widget-objectДанные для работы виджета платежной формы
fps_no_account_widget-objectДанные для платежной страницы
Пример запроса

Пример запроса на создание токена для проведения платежа с оплатой через платежную форму

curl -X POST \
https://proxy-demo.pikepayments.com/api/v1/token \
-H 'Content-Type: application/json' \
-H 'X-PARTNER-PROJECT: your_project_name' \
-H 'X-PARTNER-SIGN: signature' \
-d '{
"acquiring_widget": {
"session_id": "ps_3230"
}
}'

Параметры ответа

НазваниеОбязательностьТипОписание
status+stringСтатус. Возможные варианты: error, ok
public_token-stringПубличный токен
error-objectОшибка
Пример успешного ответа
{
"status": "ok",
"public_token": "e065c2f1328e74156a883c00e210a4b1b1451782bbfdd18ae8d05715e05d8539"
}
Пример неуспешного ответа
{
"status": "error",
"error": {
"description": "acquiring_widget.session_id.not_unique",
"code": "invalid_request"
}
}

tokenize/elements

Метод для токенизации номера карты с хранением токенизированных данных на стороне Pike.

Для использования этого метода нужно обратиться к вашему менеджеру в Pike.

Адрес для отправки запроса

/api/v1/tokenize/elements

Параметры запроса

НазваниеОбязательностьТипОписание
card_elements+objectДанные банковской карты для токенизации
Пример запроса
curl -X POST \
https://proxy-demo.pikepayments.com/api/v1/tokenize/elements \
-H 'Content-Type: application/json' \
-H 'X-PARTNER-PROJECT: your_project_name' \
-H 'X-PARTNER-SIGN: signature' \
-d '{
"card_elements": [{
"ref": "number",
"type": "card_number",
"card_number": "4242424242424242"
}]
}'

Параметры ответа

НазваниеОбязательностьТипОписание
status+stringСтатус. Возможные варианты: error, ok
data-objectИнформация о токене и токенизированной карте
error-objectОшибка
Пример успешного ответа
{
"status": "ok",
"data": {
"number": {
"token": "adb0eb0ac3f1f5f627f15aa8ca47b13483325ec42baab5e87cbff5f784dca919",
"info": {
"masked_card_number": "424242******4242",
"card_network": "visa",
"card_type": "visa"
}
}
}
}
Пример неуспешного ответа
{
"error": {
"code": "error code",
"description": "error description"
},
"status": "error"
}

Информация

fps/banks

С помощью этого запроса вы можете получить список наименований и идентификаторов банков-участников Системы быстрых платежей.

Метод используется только для выплат.

Адрес для отправки запроса

/api/v1/fps/banks

Пример запроса
curl -X GET \
https://proxy-demo.pikepayments.com/api/v1/fps/banks \
-H 'Content-Type: application/json' \
-H 'X-PARTNER-PROJECT: your_project_name' \
-H 'X-PARTNER-SIGN: signature' \
-d '{}'
Пример ответа
{
"banks": [{
"id": "100000000243",
"eng_name": "National Standard Bank",
"ru_name": "Национальный стандарт"
},
{
"id": "100000000056",
"eng_name": "Khlynov",
"ru_name": "Хлынов"
},...]
}

fps/customer_verification

С помощью этого запроса можно проверить зарегистрирован ли получатель в Системе Быстрых Платежей. Если пользователь найден в СБП, то сессия примет успешный статус, иначе сессия отменится. Эта операция не тарифицируется и подтверждается автоматически (вебхук ready_to_confirm не отправляется).

Адрес для отправки запроса

/api/v1/fps/customer_verification

Параметры запроса

НазваниеОбязательностьТипОписание
payment_method+objectПлатежные данные (карта, банковский счёт и др.)
participant_details+objectИнформация об участниках выплаты
Пример запроса

curl -X POST \
https://proxy-demo.pikepayments.com/api/v1/fps/customer_verification \
-H 'Content-Type: application/json' \
-H 'X-PARTNER-PROJECT: your_project_name' \
-H 'X-PARTNER-SIGN: signature' \
-d '{
"payment_method": {
"type": "bank_account",
"bank_account": {
"system_type": "faster_payment_system_verification",
"faster_payment_system_verification": {
"phone": "79261234567",
"bank_id": "100000000069"
}
}
},
"participant_details": {
"recipient": {
"first_name": "Иван",
"last_name": "Иванов",
"middle_name": "Иванович"
}
}
}'

Параметры ответа

НазваниеОбязательностьТипОписание
status+stringСтатус. Возможные варианты: error, ok
session-objectПлатежная сессия
error-objectОшибка
Пример успешного ответа
{
"status": "ok",
"session": {
"id": "ps_3230",
"status": "in_progress",
"created_at": "2022-03-01T11:57:31.652396Z",
"updated_at": "2022-03-01T11:57:31.861329Z",
"payments": [{
"id": "po_31668",
"status": "in_progress",
"created_at": "2022-03-01T11:57:31.895773Z",
"payment_method": {
"type": "bank_account",
"bank_account": {
"system_type": "faster_payment_system_verification",
"faster_payment_system_verification": {
"phone": "79261234567",
"bank_id": "100000000069"
}
}
},
"amount_details": {
"amount": 100,
"currency": "rub"
},
"participant_details": {
"recipient": {
"first_name": "Иван",
"last_name": "Иванов",
"middle_name": "Иванович"
}
}
}]
}
}
Пример неуспешного ответа
{
"error": {
"code": "error code",
"description": "error description"
},
"status": "error"
}

session/status

Получение информации по сессии

Вы можете отправить этот запрос, если хотите получить полную информацию о платежной сессии. Например, проверить, прошла выплата или нет. Или узнать, можно ли списывать сумму, захолдированную при оплате картой.

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

Адрес для отправки запроса

/api/v1/session/status

Параметры запроса

НазваниеОбязательностьТипОписание
session_id+stringИдентификатор платежной сессии
Пример запроса
curl -X POST \
https://proxy-demo.pikepayments.com/api/v1/session/status \
-H 'Content-Type: application/json' \
-H 'X-PARTNER-PROJECT: your_project_name' \
-H 'X-PARTNER-SIGN: signature' \
-d '{
"session_id": "ps_3230"
}'

Параметры ответа

НазваниеОбязательностьТипОписание
status+stringСтатус. Возможные варианты: error, ok
session-objectПлатежная сессия
error-objectОшибка
Пример успешного ответа
{
"status": "ok",
"session": {
"id": "ps_3230",
"status": "in_progress",
"created_at": "2024-05-27T02:03:00.000000Z",
"updated_at": "2024-05-27T02:03:00.000000Z",
"next_action": "confirm",
"payments": [{
"id": "po_1313",
"status": "in_progress",
"created_at": "2024-05-27T02:03:00.000000Z",
"customer": {
"reference": "user123",
"contacts": [{
"email": "user@gmail.com"
}]
},
"payment_method": {
"type": "card",
"card": {
"last4": "4242",
"brand": "visa",
"bin":"444600"
}
},
"amount_details": {
"amount": 10000,
"currency": "rub"
},
"transaction_info": {
"rrn": "425307614918",
"auth_code": "057441"
},
"metadata": "good"
}]
}
}
Пример неуспешного ответа
{
"error": {
"code": "error code",
"description": "error description"
},
"status": "error"
}

token/info

Получение информации по токену

Операции с банковскими картами часто проводятся с токенизированными данными. При выплатах и платежах через виджеты создается публичный токен, при рекуррентных платежах — токен для рекуррентных платежей.

По любому платежному токену можно получить информацию:

  • о банковской карте, для которой создан этот токен — это будет маскированный номер карты и платежная система;
  • о самом токене — тип токена, время создания, срок действия, активен ли этот токен на момент запроса.

Этот метод можно использовать, чтобы, например, узнать маскированный номер карты и показать пользователю, с какой карты спишутся деньги по подписке. Или если понадобится проверить срок действия токена.

Адрес для отправки запроса

/api/v1/token/info

Параметры запроса

НазваниеОбязательностьТипОписание
type+stringТип запроса. Варианты: card, public_token, recurrent_token
card- (обязателен для type = card)objectДанные токена банковской карты
public_token- (обязателен для type = public_token)objectДанные публичного токена
recurrent_token- (обязателен для type = recurrent_token)objectДанные токена для рекуррентных платежей
Примеры запросов

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

curl -X POST \
https://proxy-demo.pikepayments.com/api/v1/token/info \
-H 'Content-Type: application/json' \
-H 'X-PARTNER-PROJECT: your_project_name' \
-H 'X-PARTNER-SIGN: signature' \
-d '{
"type": "card",
"card": {
"type": "encrypted_card",
"encrypted_card": {
"number_hash": "card_number_hash (token)"
}
}
}'

Параметры ответа

НазваниеОбязательностьТипОписание
status+stringСтатус. Возможные варианты: error, ok
info-objectВ зависимости от типа запроса (type):
- информация о токенизированной банковской карте
- информация о публичном токене
- информация о токене для рекуррентных платежей
error-objectОшибка
Примеры успешных ответов
{
"status": "ok",
"info": {
"number_hash": "card_number_hash",
"brand": "visa",
"last4": "4242",
"type": "card"
}
}
Пример неуспешного ответа
{
"error": {
"code": "error code",
"description": "error description"
},
"status": "error"
}

wallet/balance

Если вы используете депозиты для выплат, с помощью этого метода можно узнать текущий баланс на вашем депозите в Pike.

Это нужно, чтобы убедиться, что на депозите достаточно денег:

  • для проведения выплат,
  • для проведения возвратов.

Если денег недостаточно, вы можете пополнить депозит.

Сумма передается в минорных единицах валюты. Если значение 10000, баланс составляет 100 рублей.

Адрес для отправки запроса

/api/v1/wallet/balance

Параметры запроса

НазваниеОбязательностьТипОписание
request_datetime+stringТекущее время запроса в формате ISO 8601
Пример запроса
curl -X POST \
https://proxy-demo.pikepayments.com//api/v1/wallet/balance \
-H 'Content-Type: application/json' \
-H 'X-PARTNER-PROJECT: your_project_name' \
-H 'X-PARTNER-SIGN: signature' \
-d '{
"request_datetime": "2019-10-14T19:53:00+03:00"
}'

Параметры ответа

НазваниеОбязательностьТипОписание
status+stringСтатус. Возможные варианты: error, ok
wallets-objectСписок доступных счетов обеспечения в Pike
error-objectОшибка
Примеры ответов
{
"status": "ok",
"wallets": [{
"id": "131",
"amount_details": {
"amount": 13100,
"currency": "rub"
}
}]
}

Дополнительные

sberpay/push

Метод для запроса статуса оплаты через SberPay.

Адрес для отправки запроса

/api/v1/sberpay/push

Параметры запроса

НазваниеОбязательностьТипОписание
session_id+stringИдентификатор сессии
phone+stringНомер телефона для отправки пуш-уведомления
Пример запроса
curl -X POST \
https://proxy-demo.pikepayments.com/api/v1/sberpay/push \
-H 'Content-Type: application/json' \
-H 'X-PARTNER-PROJECT: your_project_name' \
-H 'X-PARTNER-SIGN: signature' \
-d '{
"session_id": "ps_3230",
"phone": "+79638594ххх"
}'

Параметры ответа

НазваниеОбязательностьТипОписание
status+stringСтатус. Возможные варианты: error, ok
error-objectОшибка
Пример ответа
{
"status": "ok"
}