Платежная форма
Если вам не требуется проверять платежи перед оплатой и фиксировать факт после оплаты:
Установка виджета
Для установки виджета необходимо прописать на сайте скрипт в раздел head:
Для появления платежной формы необходимо зарегистрировать функцию для вызова метода pay, передав в него параметр auth или charge:
pay(auth,charge) //id из личного кабинета Оплата товаров в example.comМожно дополнительно указать:
- идентификатор плательщика (необязательно)
- номер заказа (необязательно)
- email плательщика (необязательно)
- дизайн виджета (необязательно)
- время в секундах до авто-закрытия виджета (необязательный)
- адреса для перенаправления
- при оплате по Tinkoff Pay тестовый проезд дом тест
function payHandler(response) { // действие при успешной оплате
}
function failHandler(response) { // действие при неуспешной оплате
}И прописать вызов функции на событие, например, нажатие кнопки Оплатить.
Демонстрация работы виджета представлена в нашем демо-магазине.
Пример реализации запуска виджета без библиотеки jquery:
document.getElementById(payButton).addEventListener(click, function() { pay(auth,charge);
});Для тестирования можно использовать как тестовые карточные данные, так и реальные. Списания денежных средств не произойдет.
Интеграция MIR Pay
CloudPayments предлагает подключение MIR Pay по упрощенной схеме на странице оплаты (с помощью платежного виджета). Дополнительно интегрироваться с сервисом платежной системы МИР не нужно.
В ближайшее время MIR Pay будет доступен для всех видов интеграций: платежные блоки, заказы, платежные ссылки, MobileSDK.
Для включения кнопки MIR Pay в виджете, необходимо:
- Переключить фича-тоггл MIR Pay в Личном кабинете, в настройках сайта или написать в службу поддержки CloudPayments.

