Для базового подключения к сервису вам нужно научиться работать с одним видом запроса и обрабатывать postback.
Основной запрос, который вам нужен для начала работы - /api/v1/bill/create
Пример запроса:
curl --location --request POST 'https://cardlink.link/api/v1/bill/create' \
--header 'Authorization: Bearer 123|q4uNcWNKMNZoSFSY1XTxp36nsM0kUMSu0otSA95' \
--form 'amount=16' \
--form 'order_id="Заказ 123"' \
--form 'description="Описание ссылки"' \
--form 'type="normal"' \
--form 'shop_id="G1vrEyX0LR"' \
--form 'currency_in="RUB"' \
--form 'custom="my_custom_data"' \
--form 'payer_pays_commission=1' \
--form 'name="Платёж"'
Пример ответа:
{
"success": "true",
"link_url": "https://cardlink.shop/link/3P1p2rgW7Y",
"link_page_url": "https://cardlink.shop/transfer/3P1p2rgW7Y",
"bill_id": "3P1p2rgW7Y
}
Далее вам необходимо направить пользователя на ссылку, указанную в "link_page_url". После оплаты пользователь будет перенаправлен на страницу, указанную в Success/Fail URL в зависимости от статуса платежа.
Перенаправление пользователя происходит посредством POST запроса следующего формата:
{
"OutSum": "18.54",
"CurrencyIn": "RUB",
"InvId": "Заказ 123",
"custom": "my_custom_data",
"SignatureValue": "5A41374P24C99A2156D1D306C800B53C"
}
После редиректа на Success или Fail URL пользователь должен увидеть сообщение со статусом платежа.
Так как вы можете получить order_id обратно, и в пример выше - это поле InvId, то можно сразу показать сообщение вида
Ваш заказ InvId успешно оплачен. Благодарим за платёж!
или
Оплата по заказу InvId не прошла. Пожалуйста, попробуйте ещё раз или обратитесь в службу поддержки
Так же вы получите Postback на указанный в настройках магазина Result URL. Формат данных следующий:
{
"Status": "SUCCESS",
"InvId": "Заказ 123",
"Commission": "2.54",
"CurrencyIn": "RUB",
"OutSum": "18.54",
"TrsId": "3P1p2rgW7Y",
"custom": "my_custom_data",
"SignatureValue": "4A41373E24C99A2656D1D306C800B53C"
}
На основе этого Postback вам нужно сменить статус заказа в вашей системе.
Получив статус SUCCESS вы в своей базе меняете статус заказа на "ОПЛАЧЕНО"
Получив статус FAIL вы соотвественно меняете у себя статус заказа на "НЕ ОПЛАЧЕНО"
Описанного выше достаточно, чтобы начать принимать платежи.