Получение данных, используя XML
Данная технология является устаревшей. Ее дальнейшее развитие не планируется. Рекомендуем использовать API.
Получение официального курса белорусского рубля по отношению к иностранным валютам на определенную дату,
- устанавливаемого ежедневно:
https://www.nbrb.by/services/xmlexrates.aspx?ondate=01/31/2011 - устанавливаемого ежемесячно:
https://www.nbrb.by/services/xmlexrates.aspx?ondate=01/01/2011&period=1
Параметр ondate – дата в формате месяц/день/год, на которую запрашивается официальный курс. Если параметр ondate не задан, то Вы получите официальный курс на последнюю дату установления.
В первом случае возвращается XML-документ, состоящий из элемента DailyExRates, во втором (т.е. когда period=1) – MonthlyExRates. Оба элемента имеют одинаковую структуру: содержат атрибут Date, со значением, равным дате, на которую получен официальный курс (для официального курса, устанавливаемого ежемесячно, – дату установления курса, действовавшего на запрашиваемую дату), и вложенные элементы Currency.
Каждый элемент Currency содержит атрибут ID (внутренний код валюты – целое число) и вложенные элементы:
- NumCode – цифровой код
- CharCode – буквенный код
- Scale – количество единиц иностранной валюты
- Name – наименование валюты
- Rate – курс.
Если указать параметр mode=1, то элементы Currency вместо элементов Name будут содержать элементы:
- QuotName – наименование валюты, содержащее номинал.
Полный перечень иностранных валют, к которым официальный курс белорусского рубля
- устанавливается ежедневно:
https://www.nbrb.by/services/xmlexratesref.aspx - устанавливается ежемесячно:
https://www.nbrb.by/services/xmlexratesref.aspx?period=1
Возвращаемый XML-документ состоит из элемента DailyExRates (MonthlyExRates, если period=1) и вложенных элементов Currency. Каждый элемент Currency содержит атрибут ID (внутренний код валюты – целое число) и вложенные элементы:
- NumCode – цифровой код
- CharCode – буквенный код
- Scale – количество единиц иностранной валюты
- Name – наименование валюты
- EnglishName – наименование на английском языке
- ParentCode – этот код используется для связи, при изменениях кодов или названий одной и той же валюты.
Для получения расширенной информации о валютах необходимо также передать параметр ext=2. В этом случае Currency будут состоять из элементов:
- NumCode – цифровой код
- CharCode – буквенный код
- Scale – количество единиц иностранной валюты
- QuotName – наименование валюты, содержащее номинал
- QuotEnglishName – наименование на английском языке, содержащее номинал
- Name – наименование валюты
- EnglishName – наименование на английском языке
- DateStart – дата включения валюты в перечень валют, к которым Национальным банком устанавливается официальный курс белорусского рубля
- DateEnd – дата исключения валюты из перечня валют, к которым Национальным банком устанавливается официальный курс белорусского рубля (если не задана, то текущий элемент Currency может не содержать данный элемент)
- ParentCode – этот код используется для связи, при изменениях кодов или названий одной и той же валюты.
- QuotBelName – наименование на белорусском языке, содержащее номинал
- BelName – наименование валюты на белорусском языке
- NameMulti – наименование валюты во множественом числе
- NameEngMulti – наименование валюты на английском языке во множественом числе
- NameBelMulti – наименование валюты на белорусском языке во множественом числе
Получение динамики официального курса белорусского рубля по отношению к заданной иностранной валюте, устанавливаемого Национальным банком Республики Беларусь (не более чем за 365 дней):
Параметры:
- сurId – внутренний код валюты (целое число)
- fromDate – дата начала запрашиваемого периода в формате месяц/день/год
- toDate – дата окончания запрашиваемого периода в формате месяц/день/год.
Возвращается XML-документ состоящий из элемента Currency со следующими атрибутами:
- Id – внутренний код валюты (целое число)
- fromDate – первая дата внутри запрашиваемого периода, на которую установлен курс белорусского рубля к запрашиваемой валюте
- toDate – последняя дата внутри запрашиваемого периода, на которую установлен курс белорусского рубля к запрашиваемой валюте
и вложенных элементов Record. Каждый элемент Record содержит атрибут Date – дата установления курса и вложенный элемент Rate – официальный курс.
Получение цен на драгоценные металлы за период (не более чем за 31 день):
Параметры:
- metalId – внутренний код драгоценного металла (целое число), если не задан, то возвращаются цены на все драгоценные металлы
- fromDate – дата начала запрашиваемого периода в формате месяц/день/год
- toDate – дата окончания запрашиваемого периода в формате месяц/день/год.
Если параметры fromDate и toDate не заданы, то будут возращены цены на драгоценные металлы на последнюю дату установления.
Возвращаемый XML-документ состоит из элемента Metals со следующими атрибутами:
- fromDate – первая дата внутри запрашиваемого периода, на которую установлены цены на драгоценные металлы,
- toDate – последняя дата внутри запрашиваемого периода, на которую установлены цены на драгоценные металлы
и вложенных элементов AccountPrice.
Элементы AccountPrice содержат следующие атрибуты:
- Date – дата установления цены
- MetalId – внутренний код драгоценного металла (целое число)
и вложенные элементы Price – учетная цена.
Получение перечня драгоценных металлов, на которые Национальный банк устанавливает цены:
Возвращаемый XML-документ состоит из элемента Metals и вложенных элементов Metal, содержащих атрибут Id (внутренний код драгоценного металла, целое число), и вложенных элементов:
- Name – наименование драгоценного металла
- NameEng – наименование на английском языке
- NameBel – наименование на белорусском языке.
Получение цен на драгоценные металлы в виде мерных слитков на дату:
Параметр ondate – дата в формате месяц/день/год, на которую запрашиваются цены. Если параметр ondate не задан, то Вы получите цены на последнюю дату установления.
Возвращаемый XML-документ состоит из элемента Ingots с атрибутом onDate – дата установления цены и вложенных элементов IngotsPrices.
Элементы IngotsPrices содержат следующие атрибуты:
- MetalId – внутренний код драгоценного металла (целое число)
- Nominal – Номинал, грамм (целое число)
и вложенные элементы:
- NoCertificateDollars – цена покупки без сертификата качества (в долларах США)*
- NoCertificateRubles – цена покупки без сертификата качества (в белорусских рублях)*
- CertificateDollars – цена покупки с сертификатом качества (в долларах США)*
- CertificateRubles – цена покупки с сертификатом качества (в белорусских рублях)*
- BanksDollars – цена продажи банкам (в долларах США)*
- BanksRubles – цена продажи банкам (в белорусских рублях)*
- EntitiesDollars – цена продажи юридическим и физическим лицам (за исключением банков, в долларах США)*
- EntitiesRubles – цена продажи юридическим и физическим лицам (за исключением банков, в белорусских рублях)*
* Если цена на запрашиваемую дату, соответствующая элементу, не установлена, то IngotsPrices не будут содержать данный элемент.
Получение ставки рефинансирования на дату:
Параметр ondate – дата в формате месяц/день/год, на которую запрашивается ставка. Если параметр ondate не задан, то Вы получите динамику ставки рефинансирования.
Возвращаемый XML-документ состоит из элемента RefRate и вложенных элементов Item.
Каждый элемент Item содержит вложенные элементы:
- onDate – дата установления ставки
- Value – значение ставки.
Пример получения данных с использованием XML vbaxml.xls на VBA (рабочая книга Microsoft Excel 2003) - обновлен 16.12.2020.