Выполнение платежа
Покупатель после нажатия кнопки Оплатить переходит на виджет CloudPayments, где может выбрать оплату по MIR Pay без ввода банковских реквизитов.
После оплаты покупатель видит сообщение об успешном платеже и автоматически возвращается обратно на сайт. Продавцу приходит уведомление о транзакции.
Продавцу не нужно интегрироваться с сервисом платежной системы МИР, все необходимое реализовано на стороне CloudPayments.
Принцип работы
Выбор формата передачи параметров определяется на стороне клиента и управляется через заголовок запроса Content-Type.
Ответ система выдает в JSON-формате, который как минимум включает в себя два параметра: Success и Message:
{ Success: true, Message: Invalid Amount value
}Параметры
Вызов функции pay c аргументом auth или charge определяет схему проведения оплаты:
publicId— Идентификатор сайта, который находится в Личном кабинете (обязательный)currency— Валюта: RUB/USD/EUR/GBP (см. справочник) (обязательный)accountId— Идентификатор пользователя (обязательный для создания подписки)description— Описание назначения оплаты в произвольном формате (необязательный)invoiceId— Номер заказа или счета (необязательный)email— E-mail адрес пользователя (необязательный)
## Настройка виджета CloudPayments
## Требуемые параметры
- `requireEmail`: (boolean) Необязательный. Установите на true, если требуется указать e-mail адрес пользователя в виджете.
- `data`: (JSON) Необязательный. Дополнительные данные, связанные с транзакцией. Инструкции для создания подписки или формирования онлайн-чека должны быть обернуты в объект `cloudpayments`.
- `skin`: (string) Необязательный. Выбор дизайна виджета. Возможные варианты: classic, modern, mini. По умолчанию: classic.
- `retryPayment`: (boolean) Необязательный. Появление кнопки Повторить платеж при неудачном платеже. По умолчанию: true.
- `autoClose`: (number) Необязательный. Автоматическое закрытие виджета после успешной оплаты через указанное количество секунд. Минимум 3 секунды, максимум 10 секунд. Дальнейшее поведение задается параметром `onSuccess`.
- `payer`: (Object) Необязательный. Информация о плательщике. Используйте параметры: firstName, lastName, middleName, birth, street, address, city, country, phone, postcode.
- `configuration.common.successRedirectUrl`: (string) Необязательный. URL для перенаправления клиента после успешной оплаты.
- `configuration.common.failRedirectUrl`: (string) Необязательный. URL для перенаправления клиента после неудачной оплаты.
## Поведение формы
- `onSuccess`: (Function или String) Необязательный. Функция или адрес страницы для успешной оплаты.
- `onFail`: (Function или String) Необязательный. Функция или адрес страницы для неудачной оплаты.
- `onComplete`: (Function) Необязательный. Функция, вызываемая после получения ответа с результатом транзакции.
## Выплата по токену
Выплата по токену можно осуществить через вызов метода API.
- `Token`: (string) Обязательный. Токен карты, выданный системой после первого платежа.
- `Amount`: (number) Обязательный. Сумма платежа в валюте.
- `InvoiceId`: (string) Необязательный. Номер заказа в вашей системе.
- `Receiver`: (Object) Необязательный. Информация о получателе.
## Соответствие требованиям
Для успешной или неуспешной оплаты используйте предоставленные параметры.## Оптимизация безопасности приема платежей
Основное требование стандарта — максимально ограничить доступ к данным платежных карт. Оптимальное решение — вообще не иметь к ним доступа, а вместо этого использовать сертифицированных провайдеров для приема платежей. На практике это означает, что нельзя ни запрашивать, ни передавать номера карт.
Если при звонке клиент говорит, что не проходит платеж, и начинает диктовать номер, нужно его прервать и объяснить, почему вы не можете получать данные карты. Если присылает по почте или скайпу — удалять сообщение и сообщать, что передавать данные карты небезопасно.
## Охраняемые данные
К охраняемым данным относятся полный номер карты и код CVV2/CVC2 (последние 3 цифры на обратной стороне). Имя владельца, срок действия и маскированный номер карты (первые 6 и последние 4 цифры) в защите по требованиям стандарта не нуждаются, поэтому их можно использовать в разумных пределах.
## Определения и термины
- Плательщик - физическое лицо, которое отправляет денежные средства.
- Получатель - физическое лицо, которое получает денежные средства.
- Площадка - посредник, который выступает гарантом безопасности сделки, принимает решение о выполнении сторонами своих обязательств.
- Сделка - процесс приобретения товара/услуги одним физическим лицом у другого.
- Оплата - приобретение товара/услуги у физического лица.
- Выплата - получение вознаграждения физического лица, оказавшего услугу/продавцу товара.
- Widget - всплывающая форма для ввода реквизитов карты и e-mail адреса плательщика.
- Checkout - скрипт, который прописывается на сайте, собирает из указанной формы карточные данные и составляет из них криптограмму для оплаты через API.
- AccumulationId - уникальный идентификатор сделки, присваиваемый во время первой операции.
- TransactionId - уникальный идентификатор транзакции.
## Изменение настроек уведомлений
Метод изменения настроек уведомлений.
| Параметр | Тип | Описание |
|-------------|----------------|---------------------------------------------------------|
| Type | String | Тип уведомления: Pay/Fail и т.д., кроме Check-уведомления |
| IsEnabled | Bool | Если значение true — то уведомление включено. Значение по умолчанию — false |
| Address | String | Адрес для отправки уведомлений (для HTTPS-схемы необходим валидный SSL-сертификат) |
| HttpMethod | String | HTTP-метод для отправки уведомлений. Возможные значения: GET, POST. Значение по умолчанию — GET |
| Encoding | String | Кодировка уведомлений. Возможные значения: UTF8, Windows1251. Значение по умолчанию — UTF8 |
| Format | String | Формат уведомлений. Возможное значение: CloudPayments. Значение по умолчанию — CloudPayments |
## Рекуррентные платежи
Рекуррентные платежи, также известные как платежи по подписке или автоплатежи — возможность выполнять регулярные списания денег с банковской карты покупателя без повторного ввода реквизитов карты и без участия плательщика для инициации очередного платежа.
## Рекуррентные платежи
Рекуррентные платежи всегда начинаются с первого, установочного платежа, для выполнения которого плательщик должен ввести реквизиты своей карты. Для последующих регулярных платежей обязательно нужно ознакомить держателя карты с графиком и получить его согласие на безакцептное списание.
## Локализация виджета
По умолчанию мы отображаем виджет на русском языке. Для вызова виджета на других языках передайте в параметрах инициализации виджета параметр language.
Список поддерживаемых языков:
## Обработка 3-D Secure
Для проведения 3-D Secure аутентификации нужно отправить плательщика на адрес, указанный в параметре AcsUrl ответа сервера с передачей следующих параметров:
### Пример формы
Для завершения оплаты выполните следующий метод Post3ds.
- TransactionId Long Обязательный Значение параметра MD
- PaRes String Обязательный Значение одноименного параметра
В ответ на корректно сформированный запрос сервер вернет либо информацию об успешной транзакции, либо — об отклоненной.
## Виды операций
Система предполагает два вида операций: оплата и возврат.
- Для приема платежей в приложении или на сайте с прямой интеграцией:
- Для приема платежей на сайте через виджет регистрация и проверка сайта не требуются.
## Создание подписки на рекуррентные платежи
Метод создания подписки на рекуррентные платежи.
- Description String Обязательный Назначение платежа в свободной форме
- Amount Numeric Обязательный Cумма платежа в валюте, разделитель точка. Количество не нулевых знаков после точки – 2.
- Currency String Обязательный Валюта: UZS/USD/EUR/GBP (см. справочник)
- RequireConfirmation Bool Обязательный Если значение true — платежи будут выполняться по двухстадийной схеме
- StartDate DateTime Обязательный Дата и время первого платежа по плану во временной зоне UTC. Значение должно быть в будущем
- Interval String Обязательный Интервал. Возможные значения: Day, Week, Month
- Period Int Обязательный Период. В комбинации с интервалом, 1 Month значит раз в месяц, а 2 Week — раз в две недели. Должен быть больше 0
- MaxPeriods Int Необязательный Максимальное количество платежей в подписке. Если указан, должен быть больше 0
- CustomerReceipt json Необязательный Для изменения состава онлайн-чека
В ответ на корректно сформированный запрос система возвращает сообщение об успешно выполненной операции и идентификатор подписки.
Ежемесячная подписка на сервис example.com
## Просмотр транзакции
Метод получения детализации по транзакции.
Если транзакция с указанным номером была найдена, система отобразит информацию о ней.
"Сибирский федеральный округ" "Visa Infinite (Infinite)" "Оплата успешно проведена"
3-D Secure — общее название программ Verified By Visa и Mastercard Secure Code от платежных систем Visa и MasterCard. Суть программы - в проверке подлинности держателя защита от несанкционированного использования карты эмитентом перед оплатой. На практике это выглядит так: держатель указывает реквизиты карты, далее открывается сайт эмитента, где держателю предлагается ввести пароль или секретный код. Как правило, код отправляется в СМС-сообщении. Если код указан правильно, оплата будет проведена. Если нет — отклонена.
3-D Secure в процессе оплаты появляется не на всех картах, а только тех, банки-эмитенты которых поддерживают данную технологию. Проведение оплаты без 3-D Secure является менее безопасным вариантом.
## Коды обработки ответов на check уведомление
Ниже предоставлены код регистрации ответов вашего сервиса на check-уведомление
3005 FormatError Обработчик уведомления вернул код, отличный от ожидаемого
3007 UnableToConnect Обработчик не отвечает (404, 504, 508 и т.д)
## Метод для получения информации по БС для обоих типов сделки (N
Публичный метод для получения информации по массиву EscrowAccumulationId, который позволяет получить:
### Значение поля Status для сделки
Метод поиска платежа и проверки статуса (см. справочник).
Адрес старого метода: https://api.cloudpayments.ru/payments/find
Адрес нового метода: https://api.cloudpayments.ru/v2/payments/find
Если платеж по указанному номеру заказа был найден, система отобразит либо информацию об успешной транзакции, либо — об отклоненной. Если будет найдено несколько платежей с указанным номером заказа, то система вернет информацию только о последней операции. Отличие нового метода в том, что он ищет по всем платежам, включая возвраты и выплаты на карту.
## Google Pay

