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

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

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

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

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

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

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

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

Чтобы узнать, какие платёжные методы в какой валюте поддерживают конвертацию, следует обращаться к описанию этого метода или к курирующему менеджеру 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...=="
}

Конвертация с выбором валюты пользователем

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

При оплатах через Payment Page с использованием платёжных карт поддерживается возможность выбора валюты платежа пользователем. К валютам, доступным для такого выбора, относятся евро (EUR), доллары США (USD), фунты стерлингов (GBP) и российские рубли (RUB). При этом для каждого проекта настраивается свой перечень, который может включать в себя как все перечисленные валюты, так и часть из них.

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

Перечень валют для выбора пользователем отображается на Payment Page, только если в запросе на оплату передан код одной из валют, входящих в этот перечень. В таком случае сумма платежа отображается в валюте, указанной в запросе. Например, если в запросе указана валюта USD, то в качестве исходной валюты платежа выбирается доллар США и сумма выводится в долларах.

Рис.: Страница оплаты с блоком выбора валюты



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

Например, при оплате в размере 95,00 USD и выборе пользователем валюты евро, в платёжной форме отображается курс евро к доллару США и сумма в евро — допустим, 87,26 EUR.

Рис.: Страница оплаты с блоком выбора валюты и с курсом валют



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

  • сумма оплаты в выбранной пользователем валюте — 87,26 EUR;
  • сумма оплаты в исходной валюте — 95,00 USD;
  • курс евро к доллару США.

Эта же информация отображается на платёжной форме и при отклонении оплаты с конвертацией.

Рис.: Страница результата оплаты с информацией о конвертации



Подключение

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

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

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



Рис.: Схема выполнения конвертации с выбором валюты пользователем

  1. От Payment Page к платёжной платформе направляется запрос на получение информации о доступных валютах, а также об актуальных курсах и суммах с учётом этих курсов.
  2. На стороне платёжной платформы выполняется обработка запроса.
  3. От платёжной платформы к Payment Page передаётся информация о доступных валютах, актуальных курсах и суммах с учётом этих курсов.
  4. На Payment Page отображаются поля для ввода реквизитов платёжной карты, список доступных валют и информация о конвертации (курс и конечная сумма в выбранной валюте).
  5. Пользователь выбирает валюту и указывает реквизиты платёжной карты.
  6. От Payment Page к платёжной платформе направляется запрос на оплату с учётом валюты, выбранной пользователем.

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

Также, при необходимости, в объекте mcs может передаваться информация о курсе конвертации:

  • currency_pair — коды валют, составляющих валютную пару, без каких-либо разделяющих символов: косой черты, двоеточия, пробела или чего-то другого (например, EURUSD);
  • rate — курс конвертации для указанной пары (например, 1.08876).

Чтобы получать эту информацию в оповещениях, необходимо обратиться в службу технической поддержки — support@ecommpay.com.

В следующем примере в оповещении содержится информация о том, что при проведении оплаты в размере 95 USD выполнена конвертация в 87,26 EUR по курсу 1.08876 евро к доллару.

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

{ 
  "project_id":42,
  "payment":{
    "id":"10005",
    "type":"purchase",
    "status":"success",
    "date":"2019-10-16T11:52:51+0000",
    "method":"card",
    "sum":{ 
      "amount":9500, // Сумма, переданная в запросе
      "currency":"USD" // Код исходной валюты, переданный в запросе
    },
    "description":""
  },
  "account":{ 
    "number":"555555******4443",
    "type":"mastercard",
    "card_holder":"JUDY DOE",
    "expiry_month":"03",
    "expiry_year":"2024"
  },
  "customer":{ 
    "id":"12"
  },
  "operation":{ 
    "id":26900008841,
    "type":"sale",
    "status":"success",
    "date":"2019-10-16T11:52:51+0000",
    "created_date":"2019-10-16T11:52:40+0000",
    "request_id":"9e713d016844bf349ea4e26938",
    "sum_initial":{ 
      "amount":9500, // Сумма, переданная в запросе
      "currency":"USD" // Код исходной валюты, переданный в запросе
    },
    "sum_converted":{ 
      "amount":8726, // Сумма с учётом конвертации
      "currency":"EUR" // Код конечной валюты, выбранный пользователем
    },
    "mcs":{ 
      "currency_pair": "EURUSD", // Коды валют, составляющих валютную пару
      "rate":"1.08876" // Курс евро к доллару США
    },
    "code":"0",
    "message":"Success",
    "eci":"02",
    "provider":{ 
      "id":11,
      "payment_id":"50313",
      "auth_code":"",
      "endpoint_id":11,
      "date":"2019-10-16T11:52:50+0000"
    }
  },
  "signature":"MJv7KNMpfogAxwRIL9tVftZ1ZZ5D/aZAeb0VMdeR+CqGrNxYyilUwSm...=="
}