Конвертация валют

Общая информация

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

Допустим, пользователь выбирает рублёвую карту для перевода средств в евро на счёт мерчанта, открытый в фунтах стерлингов. В таком случае сумма платежа последовательно конвертируется из рублей в евро и из евро в фунты. Первый из этих пересчётов выполняется на стороне эмитента или альтернативной платёжной системы (и не контролируется со стороны ECommPay), а второй — на стороне платёжной платформы ECommPay.

Мерчант также может проводить конвертацию на своей стороне и в запросах на проведение операций отправлять сразу сконвертированную сумму в нужной валюте.

Для платежей, проводимых через Gate, в платёжной платформе поддерживается конвертация с выбором валюты мерчантом — без предоставления пользователю возможности выбора валюты платежа. Такая конвертация поддерживается при проведении выплат, а также разовых оплат с использованием любых платёжных методов. Для конвертации используются валютные курсы одного из следующих источников:

Курсы валют указанных банков обновляются один раз в день.

Для каждого проекта используется один базовый источник курсов валют и дополнительные — на случаи, когда необходимый курс не предоставляется со стороны базового источника. Базовый источник выбирается на стороне ECommPay.

Информацию о конвертации, выполненной на стороне платёжной платформы, можно получать в оповещениях о результатах платежей, в интерфейсе Dashboard (Old Dashboard) и в регулярных отчётах, отправляемых на заданные адреса электронной почты. Эту информацию рекомендуется учитывать при сверках с ECommPay, потому что учёт операций по счёту мерчанта со стороны эмитента или альтернативной платёжной системы, как правило, ведётся в валюте этого счёта.

Также следует учитывать, что сумма операции и сумма фактически списанная со счёта пользователя могут не совпадать, так как на дату инициирования платежа и дату фактического списания средств курсы конвертации как правило отличаются. По факту компенсации в таких случаях пользователю следует обращаться к эмитенту карты или организации, где открыт счёт.

Чтобы узнать, какие платёжные методы в какой валюте поддерживают конвертацию, следует обращаться к описанию этого метода или к курирующему менеджеру ECommPay.

Подключение

Для подключения конвертации на стороне веб-сервиса выполнять какие-либо действия не требуется.

Использование

Для использования этого варианта конвертации со стороны веб-сервиса не требуется действий, отличных от стандартных при проведении оплаты.

Информация о выполненной конвертации передаётся в оповещениях о результатах платежей — в объекте operation, где в объекте sum_initial указываются исходные сумма и валюта, а в объекте sum_converted — конечные сумма и валюта с учётом конвертации. Эти объекты входят в стандартную структуру оповещения, описание которой представлено в разделе Оповещения.

В следующем примере в оповещении содержится информация о том, что при проведении оплаты в размере 100 USD выполнена конвертация в 519,41 PHP.

Рис.: Пример данных из оповещения о результатах оплаты с конвертацией

{ 
  "project_id":42,
  "payment":{ 
    "id":"15dd47055381e8375e7b2d0cb16f",
    "type":"purchase",
    "status":"success",
    "date":"2019-09-17T11:50:29+0000",
    "method":"dragonpay",
    "sum":{ 
      "amount":10000, // Сумма, переданная в запросе
      "currency":"USD" // Код исходной валюты, переданный в запросе
    },
    "description":""
  },
  "operation":{ 
    "id":200004157,
    "type":"sale",
    "status":"success",
    "date":"2019-09-17T11:50:29+0000",
    "created_date":"2019-09-16T13:17:31+0000",
    "request_id":"622d6f7f9e6bce298676b38e45",
    "sum_initial":{ 
      "amount":10000, // Сумма, переданная в запросе
      "currency":"USD" // Код исходной валюты, переданный в запросе
    },
    "sum_converted":{ 
      "amount":519410, // Сумма с учётом конвертации
      "currency":"PHP" // Код конечной валюты
    },
    "provider":{ 
      "id":1165,
      "payment_id":"DY3TU78",
      "date":"2019-09-16T21:17:39+0000",
      "auth_code":"",
      "endpoint_id":"BPI"
    },
    "code":"0",
    "message":"Success"
  },
  "signature":"MJv7KNMpfogAxwRIL9tVftZ1ZZ5D/aZAeb0VMdeR+CqGrNxYyilUwSm...=="
}