Способ оплаты от компании Google, который объединяет в себе возможности оплаты через приложение Google Pay в магазинах и обычной оплаты картой, сохраненной в аккаунте пользователя Google.
Технология работает в мобильных приложениях и браузерах Google Chrome, Mozilla Firefox, Apple Safari, Microsoft Edge, Opera или UCWeb UC на всех устройствах Android.
Протестировать оплату через Google Pay можно в нашем демо-магазине. Использовать можно как тестовые, так и реальные карточные данные. Деньги списываться не будут.
## API
API — программный интерфейс системы для взаимодействия с системами ТСП.
Интерфейс работает по адресу api.cloudpayments.uz и поддерживает функции для выполнения платежа, отмены оплаты, возврата денег, завершения платежей, выполненных по двухстадийной схеме, создания и отмены подписок на рекуррентные платежи, а также отправки счетов по почте.
## Технология Checkout
Checkout — уникальная технология токенизации карт для приема платежей на вашем сайте, в форме без встроенных iframe элементов, что дает максимальный контроль и конверсию прохождения платежей. Данные платежных карт шифруются в браузере покупателя, поэтому ваш сайт не принимает участие в обработке и хранении номеров, что значительно сокращает область применения требований PCI DSS. Тем не менее, сайт влияет на безопасность карточных данных и для его защиты необходимо выполнять сканирование не менее одного раза в квартал для поиска вирусов и уязвимостей. Сканирование должно проводиться аккредитованным вендором (ASV) из списка, представленного на сайте совета PCI.
## Онлайн-касса
Мы используем кассы MicroPay-ФАС и MicroPay-ФС с подключением к любому оператору фискальных данных.

