Для магазина на три страны мало правильно расставить hreflang — это решает только язык, а не разную цену, валюту и сроки доставки. Беларусь, Россия и Казахстан в одном таможенном пространстве ЕАЭС, но это не значит «один магазин без изменений». Разбираю структуру URL, Offer-разметку с priceCurrency, доставку и платёжки по странам — и свою ошибку с мебельным магазином, который год продавал в РФ с ценником и сроками от Минска.
Этот вопрос задают почти всегда одинаково: магазин уже работает на одну страну, и владелец хочет «докинуть Россию» или «попробовать Казахстан». Отвечаю одинаково: технически добавить вторую страну — вечер работы. Сделать, чтобы она не слилась в ту же выдачу и не путала покупателя ценами из чужого прайса — отдельный проект, который большинство делает спустя рукава.
Один домен или три: что реально выбирают
Вариантов на практике три, и у каждого свой набор граблей.
- Один .by-домен с подпапками
/ru/,/kz/— дешевле поддерживать, вся SEO-масса на одном домене, но нужна аккуратная геолокация в hreflang, иначе Google путает, какую версию показывать пользователю из Москвы. - Три ccTLD-домена (.by, .ru, .kz отдельно) — чище для локального SEO, у каждого домена своя репутация в Яндексе по региону, но втрое больше работы на техничку, контент и ссылки — SEO-бюджет не складывается, а умножается.
- Поддомены
ru.site.by,kz.site.by— промежуточный вариант, Google и Яндекс трактуют их как частично самостоятельные, но слабее ccTLD по географическому сигналу.
Для 90% магазинов среднего размера я рекомендую первый вариант — подпапки. Три отдельных домена оправданы только если у тебя реально разный ассортимент и разные юрлица в каждой стране, а не один склад с перепиской цен.
Технику разметки языка я разбирал отдельно в статье про hreflang для .by/.ru/.kz — здесь не повторяюсь, но важное уточнение именно для магазинов: hreflang решает вопрос «какой язык», а не «какая цена». Это разные задачи, и именно вторую все забывают.
Цена и валюта — где начинается настоящая работа
В Beларуси считают в BYN, в России — в RUB, в Казахстане — в KZT. Это не мелочь для перевода, это структурная штука: разметка Product/Offer должна явно указывать priceCurrency для каждой региональной версии, иначе в выдаче может показаться цена в чужой валюте без пояснения — а это прямой путь к отказам прямо с карточки Google.
| Регион | Валюта в Offer | Типичная ошибка |
|---|---|---|
| Беларусь | BYN | Оставляют BYN на /ru/-версии «пока не поменяем» — висит годами |
| Россия | RUB | Курсовой пересчёт делают раз в квартал вручную, товар то дороже, то дешевле рынка |
| Казахстан | KZT | Цену не переводят в тенге вообще, показывают в USD «для простоты» — отваливает локальных покупателей |
Отдельно: не делай geo-IP-подмену цены на одном и том же URL без отдельной страницы под регион. Если Googlebot из США видит одну цену, а живой человек из Минска — другую на том же адресе, это формально попадает под cloaking-риски, даже если ты делал это не со злым умыслом, а просто «чтобы упростить фронтенд». Разные цены — разные URL. Точка.
Доставка внутри ЕАЭС — не таможня, но и не «всё одинаково»
Беларусь, Россия и Казахстан — страны Евразийского экономического союза, а значит для большинства товаров между ними нет таможенного оформления и пошлин при трансграничной торговле внутри союза. Это реально снимает половину головной боли, которая есть у магазинов, продающих, скажем, в ЕС. Но «нет таможни» не означает «доставка одинаковая».
| Фактор | BY → RU | BY → KZ |
|---|---|---|
| Срок | обычно 3-7 дней по крупным городам | 5-12 дней, сильно зависит от региона РФ-транзита |
| Перевозчик | Белпочта/СДЭК/Boxberry чаще остальных | Казпочта + стыковка с российскими сетями |
| Стоимость | обычно ниже из-за плотного трафика маршрутов | выше за счёт меньшего объёма перевозок и расстояния |
Моя ошибка: доставка «по умолчанию» для чужой страны
Вёл в 2024-2025 мебельный интернет-магазин, который открыл продажи в России на той же витрине, что для Беларуси. Страница «Доставка и оплата» физически не поменялась — те же сроки «2-4 дня», та же стоимость, рассчитанная под логистику внутри Минской области. Магазин почти год получал заказы из регионов РФ с реальным сроком доставки 10-14 дней, а обещал клиенту 2-4. Точную долю отказов именно из-за сроков без отдельного A/B-теста назвать не могу — не буду придумывать цифру, которой не измерял. Но факт прост: после того как переписали страницу доставки под честные вилки по регионам, число отмен заказов на этапе «уже оплатил, но передумал ждать» заметно упало.
Урок простой: страница доставки — не «юридическая формальность», которую один раз написали и забыли. Для каждого региона она должна быть отдельной, с честными сроками, а не скопированной с главного рынка.
Платёжные системы — ещё один региональный слой
В Беларуси привычны Белкарт и местный эквайринг, в России — карты МИР и ЮMoney, в Казахстане Kaspi — буквально бытовая привычка платить, без которой доверие к магазину резко падает. Если на казахстанской версии сайта нет Kaspi Pay, часть покупателей просто закроет вкладку на этапе оплаты, даже если им в целом понравился товар и цена.
SEO здесь работает не прямо, а через поведенческие факторы: высокий отказ на странице оплаты — сигнал, который и Яндекс, и Google читают как «страница не отвечает интенту пользователя», и это тянет позиции карточки вниз со временем. Платёжка — часть технического SEO не меньше, чем скорость загрузки.
Структура URL: когда дублировать карточки, а когда нет
Задаёшь себе один вопрос: у товара в разных странах разная цена, доступность или описание? Если да — отдельный URL под регион с canonical на себя, а не на «основную» версию. Если ассортимент идентичен и разница только в языке интерфейса — достаточно одной карточки с hreflang-альтернативами, плюс переключатель региона как часть UX, не как причина для нового URL.
Частый косяк — делают JS-переключатель региона, который меняет цену на лету без смены URL. Для пользователя удобно, для поисковика — дубль с «плавающей» ценой внутри одного адреса, который Google индексирует один раз и не понимает, какую версию запоминать. Разбирал похожую логику с фильтрами каталога в статье про SEO-фильтры интернет-магазина — принцип тот же: контент меняется → адрес должен меняться.
Чеклист перед запуском второй страны
| Пункт | Статус ОК |
|---|---|
| Отдельный URL (подпапка/ccTLD/поддомен) под регион | Выбран один раз, не меняется на лету |
| priceCurrency в Offer-разметке соответствует региону | Проверено на 5-10 карточках выборочно |
| hreflang прописан между всеми региональными версиями | Валидация в GSC без ошибок |
| Страница доставки написана под реальные сроки региона | Не скопирована с основного рынка |
| Платёжные системы региона подключены и видны на чекауте | Kaspi для KZ, МИР/ЮMoney для RU, Белкарт для BY |
| Нет geo-IP подмены цены на одном URL | Разные цены только на разных адресах |
Магазин, который выходит на три рынка, выходит на три разных набора ожиданий покупателя. Поиск это прощает редко — а вот покупатель, который получил честную страницу доставки и привычный способ платить, возвращается. Смотрел уже, какая валюта реально зашита в твоей Offer-разметке по каждой стране, или она до сих пор одна на все три?
Если магазин растёт из одной страны в три одновременно — до кучи стоит свериться с чеклистом из статьи про маркетплейсы или свой магазин: экономика канала в новой стране часто выглядит иначе, чем на домашнем рынке.