Баланс: 0 ₽
Новый проект
https://
http://
https://
Перед отправкой заявки ознакомьтесь с
требованиями к сайтам
Добавление сотрудника
Администратор
Агент поддержки
Модератор
Администратор
Привязка
Уведомления отсутствуют
API
Чтобы начать оплату, магазин должен перенаправить покупателя по специальному URL-адресу и передать обязательные параметры через GET или POST-запрос.
URL
https://api.kingpay.me/payment
Параметры
Обязательный
Значение
Описание
project_id
✅
Число
Идентифекатор проекта из личного кабинета
payment_id
✅
Число
Номер заказа в системе продавца (до 15 символов из символов "0-9")
amount_in_rub
✅
Число
Сумма платежа
currency
✅
Строка
Валюта платежа
description
❌
Строка
Описание платежа, до 200 символов
✅
Строка
Почта плательщика
phone
❌
Строка
Номер телефона плательщика
method
❌
Строка
Метод платежа
success_url
❌
Строка
URL редиректа в случае успешной оплаты. Должен содержать домен сайта
fail_url
❌
Строка
URL редиректа в случае неуспешной оплаты. Должен содержать домен сайта
sign
❌
Строка
Контрольная подпись (MD5 | SHA256)
Контрольная подпись
- MD5
Подпись создаётся путём соединения параметров currency,amount_in_rub, секретный ключ проекта,project_id и pay_id через точку (".") с последующим вычислением MD5.
- SHA256
Формирование подписи производится путем конкатенации параметров через (".") и создания хэша SHA256. Склеиваются параметры project_id, pay_id, amount_in_rub,currency и секретный ключ проекта.
Пример кода
Python (Django)
Node.JS (Express)
from django.http import JsonResponse
from django.views.decorators.csrf import csrf_exempt
import hashlib
SECRET_KEY = "NLmx0woAqrgHYnMbDSVLChCJ77R8adf"
@csrf_exempt
def payment(request):
if request.method == 'POST':
data = request.POST
params = {
'project_id': data.get('project_id'),
'pay_id': data.get('pay_id'),
'amount_in_rub': data.get('amount_in_rub'),
'currency': data.get('currency'),
}
algorithm = data.get('algorithm', 'sha256')
if algorithm == 'md5':
sign_str = f"{params['currency']}.{params['amount_in_rub']}.{SECRET_KEY}.{params['project_id']}.{params['pay_id']}"
sign = hashlib.md5(sign_str.encode()).hexdigest()
else:
sign_str = f"{params['project_id']}.{params['pay_id']}.{params['amount_in_rub']}.{params['currency']}.{SECRET_KEY}"
sign = hashlib.sha256(sign_str.encode()).hexdigest()
return JsonResponse({'sign': sign, 'sign_str': sign_str})