## Платежный конструктор
Первый блок - содержит форму для ввода реквизитов карты и электронной почты плательщика со всеми доступными способами оплаты, интегрируемая в DOM элемент. Блок автоматически определяет тип платежной системы (Visa, MasterCard, Humo или UzCard), банк-эмитент карты, а также показывает соответствующие логотипы.
Форма оптимизирована для использования в любых браузерах и мобильных устройствах. Внутри блока открывается iframe, который гарантирует безопасность передачи карточных данных и не требует от ТСП сертификации для использования.
Подробная документация для разработчиков.

## Confirm
Выполняется после подтверждения платежа, проведенного по двухстадийной схеме.
Параметры передаются в теле запроса, список представлен в следующей таблице:
TransactionId Long Обязательный Номер транзакции в системе
Amount Numeric, точка в качестве разделителя, две цифры после точки Обязательный Сумма оплаты из параметров платежа
Currency String Обязательный Валюта: UZS/USD/EUR/GBP из параметров платежа (см. справочник)
DateTime yyyy-MM-dd HH:mm:ss Обязательный Дата/время создания платежа во временной зоне UTC
CardFirstSix String(6) Обязательный Первые 6 цифр номера карты
CardLastFour String(4) Обязательный Последние 4 цифры номера карты
CardType String Обязательный Платежная система карты: Visa, MasterCard, Humo или UzCard
CardExpDate String Обязательный Срок действия карты в формате MM/YY
TestMode Bit (1 или 0) Обязательный Признак тестового режима
Status String Обязательный Статус платежа после авторизации: Completed
InvoiceId String Необязательный Номер заказа из параметров платежа
AccountId String Необязательный Идентификатор пользователя из параметров платежа
SubscriptionId String Необязательный Идентификатор подписки (для рекуррентных платежей)
Name String Необязательный Имя держателя карты
Email String Необязательный E-mail адрес плательщика
IpCountry String(2) Необязательный Двухбуквенный код страны нахождения плательщика по ISO3166-1
IpCity String Необязательный Город нахождения плательщика
IpRegion String Необязательный Регион нахождения плательщика
IpDistrict String Необязательный Округ нахождения плательщика
IpLatitude String Необязательный Широта нахождения плательщика
IpLongitude String Необязательный Долгота нахождения плательщика
Issuer String Необязательный Название банка-эмитента карты
IssuerBankCountry String(2) Необязательный Двухбуквенный код страны эмитента карты по ISO3166-1
Description String Необязательный Назначение оплаты из параметров платежа
Data Json Необязательный Произвольный набор параметров, переданных в транзакцию
Token String Необязательный Токен карты для повторных платежей без ввода реквизитов
В ответ на запрос система ожидает получить ответ в JSON-формате с обязательным параметром code:
Код определяет результат обработки сервером ТСП уведомления о платеже и может принимать единственное значение:
Amount Number, точка в качестве разделителя, две цифры после точки Обязательный Сумма оплаты из параметров платежа
Currency String Обязательный Валюта: RUB/USD/EUR/GBP из параметров платежа (см. справочник)
CardType String Обязательный Платежная система карты: Visa, Mastercard, Maestro или "МИР"
PaymentMethod String Необязательный Метод оплаты ApplePay, GooglePay, Яндекс Пэй или TinkoffPay
Rrn String Необязательный Уникальный номер банковской транзакции, который назначается обслуживающим банком
## Автоплатежи для интернет-провайдеров
Платежное решение подходит для интернет-провайдеров, операторов связи и телекомов. Уведомления на проверку и регистрацию платежей могут быть настроены как в формате CloudPayments, так и в формате QIWI (ОСМП).

