Интеграция с платформой В этом подразделе представлены ответы на вопросы о подключении к платформе и настройке и тестировании различной функциональности. Рис. 1. Для чего нужен PCI DSS и как ему соответствовать? Payment Card Industry Data Security Standard (PCI DSS) — это стандарт по надлежащей защите данных платёжных карт. Он разработан Советом по стандартам безопасности индустрии платёжных карт (PCI SSC) и устанавливает требования для всех организаций, применяющих в своей деятельности обработку, хранение или передачу данных платёжных карт. Соблюдать требования этого стандарта обязаны все стороны, задействованные в проведении платежей с использованием платёжных карт — без соблюдения этих требований проводить такие платежи нельзя. Чтобы подтверждать соответствие требованиям PCI DSS и иметь возможность проводить платежи с использованием платёжных карт, со стороны мерчанта необходимо своевременно предоставлять соответствующие документы платёжным системам (таким как Visa, Mastercard и Amex), напрямую или через провайдеров. Разные платёжные системы могут предъявлять разные требования к таким документам, в том числе с учётом фактов компрометации данных и прочих факторов, поэтому необходимость предоставления конкретным мерчантом тех или иных документов рассматривается индивидуально. В случаях с платёжными системами Visa и Mastercard документы о соответствии PCI DSS следует предоставлять ecommpay. К таким документам относятся: Для всех мерчантов — отчёт о результатах ASV-сканирования.Эти сканирования должны выполняться авторизованными поставщиками (PCI SSC Approved Scanning Vendor, ASV) ежеквартально, а также после каждого значительного изменения сетевой инфраструктуры. Мерчанты ecommpay могут выбирать поставщиков самостоятельно и, если это актуально, могут выполнять сканирования с помощью соответствующего партнёра ecommpay. Чтобы организовать сканирования через партнёра ecommpay, можно обращаться к курирующему менеджеру. Для мерчантов с количеством операций более 6 миллионов в год (уровня 1) — аттестат соответствия (Attestation of Compliance, AOC). Для мерчантов с количеством операций до 6 миллионов в год (уровней 2, 3 и 4) — опросный лист (Self-Assessment Questionnaire, SAQ).С вопросами о правилах заполнения опросных листов можно обращаться к курирующему менеджеру ecommpay. После проверки всех требуемых документов можно проводить платежи с использованием карт этих платёжных систем — об этом, как и об истечении сроков действия отдельных документов, мерчанта оповещает курирующий менеджер ecommpay. В случаях с другими платёжными системами, как правило, документы о соответствии PCI DSS следует предоставлять напрямую этим платёжным системам, но можно уточнять необходимость их предоставления ecommpay у курирующего менеджера. Рис. 2. В чём различия между тестовой и рабочей средами? Обычно при подключении к платёжной платформе мерчанту предоставляется доступ сначала к тестовой среде, а после — к рабочей. Чтобы протестировать основные сценарии работы без проведения реальных платежей и выводить в свет настроенные и проверенные решения. Для этого специалисты технической поддержки ecommpay создают и настраивают в платформе два проекта взаимодействия с подключаемым веб-сервисом — тестовый и рабочий, с отдельным идентификатором для каждого из них. И как раз при смене в запросах этого идентификатора (project_id) происходит магия — всё тестовое превращается в настоящее. Поскольку и адреса для приёма запросов, и наборы параметров в тестовой и рабочей средах идентичны, важно не путать идентификаторы проектов и обращаться с ними должным образом. По умолчанию создаётся один тестовый проект, но при необходимости можно запросить у технической поддержки дополнительные. Также стоит учитывать, что в тестовой среде ограничено количество платёжных методов и сценариев работы. Подробности можно найти в соответствующих разделах о тестировании при прямом использовании платёжных карт (Тестовые карты) и при работе с альтернативными платёжными методами (например, тестирование Google Pay). Все тестовые платежи, как и настоящие, учитываются в платформе, и информация о них отображается в интерфейсе Dashboard, а используемые при тестировании реквизиты платёжных инструментов обрабатываются и защищаются, как и реальные, но никаких реальных списаний средств при этом не выполняется. Поэтому при тестировании можно получать полноценное представление о работе с платежами и не бояться использовать разные данные, в том числе данные реальных платёжных карт, кошельков и других инструментов. И да, что же такое среда в каждом из этих случаев? Это совокупность внутренних программных компонентов платформы, которые в одном случае сконфигурированы для эмулирования процессов проведения платежей, а в другом — для их реального проведения. Вот и всё :) Рис. 3. Куда отправлять запросы? Платёжная платформа ecommpay устроена таким образом, что для каждого из её интерфейсов используется свой базовый адрес. Это важно учитывать в тех случаях, когда, например, для одних действий используется Payment Page, а для других — Gate.Так, для формирования токена через Payment Page и проведения выплаты по этому токену через Gate потребуются два запроса на два разных адреса: https://paymentpage.ecommpay.com и https://api.ecommpay.com. А для получения через Data API информации о балансе средств после проведения этой выплаты — запрос на третий адрес: https://data.ecommpay.com/v1. Такое изобилие адресов, конечно, может вызвать путаницу, но всё-таки мы верим, что оно вполне поддаётся пересчёту и осмыслению. Информация о базовых адресах, структурах запросов и прочих особенностях каждого из интерфейсов нашей платформы представлена в описании работы с этими интерфейсами, а полный список адресов для программных и пользовательских действий выглядит следующим образом: https://api.ecommpay.com для взаимодействия через Gate. Например, адрес для запроса на получение статуса платежа выглядит как https://api.ecommpay.com/v2/payment/status. Подробная информация о работе с запросами к Gate API представлена в разделе Формат запроса. https://paymentpage.ecommpay.com для взаимодействия через Payment Page. Например, GET-запрос на проведение платежа выглядит как GET /payment?payment_currency=EUR&project_id=42&payment_amount=1000&... HTTP/1.1 Host: https://paymentpage.ecommpay.com. Подробная информация о работе с запросами к Payment Page API представлена в разделе Формат запроса. https://data.ecommpay.com/v1 для взаимодействия через Data API. Например, адрес для запроса на получение балансов выглядит как https://data.ecommpay.com/v1/balance/get. Подробная информация о работе с запросами к Data API представлена в разделе Использование Data API для Dashboard. dashboard.ecommpay.com для доступа сотрудников мерчантов к веб-интерфейсу Dashboard. Рис. 4. В чём различия между платежом и операцией? Платёж в контексте платформы — некоторая цельная история одного расчёта между мерчантом и пользователем. При этом в рамках одного платежа может происходить как однократное движение денежных средств (от пользователя к мерчанту при оплате или в обратную сторону при выплате), так и неоднократное (например, при оплате с последующим возвратом или при серии списаний в рамках одной оплаты). Платёж считается завершённым, когда завершены расчёты между мерчантом и пользователем в рамках оказания соответствующей услуги (и соответствующей исходной заявки мерчанта на проведение платежа). И, как и в жизни, может менять конечное состояние: например, оплата может быть успешно проведённой (success), а спустя некоторое время — частично возвращённой (partially refunded). Операция в контексте платформы — это однократное действие над денежными средствами в рамках проведения платежа. Это может быть, в частности, блокировка средств для их последующего списания, само списание, возврат или выплата. Для проведения одного платежа, с учётом его специфики, могут требоваться как одна, так и множество операций, но в любом случае такое разделение помогает контролировать расчёты на уровне цельных историй-платежей и конкретных действий-операций. Для каждого платежа в платформе используется его идентификатор (payment_id), который задаётся со стороны мерчанта, передаётся в запросах в платёжную платформу и однозначно идентифицирует платёж в рамках проекта. Такие идентификаторы могут состоять из цифр, букв латинского алфавита и других символов в кодировке UTF-8 и не должны превышать 255 знаков: например, payment-123 или cosmoshop.sale_456. При получении корректного запроса в платформе регистрируется платёж и инициируется выполнение операции по этому платежу. Каждой операции в платформе присваивается идентификатор (operation_id), уникальный в рамках платформы. Эти идентификаторы передаются в оповещениях и отображаются в интерфейсе Dashboard. Также следует учитывать, что у платежа и операции могут отличаться статусы, например у платежа со статусом refunded операция возврата будет иметь статус success. Подробнее о различиях и особенностях этих понятий можно почитать в разделе Модель проведения платежей. Рис. 5. В чём различия между оплатой, возвратом и выплатой? Давайте уточним: Оплата — это платёж с переводом денег от пользователя к мерчанту. Оплатой может быть покупка товаров и услуг, внесение предоплаты за бронирование, платёж по подписке и так далее. И оплаты могут быть как разовыми, так и повторяющимися. А ещё по ним могут выполняться возвраты. Возврат — это операция возвращения от мерчанта к пользователю денег по проведённой оплате. Возвратом может быть, например, отмена бронирования или возвращение товара. И возвраты могут быть на всю сумму оплаты (полными) или на часть суммы (частичными). Выплата — это платёж с переводом денег от мерчанта к пользователю. Выплатой может быть получение пользователем выигрыша, бонуса или компенсации расходов и так далее. Проведение оплат возможно через любой из доступных в платёжной платформе интерфейсов. Выплаты и возвраты в платёжной платформе осуществляются через Gate API и Dashboard. Однако следует учитывать, что для альтернативных платёжных методов могут поддерживаться не все эти возможности, в то время как для карточных все они поддерживаются в полной мере. Актуальную информацию о работе с каждым из методов можно получать в разделе с его описанием. Рис. 6. В чём различия между оплатами в одну и две стадии? Если кратко, то отличия в том, насколько быстро списываются деньги и насколько легко и быстро их потом можно полностью или частично вернуть пользователю. Смысл оплаты в одну стадию в том, что деньги списываются без задержек — с той скоростью, с которой это осуществляется на уровне платёжных систем. Это удобно для оплаты товаров и фактически оказанных услуг, когда сумма оплаты уже определена и не подлежит изменению. Если же после проведения такой оплаты надо вернуть деньги пользователю, для этого требуется выполнить полный или частичный возврат средств. Оплаты в одну стадию поддерживаются при работе с разными платёжными методами и применяются в том числе для погашения кредитов и займов в микрофинансовых организациях. Подробная информация о проведении этих оплат представлена в разделе Оплата в одну стадию. Смысл оплаты в две стадии в том, что деньги сначала блокируются и позднее, при подтверждении, списываются или возвращаются пользователю — с учётом того, какой оказывается итоговая сумма оказанных услуг. Это удобно при разных видах бронирования и аренды, сервисов с предоплатой и страховыми взносами и так далее. Списание заблокированных средств в таких случаях может выполняться по подтверждающему запросу мерчанта или по истечению заданного времени. Если же необходимо вернуть средства пользователю, то до списания это можно сделать через отмену блокировки, а после списания — через возврат, как и в случаях с оплатами в одну стадию. Оплаты в две стадии в настоящее время поддерживаются только при работе с платёжными картами. Подробная информация об их проведении представлена в разделе Оплата в две стадии. При выборе варианта, наиболее подходящего для конкретного вида бизнеса в конкретных регионах, всегда можно обращаться за консультациями к курирующему менеджеру ecommpay. Рис. 7. В чём различия между платёжными методами? Платёжные методы в платформе ecommpay — это способы проведения платежей, которые характеризуются поддерживаемыми операциями, валютами, платёжными инструментами и пользовательскими сценариями в доступных регионах для конкретных платёжных систем. Так, оплаты индонезийскими рупиями через системы интернет-банкинга Индонезии представляют собой один метод, а оплаты через электронные кошельки в той же валюте — другой. И такие отличия, специфичные для разных регионов и видов бизнеса, делают актуальными множество платёжных методов в платёжной платформе. Для уточнения различий между конкретными методами и выбора методов, наиболее подходящих для вида бизнеса мерчанта, следует обращаться к курирующему менеджеру ecommpay.