Быстрый ввод и проверка
почтовых адресов
на вашем сайте
ФИАС в облаке — актуальная база всех почтовых адресов России. Легко интегрируется с вашим сайтом, помогает устранить ошибки при написании адресов и делает этот процесс быстрым и удобным.
Подключить бесплатно- Код КЛАДР
- Код ФИАС
- Код ОКАТО
- Код ОКТМО
- Код налоговой
- Подпись
- Подпись коротко
- Тип объекта
- Кадастровый номер
<div class="wrapp_ex">
<div class="hold_ex" id="form_with_map">
<div class="form_ex js-form-address-map" >
<div class="input_hold">
<div class="label">Индекс</div>
<div class="input">
<div class="input_text" style="display:none">
<span id="map_zip"></span>
<small>определен автоматически</small>
</div>
</div>
</div>
<div class="input_hold">
<label class="label">Область</label>
<div class="input">
<input type="text" name="region">
</div>
</div>
<div class="input_hold">
<label class="label">Регион / район</label>
<div class="input">
<input type="text" name="district">
</div>
</div>
<div class="input_hold">
<label class="label">Город / н. п.</label>
<div class="input">
<input type="text" name="city" value="">
</div>
</div>
<div class="input_hold">
<label class="label">Улица</label>
<div class="input">
<input type="text" name="street" value="">
</div>
</div>
<div class="input_hold">
<label class="label">Дом</label>
<div class="input input_small">
<input type="text" name="building" value="">
</div>
</div>
<div class="input_hold">
<label class="label"></label>
<div class="input input_small">
<a href="#" id="js-form-address-map-clear" style="display: none">Сбросить форму</a>
</div>
</div>
</div>
<div class="more_info">
<div class="morinfo_title">
Дополнительная информация:
</div>
<dl id="address" class="more_info_oneline"></dl>
<dl>
<dt>Код КЛАДР</dt>
<dd id="kladrId" class="empty-field-filler"> </dd>
</dl>
<dl>
<dt>Код ФИАС</dt>
<dd id="guid" class="empty-field-filler"> </dd>
</dl>
<dl>
<dt>Код ОКАТО</dt>
<dd id="okatoId" class="empty-field-filler"> </dd>
</dl>
<dl>
<dt>Код ОКТМО</dt>
<dd id="oktmo" class="empty-field-filler"> </dd>
</dl>
<dl>
<dt>Код налоговой</dt>
<dd id="ifns" class="empty-field-filler"> </dd>
</dl>
<dl>
<dt>Подпись</dt>
<dd id="typeId" class="empty-field-filler"> </dd>
</dl>
<dl>
<dt>Подпись коротко</dt>
<dd id="typeShortId" class="empty-field-filler"> </dd>
</dl>
<dl>
<dt>Тип объекта</dt>
<dd id="contentTypeId" class="empty-field-filler"> </dd>
</dl>
</dl>
<dl>
<dt>Кадастровый номер</dt>
<dd id="cadnum" class="empty-field-filler"> </dd>
</dl>
</div>
</div>
<div id="map" class="map_ex"></div>
</div>
/* Устанавливаем свой шрифт для выпадающего списка*/
#kladr_autocomplete a,
#kladr_autocomplete strong{
font-family: MuseoSansCyrl, Arial, Helvetica, sans-serif;
font-size: 15px;
}
#kladr_autocomplete small {
font-family: MuseoSansCyrl, Arial, Helvetica, sans-serif;
font-size: 13px;
}
/* Добавляем скругления и тень у выпадающего списка*/
#kladr_autocomplete ul {
border-radius: 0 0 5px 5px;
border: 1px solid #ded7f9;
overflow: hidden;
background: #fff;
-webkit-box-shadow: 0 2px 10px 0 rgba(86, 62, 142, 0.1);
box-shadow: 0 2px 10px 0 rgba(86, 62, 142, 0.1);
z-index: 1;
}
/* Прописываем стили для тултипа с сообщением об ошибке*/
.tooltip {
position: absolute;
top: 16px;
left: 360px;
color: #b94a48;
padding: 8px 10px;
border-radius: 5px;
border: 1px solid #eed3d7;
background-color: #f2dede;
opacity: 0.8;
font-size: 14px;
z-index: 100000;
}
(function () {
var $container = $(document.getElementById('form_with_map'));
var $region = $container.find('[name="region"]'),
$district = $container.find('[name="district"]'),
$city = $container.find('[name="city"]'),
$street = $container.find('[name="street"]'),
$building = $container.find('[name="building"]'),
$address = $container.find('#address'),
$zip = $container.find('#map_zip'),
$kladrId = $container.find('#kladrId'),
$okatoId = $container.find('#okatoId'),
$typeId = $container.find('#typeId'),
$typeShortId = $container.find('#typeShortId'),
$contentTypeId = $container.find('#contentTypeId');
var map = null,
map_created = false;
$()
.add($region)
.add($district)
.add($city)
.add($street)
.add($building)
.fias({
parentInput: $container.find('.js-form-address-map'),
verify: true,
change: function (obj) {
if (obj) {
setLabel($(this), obj.type);
$kladrId.text(obj.id ? obj.id : '');
$okatoId.text(obj.okato ? obj.okato : '');
$typeId.text(obj.type ? obj.type : '');
$typeShortId.text(obj.typeShort ? obj.typeShort : '');
$contentTypeId.text(obj.contentType ? obj.contentType : '');
if (obj.parents) {
$.fias.setValues(obj.parents, '.js-form-address-map');
}
}
var $zipWrap = $zip.parent();
if (obj && obj.zip) {
$zip.text(obj.zip);
$zipWrap.show();
}//Обновляем поле zip
else {
$zipWrap.hide();
}
addressUpdate();
mapUpdate();
},
checkBefore: function () {
var $input = $(this);
if (!$.trim($input.val())) {
addressUpdate();
mapUpdate();
return false;
}
}
});
$region.fias('type', $.fias.type.region);
$district.fias('type', $.fias.type.district);
$city.fias('type', $.fias.type.city);
$street.fias('type', $.fias.type.street);
$building.fias('type', $.fias.type.building);
// Включаем получение родительских объектов для населённых пунктов
$district.fias('withParents', true);
$city.fias('withParents', true);
$street.fias('withParents', true);
// Отключаем проверку введённых данных для строений
$building.fias('verify', false);
ymaps.ready(function () {
if (map_created) return;
map_created = true;
map = new ymaps.Map('map', {
center: [55.76, 37.64],
zoom: 12,
controls: []
});
map.controls.add('zoomControl', {
position: {
right: 10,
top: 10
}
});
});
function setLabel($input, text) {
text = text.charAt(0).toUpperCase() + text.substr(1).toLowerCase();
$input.parent().find('label').text(text);
}
function mapUpdate() {
var zoom = 4;
var address = $.fias.getAddress('.js-form-address-map', function (objs) {
var result = '';
$.each(objs, function (i, obj) {
var name = '',
type = '';
if ($.type(obj) === 'object') {
name = obj.name;
type = ' ' + obj.type;
switch (obj.contentType) {
case $.fias.type.region:
zoom = 4;
break;
case $.fias.type.district:
zoom = 7;
break;
case $.fias.type.city:
zoom = 10;
break;
case $.fias.type.street:
zoom = 13;
break;
case $.fias.type.building:
zoom = 16;
break;
}
}
else {
name = obj;
}
if (result) result += ', ';
result += type + name;
});
return result;
});
if (address && map_created) {
var geocode = ymaps.geocode(address);
geocode.then(function (res) {
map.geoObjects.each(function (geoObject) {
map.geoObjects.remove(geoObject);
});
var position = res.geoObjects.get(0).geometry.getCoordinates(),
placemark = new ymaps.Placemark(position, {}, {});
map.geoObjects.add(placemark);
map.setCenter(position, zoom);
});
}
}
function addressUpdate() {
var address = $.fias.getAddress($container.find('.js-form-address-map'));
$address.text(address);
}
})();
<div id="one_string">
<div class="input">
<input type="text" name="address" placeholder="Адрес">
</div>
</div>
/* Устанавливаем свой шрифт для выпадающего списка*/
#kladr_autocomplete a,
#kladr_autocomplete strong{
font-family: MuseoSansCyrl, Arial, Helvetica, sans-serif;
font-size: 15px;
}
#kladr_autocomplete small {
font-family: MuseoSansCyrl, Arial, Helvetica, sans-serif;
font-size: 13px;
}
/* Добавляем скругления и тень у выпадающего списка*/
#kladr_autocomplete ul {
border-radius: 0 0 5px 5px;
border: 1px solid #ded7f9;
overflow: hidden;
background: #fff;
-webkit-box-shadow: 0 2px 10px 0 rgba(86, 62, 142, 0.1);
box-shadow: 0 2px 10px 0 rgba(86, 62, 142, 0.1);
z-index: 1;
}
/* Прописываем стили для тултипа с сообщением об ошибке*/
.tooltip {
position: absolute;
top: 16px;
left: 360px;
color: #b94a48;
padding: 8px 10px;
border-radius: 5px;
border: 1px solid #eed3d7;
background-color: #f2dede;
opacity: 0.8;
font-size: 14px;
z-index: 100000;
}
(function () {
var $container = $(document.getElementById('one_string'));
var $address = $container.find('[name="address"]');
$address.fias({
oneString: true,
});
})();
<div id="address_multiple_fields">
<form class="js-form-address">
<div class="flex">
<div class="half">
<div class="input">
<label>Индекс</label>
<input type="text" name="zip" placeholder="Будет определен автоматически">
</div>
<div class="input">
<label>Область</label>
<input type="text" name="region">
</div>
<div class="input">
<label>Регион / район</label>
<input type="text" name="district">
</div>
</div>
<div class="half">
<div class="input">
<label>Город / населенный пункт</label>
<input type="text" name="city">
</div>
<div class="input">
<label>Улица</label>
<input type="text" name="street">
</div>
<div class="input input_litl">
<label>Дом</label>
<input type="text" name="building">
</div>
</div>
</div>
</form>
</div>
/* Устанавливаем свой шрифт для выпадающего списка*/
#kladr_autocomplete a,
#kladr_autocomplete strong{
font-family: MuseoSansCyrl, Arial, Helvetica, sans-serif;
font-size: 15px;
}
#kladr_autocomplete small {
font-family: MuseoSansCyrl, Arial, Helvetica, sans-serif;
font-size: 13px;
}
/* Добавляем скругления и тень у выпадающего списка*/
#kladr_autocomplete ul {
border-radius: 0 0 5px 5px;
border: 1px solid #ded7f9;
overflow: hidden;
background: #fff;
-webkit-box-shadow: 0 2px 10px 0 rgba(86, 62, 142, 0.1);
box-shadow: 0 2px 10px 0 rgba(86, 62, 142, 0.1);
z-index: 1;
}
/* Прописываем стили для тултипа с сообщением об ошибке*/
.tooltip {
position: absolute;
top: 16px;
left: 360px;
color: #b94a48;
padding: 8px 10px;
border-radius: 5px;
border: 1px solid #eed3d7;
background-color: #f2dede;
opacity: 0.8;
font-size: 14px;
z-index: 100000;
}
// Form example
(function () {
var $container = $(document.getElementById('address_multiple_fields'));
var $tooltip = $('#tooltip');
var $zip = $container.find('[name="zip"]'),
$region = $container.find('[name="region"]'),
$district = $container.find('[name="district"]'),
$city = $container.find('[name="city"]'),
$street = $container.find('[name="street"]'),
$building = $container.find('[name="building"]');
$()
.add($region)
.add($district)
.add($city)
.add($street)
.add($building)
.fias({
parentInput: $container.find('.js-form-address'),
verify: true,
select: function (obj) {
if (obj.zip) $zip.val(obj.zip);//Обновляем поле zip
setLabel($(this), obj.type);
$tooltip.hide();
},
check: function (obj) {
var $input = $(this);
if (obj) {
setLabel($input, obj.type);
$tooltip.hide();
}
else {
showError($input, 'Ошибка');
}
},
checkBefore: function () {
var $input = $(this);
if (!$.trim($input.val())) {
$tooltip.hide();
return false;
}
}
});
$region.fias('type', $.fias.type.region);
$district.fias('type', $.fias.type.district);
$city.fias('type', $.fias.type.city);
$street.fias('type', $.fias.type.street);
$building.fias('type', $.fias.type.building);
$district.fias('withParents', true);
$city.fias('withParents', true);
$street.fias('withParents', true);
// Отключаем проверку введённых данных для строений
$building.fias('verify', false);
// Подключаем плагин для почтового индекса
$zip.fiasZip($container);
function setLabel($input, text) {
text = text.charAt(0).toUpperCase() + text.substr(1).toLowerCase();
$input.parent().find('label').text(text);
}
function showError($input, message) {
$tooltip.find('span').text(message);
var inputOffset = $input.offset(),
inputWidth = $input.outerWidth(),
inputHeight = $input.outerHeight();
var tooltipHeight = $tooltip.outerHeight();
var tooltipWidth = $tooltip.outerWidth();
$tooltip.css({
left: (inputOffset.left + inputWidth - tooltipWidth) + 'px',
top: (inputOffset.top + (inputHeight - tooltipHeight) / 2 - 1) + 'px'
});
$tooltip.fadeIn();
}
})();
ФИАС — единый российский государственный адресный реестр. Создан в 2011 году по распоряжению Правительства РФ. В ФИАС хранятся данные об адресных объектах, расположенных на территории России: субъектах федерации, районах, населенных пунктах, улицах, домах и др.
Чтобы вам не скачивать всю базу и не писать сложные программы, мы сделали простой и удобный сервиc, который позволяет легко подключить к вашему сайту всю базу ФИАС.
Наши преимущества
и курьерских служб, микрофинансирования и сайтов,
где клиенту требуется указать адрес
Это снимает нагрузку с менеджеров, снижает вероятность ошибки и автоматизирует процесс.
Нам доверяют
Выберите тариф
- Нет ограничений на кол-во обращений к API
- В результатах выдачи будет отображаться копирайт
- Отсутствие поддержки
- Бесплатные сервера с задержкой при большом числе запросов
- Нет ограничений на кол-во обращений к API
- Оплата только онлайн
- Выделенные сервера
- Гарантия работы
- Договор оферты
- Нет ограничений на кол-во обращений к API
- Оплата через расчетный счет
- Без сопровождения
сделки
Договор, счет и акт формируются автоматически без возможности редактирования.
Оригиналы отправляем по почте или через электронный документооборот - Выделенные сервера
- Гарантия работы
- 7 дней триал
- Нет ограничений на кол-во обращений к API
- C сопровождением
сделки
Согласуем с вашими юристами все документы. Внесем правки при необходимости.
Оригиналы отправляем курьерской службой - Оплата через расчетный счет
- Выделенные сервера
- Поддержка по емейл и телефону
- 7 дней триал
Напишите нам и мы подготовим для вас предложение