//минус один день //один раз в месяц начиная со следующего месяца за минусом одного дня //id из личного кабинета Пополнение счета абонента //идентификатор плательщика (обязательно для создания подписки) //действие при успешной оплате //действие при неуспешной оплате
## Коды временных зон
В таблице ниже представлены коды временных зон для преобразования времени.
PST (UTC-08:00) Тихоокеанское время (США и Канада)
MST (UTC-07:00) Горное время (США и Канада)
CST (UTC-06:00) Центральное время (США и Канада)
EST (UTC-05:00) Восточное время (США и Канада)
AST (UTC-04:00) Атлантическое время (Канада)
UTC (UTC) Время в формате UTC
GMT (UTC) Дублин, Лиссабон, Лондон, Эдинбург
CET (UTC+01:00) Амстердам, Берлин, Берн, Вена, Рим, Стокгольм
CET (UTC+01:00) Белград, Братислава, Будапешт, Любляна, Прага
CET (UTC+01:00) Брюссель, Копенгаген, Мадрид, Париж
CET (UTC+01:00) Варшава, Загреб, Сараево, Скопье
EET (UTC+02:00) Афины, Бухарест
EET (UTC+02:00) Вильнюс, Киев, Рига, София, Таллин, Хельсинки
EET (UTC+02:00) Восточная Европа
EET (UTC+02:00) Калининград (RTZ 1)
MSK (UTC+03:00) Волгоград, Москва, Санкт-Петербург (RTZ 2)
SAMT (UTC+04:00) Ижевск, Самара (RTZ 3)
TJT (UTC+05:00) Ашхабад, Ташкент
YEKT (UTC+05:00) Екатеринбург (RTZ 4)
ALMT (UTC+06:00) Астана, Алматы
NOVT (UTC+06:00) Новосибирск (RTZ 5)
KRAT (UTC+07:00) Красноярск (RTZ 6)
HKT (UTC+08:00) Гонконг, Пекин, Урумчи, Чунцин
IRKT (UTC+08:00) Иркутск (RTZ 7)
SGT (UTC+08:00) Куала-Лумпур, Сингапур
YAKT (UTC+09:00) Якутск (RTZ 8)
VLAT (UTC+10:00) Владивосток, Магадан (RTZ 9)
SAKT (UTC+11:00) Чокурдах (RTZ 10)
ANAT (UTC+12:00) Анадырь, Петропавловск-Камчатский (RTZ 11)
## Создание счета для отправки по почте
Метод формирования ссылки на оплату и последующей отправки уведомления на e-mail адрес плательщика.
Currency String Необязательный Валюта RUB/USD/EUR/GBP (см. справочник). Если параметр не передан, то по умолчанию принимает значение RUB
RequireConfirmation Bool Необязательный Есть значение true — платеж будет выполнен по двухстадийной схеме
SendEmail Bool Необязательный Если значение true — плательщик получит письмо со ссылкой на оплату
AccountId String Необязательный Идентификатор пользователя в вашей системе
OfferUri String Необязательный Ссылка на оферту, которая будет показываться на странице заказа
Phone String Необязательный Номер телефона плательщика в произвольном формате
SendSms Bool Необязательный Если значение true — плательщик получит СМС со ссылкой на оплату
SendViber Bool Необязательный Если значение true — плательщик получит сообщение в Viber со ссылкой на оплату
CultureName String Необязательный Язык уведомлений. Возможные значения: "ru-RU", "en-US". (см. справочник)
SubscriptionBehavior String Необязательный Для создания платежа с подпиской. Возможные значения: CreateWeekly, CreateMonthly
SuccessRedirectUrl String Необязательный Адрес страницы для редиректа при успешной оплате
FailRedirectUrl String Необязательный Адрес страницы для редиректа при неуспешной оплате
JsonData Json Необязательный Любые другие данные, которые будут связаны с транзакцией, в том числе инструкции для формирования онлайн-чека должны обёртываться в объект cloudpayments
"Оплата на сайте example.com"
## Google Pay в мобильных приложениях
Используйте Google Pay API для получения PaymentData и метод оплаты по криптограмме в API для проведения платежа.
При формировании запроса на платежные данные укажите тип оплаты через шлюз: Wallet-Constants.PAYMENT\_METHOD\_TOKENIZATION\_TYPE\_PAYMENT\_GATEWAY и добавьте два параметра:
"ваш Public ID"
// или 'charge' //id из личного кабинета Оплата товаров в example.com //идентификатор плательщика (необязательно) //номер заказа (необязательно) //email плательщика (необязательно) //дизайн виджета (необязательно) //время в секундах до авто-закрытия виджета (необязательный) //действие при успешной оплате //действие при неуспешной оплате //Вызывается как только виджет получает от api.cloudpayments ответ с результатом транзакции.
## Возможность настройки графика платежей
Система может выполнять регулярные платежи каждые 2 недели, 1 раз в месяц, каждые 3 месяца и так далее: вы можете указать любой период.
### Выбор даты начала списаний
Рекуррентные платежи могут быть запущены сразу при создании подписки, либо с отсрочкой.
Пример: покупатель подписывается на вашу услугу в середине месяца, вы создаете план ежемесячных рекуррентных платежей начиная со следующего месяца по 15-м числам.
### Ограничение на количество платежей
Можно указать максимальное количество платежей в подписке или создать план без ограничений. В первом случае рекуррентные платежи будут автоматически остановлены после исполнения всех платежей в графике.
Пример: покупатель приобретает товар стоимостью 12 000 рублей в рассрочку на год — оплачивает 1000 рублей установочным платежом и подписывается на план рекуррентных платежей по 1000 рублей ежемесячно, но не более 11 списаний.
### Заморозка плана
Подписку на регулярные платежи можно приостановить на любой срок из личного кабинета или с помощью API.
Пример: покупатель просит приостановить предоставление услуг на пару месяцев, вы сдвигаете дату следующего платежа на соответствующий срок.
## Соответствие PCI DSS вместе с CloudPayments
CloudPayments — сертифицированный сервис-провайдер с максимальным уровнем соответствия PCI DSS, предоставляющим право хранить данные платежных карт и обрабатывать более 6 миллионов платежей ежегодно. Подтверждение соответствия проходит каждый год в рамках сертификационного аудита.
Все платежные инструменты CloudPayments спроектированы таким образом, что при их использовании вы автоматически соответствуете требованиям по безопасности. Дополнительных мер предпринимать не нужно.
Исключением является прием платежей по технологии Checkout. Для использования необходимо подтверждать соответствие: заполнить лист самооценки и ежеквартально проверять сайт на уязвимости специальным сканером.
## Рекуррентные платежи (подписка)
После успешного завершения оплаты виджет может автоматически создавать подписку на рекуррентные платежи. Для это нужно добавить несколько параметров запуска:
MaxPeriods Int Необязательный Максимальное количество платежей в подписке. По умолчанию стоит без ограничений. Если задаете количество, проверьте, чтобы оно было больше 0
Amount Number Необязательный Сумма регулярного платежа. По умолчанию совпадает с суммой первого, установочного платежа. Если указываете другую сумму, проверьте, чтобы она была больше 0
StartDate DateTime Необязательный Дата и время первого регулярного платежа. По умолчанию запуск произойдет через указанный интервал и период, например через месяц. Если указываете другую дату, то она должна стоять в будущем времени
CustomerReceipt String Необязательный Данные для формирования онлайн-чека в регулярных платежах
Параметры для запуска регулярных платежей необходимо добавить в объект data.CloudPayments.recurrent как в примере ниже::
Наименование товара 3 // тег-1214 признак способа расчета - признак способа расчета // тег-1212 признак предмета расчета - признак предмета товара, работы, услуги, платежа, выплаты, иного предмета расчета //система налогообложения; необязательный, если у вас одна система налогообложения //e-mail покупателя, если нужно отправить письмо с чеком //телефон покупателя в любом формате, если нужно отправить сообщение со ссылкой на чек //чек является бланком строгой отчетности // Сумма оплаты электронными деньгами // Сумма из предоплаты (зачетом аванса) (2 знака после точки) // Сумма постоплатой(в кредит) (2 знака после точки) // Сумма оплаты встречным предоставлением (сертификаты, др. мат.ценности) (2 знака после точки) //чек для первого платежа //чек для регулярных платежей //создание ежемесячной подписки //id из личного кабинета Подписка на ежемесячный доступ к сайту example.com //номер заказа (необязательно) //идентификатор плательщика (обязательно для создания подписки) //действие при успешной оплате //действие при неуспешной оплате
Обратите внимание, что создать подписку можно, указав параметр accountId, который может быть e-mail адресом, номером телефона или любым другим идентификатором плательщика.
Больше примеров создания рекуррентных платежей из виджета — в разделе "Сценарии интеграции".
Для отмены рекуррентных платежей используйте возможности личного кабинета, API или предоставьте покупателю ссылку на сайт системы — https://my.cloudpayments.ru/, где он самостоятельно сможет найти и отменить свои подписки.
## Поиск подписок
Метод получения списка подписок для определенного аккаунта.
## Платежный виджет
Платежный виджет — всплывающая форма для ввода реквизитов карты и e-mail адреса плательщика. Виджет автоматически определяет тип платежной системы: Visa, MasterCard, Maestro или "МИР", а также банк-эмитент карты и показывает соответствующие логотипы. Форма оптимизирована для использования в любых браузерах и мобильных устройствах. Внутри виджета открывается iframe, который гарантирует безопасность передачи карточных данных и не требует от ТСП сертификации для использования.
Демо платежного конструктора.
Демонстрация работы виджета Widget представлена в нашем демо-магазине. Для тестирования можно использовать как тестовые карточные данные, так и реальные. Списания денежных средств не произойдет.

MIR Pay позволяет оплачивать покупки в одно касание картами платежной системы «МИР». Кнопка Pay-сервиса отображается на платёжной странице рядом с другими способами оплаты.
## Упрощенная интеграция (только для веб-сайтов)
Мы упростили процедуру регистрации в Apple. Для веб-сайтов создание учетной записи в консоли Apple Developer при использовании наших платежных решений больше не является необходимостью. Теперь достаточно в личном кабинете в настройках сайта:
Для успешного включения опции ваш сайт должен работать по схеме HTTPS и поддерживать протокол TLS версии 1.2.

Если вы используете Checkout скрипт, вам необходимо самостоятельно разместить Apple Pay. В случае использования виджета возможность оплаты Apple Pay появится автоматически после включения одноименной опции в нашем ЛК.
## Проверка уведомлений
Все виды уведомлений — check, pay, fail, confirm, cancel, refund и recurrent содержат 2 HTTP-заголовка X-Content-HMAC и Content-HMAC, в которых находится проверочное значение запроса, вычисленное с помощью алгоритма HMAC. Отличие между ними только в том, что первый генерируется из URL decoded (или не encoded) параметров, а второй генерируется из URL encoded параметров, что может вызывать проблемы. Если вам необходимо проверять подлинность и целостность уведомлений, вы можете вычислить проверочное значение на своей стороне и сравнить с тем, что пришло в запросе. Совпадение подтверждает, что уведомление было отправлено от нас и пришло к вам в оригинальном виде.
При реализации проверки сообщения, обратите внимание на следующие моменты:
Примеры вычисления HMAC на разных языках программирования.
Адрес, с которых система отправляет уведомления — 82.148.5.213/32 и 93.170.6.6/32.
Для вас это означает, что:
Более подробно как отказаться от SSL3\. После 8 июня https-уведомления на сервера, поддерживающие только SSL3, могут не доставляться.
### Требования к криптограмме
С точки зрения PCI DSS, подобный способ подключения классифицируется как "E-commerce merchants who outsource all payment processing to PCI DSS validated third parties, and who have a website(s) that doesn’t directly receive cardholder data but that can impact the security of the payment transaction. No electronic storage, processing, or transmission of any cardholder data on the merchant’s systems or premises.", то есть обработка платежных данных выполняется третьей стороной, но сайт влияет на безопасность карточных данных.
Для соблюдения требований стандарта, необходимо заполнять лист самооценки SAQ-EP и ежеквартально проходить ASV-тестирование.
Подробнее про соответствие требованиям PCI читайте в разделе PCI DSS.
## Отмена оплаты
Отмену оплаты можно выполнить через личный кабинет либо через вызов метода API.
В случае, если был использован метод отмены (void) до истечения 24 часов с момента совершения операции авторизации на сумму 10 сум или меньше, система автоматически сообщит об ошибке.
"Должно пройти больше 24 часов для отмены транзакции на 10 сум либо меньше."
## Платежи в один клик
Если вам нужно сохранять данные карт на стороне платежного шлюза для последующей оплаты в один клик без ввода карточных данных и без 3-D Secure, сценарий может быть следующим:

Если пользователь согласится, сохраните после оплаты в его профиле маску карты (тип и последние 4 цифры), а также токен. Параметры карты и токен система возвращает в Pay-уведомлении и через API.

Если пользователь выбирает ранее использованную карту — вызывайте метод оплаты по токену через API.

Если пользователь не желает более платить с привязанной карты, удалите маску и токен из его профиля.
Адреса, с которых система отправляет уведомления — 91.142.84.0/27, 87.251.91.160/27, 162.55.174.97, 194.39.64.130, 92.63.206.131 и 185.98.81.0/28.
## Онлайн-фискализация
Компания CloudPayments предлагает своим партнерам облачное решение "под ключ" для онлайн-фискализации интернет-платежей, и в рамках соблюдения закона 54-ФЗ для любого бизнеса вы получите:
Касса будет находиться в дата-центре 24/7, с подключением к интернету и питанию, работать круглосуточно и без перебоев. Наши сотрудники будут следить за ее техническим состоянием и своевременно менять фискальные накопители, а специальное программное обеспечение — корректировать ошибки, открывать и закрывать смену по расписанию, в "облаке" ставить чеки в очередь при большой нагрузке и гарантированно отправлять покупателям.

## Настройка подключения
Для подключения продукта"Безопасная сделка" необходимо подать заявку своему персональному менеджеру или указать это на этапе подключения выделенному менеджеру.
Пример: покупатель приобретает товар стоимостью 12 000 сум в рассрочку на год — оплачивает 1000 сум установочным платежом и подписывается на план рекуррентных платежей по 1000 сум ежемесячно, но не более 11 списаний.




