Вопросы и ответы

Запуск проекта - август 2010 года.
Число зарегистрированных доменов - 3109.
Число зарегистрированных пользователей - 3573.
О проекте
Платный доступ
Регистрационный ключ домена
Базы данных
Проблемы при подключении

Это проект одного человека - меня. :) Первая версия была сделана в августе 2010 года "для внутреннего пользования" (интернет-магазин моего друга), вскоре проект был выложен для общего доступа.

Выяснилось, что люди каким-то образом его находят, размещают ссылки, подключают свои интернет-магазины, присылают ценные замечания и т.п. Поэтому в начале 2015 года для упорядочения расчетов появился платный доступ, а в самом конце 2020 года код проекта был переписан на 100% с учетом всего опыта за 10 лет.

Основные особенности проекта postcalc.ru:

  • Максимально возможное количество бесплатных запросов (500 запросов в сутки по московскому времени). Без регистрации можно делать 50 запросов в сутки с одного адреса IP.
  • Все платные тарифы являются безлимитными, то есть клиенты не будут заблокированы при любом наплыве посетителей. Тариф определяется не по максимальному числу запросов в сутки, а по среднему числу запросов в месяц.
  • Тарифы невысокие, от 500 рублей в месяц за безлимит.
  • Расчеты ведутся обращением к Официальному тарификатору Почты России, что гарантирует точность. Если тарификатор по какой-либо причине недоступен, выполняются локальные расчеты - это дает максимально возможную надежность.
  • Отдаются одновременно расчеты по нескольким видам отправлений, при этом скорость расчета остается очень небольшой, порядка 80-100 миллисекунд.
  • Приводится ссылка на официальные документы Почты России и указывается формула расчета.
  • Возможно распределение товара на несколько отправлений.
  • На все вопросы по электронной почте отвечаю лично я.
Секрета нет, просто мой многолетний опыт работы в техподдержке убедил меня, что технические вопросы можно решать только в письменном виде.
Более того, когда человек излагает свои мысли письменно, многие вопросы отпадают сами. В любом случае - если я в Интернете, то отвечу на письмо в течение часа. Если я не в Интернете - все равно на ваш запрос отреагировать не смогу.
Также сообщаю, что в связи с основной работой отвечаю на ваши письма во второй половине дня, после 14-15 часов (хотя иногда удается отвлечься и раньше).
Преимущества по отношению к официальному тарификатору Почты России: более простая интеграция, выдача расчетов сразу по нескольким видам отправлений, возможность распределения товара на несколько отправлений ("дробление"), использование в запросах названий населенных пунктов, бесплатный и открытый веб-клиент и библиотека Postcalc Light, бесплатные открытые базы данных ОПС, населенных пунктов, стран.

Преимущества по отношению к другим проектам: очень большой лимит бесплатных запросов (до 500 в сутки), умеренные тарифы от 500 рублей в месяц, безлимит на всех платных тарифах, максимально удобная отладка, подробная статистика.

Подробнее см. Преимущества.
Данные сентября 2022 года:
  • Число зарегистрированных доменов - более 2700
  • Число зарегистрированных пользователей - более 3100
  • Два сервера (основной и резервный), подключенные в разных дейтацентрах для надежности
  • Средняя загрузка основного сервера - не превышает 10%
  • Среднее время обслуживания запроса по API (от установления соединения до выдачи ответа и разрыва) - 15-20 мс при локальном расчете и около 80-100 мс при опросе тарификатора Почты России
Если число запросов от вашего интернет-проекта регулярно превышает 300-350 запросов в сутки - вам необходим платный доступ.
При первом же превышении бесплатного лимита в 500 запросов ваш ключ будет блокирован и вам в любом случае придется доступ оплатить.
Посмотреть статистику по запросам вы можете в Личном кабинете.
Все планы описаны в разделе Тарифы Условий доступа к Postcalc.RU. Сравнение платного и бесплатного доступа - см. страницу Цены.
Нет. Доступ на всех тарифных планах - безлимитный. Исключение - явный технический сбой или злоупотребление (например, тысячи нетипичных запросов). В этом случае предоставление услуги может быть приостановлено до выяснения причин.

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

То есть: при любом тарифном плане обслуживание вашего интернет-проекта со стороны postcalc.ru будет идти бесперебойно.
Через Личный кабинет и ЮKassa. В этом случае оплата зачисляется автоматически.
Также можно платить по безналу на счет ИП. Для этого пришилите на почту ваши реквизиты, я выставлю счет.
Если вы подключены с учетом запросов по адресу IP (старая схема), то любым способом из описанных на странице Оплата вручную.
Да, безусловно. Я являюсь индивидуальным предпринимателем, заключаю договоры и подписываю акты об оказании услуг. Типовой договор вы можете найти здесь.

Что касается непосредственно обмена документами, то возможны следующие варианты.

Вариант 1. Мы обмениваемся по электронной почте документами в формате MS Word или PDF, в которых стоит факсимиле моей подписи.

Подписание договора происходит по электронной почте. Вы подписываете договор со своей стороны и присылаете его мне в отсканированном виде на электронную почту postcalc@mail.ru. Я ставлю факсимиле своей подписи и возвращаю вам файл с того же адреса электронной почты postcalc@mail.ru.

По современному российскому законодательству (ГК РФ, ст. 160, п.2; Закон 63-ФЗ "Об электронной подписи", ст. 5 и 9), такой документ считается подписанным обеими сторонами. Подробное обоснование можно найти здесь.

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

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

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

Вариант 2. Мы обмениваемся бумажными документами по обычной почте.

В этом случае в течение квартала мы оперативно обмениваемся документами с факсимиле моей подписи по электронной почте по мере необходимости (см. Вариант 1).

Один раз в конце каждого квартала я высылаю вам обычным письмом по почте России эти же документы на бумаге. Таким образом, в течение года происходит четыре отсылки: 15 марта за 1-й квартал, 15 июня за 2-й квартал, 15 сентября за 3-й квартал, 15 декабря за 4-й квартал.

Прошу отнестись с пониманием к тому, что отсылка бумажных документов производится ежеквартально, а не более часто.

Вариант 3. Мы обмениваемся документами через систему электронного документооборота.

Если вы сдаете бухгалтерскую отчетность в налоговую в электронном виде, то вы уже фактически подключены к электронному документообороту! Все крупные разработчики программ для сдачи отчетности позволяют не только посылать подписанные электронной подписью документы в налоговую, но и обмениваться документами в электронном виде с другими пользователями этой программы. Очень часто такой обмен подписанными документами предоставляется бесплатно, либо за очень небольшую плату, при этом используются те же ключи электронной подписи, что и для сдачи отчетности. В частности: При этом первые 4 компании из списка ("Контур", "Тензор", "Такском", "Корус Консалтинг") заключили между собой роуминговое соглашение, по которому документы, высланные по каналам одной из систем, беспрепятственно принимаются в любой другой системе.

Я являюсь пользователем системы "Диадок" (разработка компании "Контур"), у которой заключены роуминговые соглашения как с упомянутыми выше операторами, так из целым рядом других операторов - полный список можно посмотреть на сайте сервиса "Диадок". Если ваш оператор позволяет обмениваться электронными документами c "Диадоком", вы можете послать мне приглашение об установлении контактов, указав мой ИНН 771973148800. После того, как я приму ваш запрос, мы сможем обмениваться любыми значимыми документами - договора, акты об оказании услуг и т.п.

Если вы подключены через Личный кабинет с ключом, то проблем не будет, ключ будет действовать и для других адресов IP.

Если вы подключены с учетом запросов по адресу IP без ключа (старая схема), то сообщаете в произвольной форме на postcalc@mail.ru ваш новый адрес IP. Я его также включаю в "белый список" - на 3 дня или другое время, необходимое для тестирования.

Когда ваш интернет-проект окончательно сменит адрес, сообщаете мне - я удаляю из "белого списка" старый IP.
Вам не нужно регистрироваться и получать ключ:
  1. Если вы рассчитываете тарифы вручную, через домашнюю страницу http://www.postcalc.ru.
  2. Если вы хотите попробовать подключение по API: с тестовым ключом key=test можно делать до 50 запросов в сутки с одного адреса IP. Затем запросы с этого IP блокируются, и разблокировываются в ближайшую полночь.
  3. Если вы подключились к платному доступу с учетом по адресу IP ("белый список") до 25 декабря 2019 года.
Вам нужно регистрироваться и получать ключ:
Если вы делаете расчеты в вашем интернет-проекте в автоматическом режиме и по состоянию на 25 декабря 2019 года не подключены к одному из платных тарифов.

Причина: запросы со стороны сервера Postcalc.RU оказались блокированы со стороны вашего сервера. Напишите в техподдержку вашего хостинг-провайдера, что вам необходимо разрешить входящие запросы с IP 185.159.82.61. В крайнем случае пишите мне postcalc@mail.ru: я постараюсь прописать ваш домен вручную.
Напишите на postcalc@mail.ru, я пришлю дополнительные инструкции.
Также обратите внимание, что на платном доступе ссылка не обязательна - вы можете удалить ее сразу после регистрации.
Его необходимо вставить в код вашего скрипта, который посылает запросы на api.postcalc.ru. Как это сделать - мне не известно, плагины для подключения разработаны не мной, я лично разработчиков не знаю (только переписывался с некоторыми), сам модули не тестировал, техническую поддержку осуществляют только их разработчики.

Поэтому обратитесь к разработчикам плагинов или к независимому программисту.

Лайфхак (может сработать). Если в вашем плагине есть поле для вставки названия сайта (переменная st), вставьте вместо названия сайта &key=<ключ> (с обязательным амперсандом & в начале!):
&key=mydomain-a1b2c3d4
Если это не сработает, попробуйте поставить еще один амперсанд в конце:
&key=mydomain-a1b2c3d4&
Сделайте несколько запросов от вашего интернет-проекта (например, оформите заказ).
Далее на странице Личного кабинета с информацией о вашем домене прокрутите страницу вниз, до разделов "Статистика" и "Журнал сервера".
1 Если в разделе "Журнал сервера" есть записи - значит, все в порядке, ключ установлен правильно.
2. Если записей нет ни в "Статистике", ни в "Журнале сервера" - ключ не установлен, запросы возвращают ошибку.
1. Попросите этого пользователя зарегистрироваться в Личном кабинете.
2. Далее на странице управления доменом щелкните по ссылке Пригласить других пользователей стать контактными лицами по домену. Введите в форме адрес электронной почты, с которой этот пользователь был зарегистрирован в Личном кабинете, и пошлите ему приглашение.
3. Если это приглашение будет принято, пользователь станет контактным лицом по домену: он станет получать извещения, сможет просматривать статистику и оплачивать счета.
1. Сделайте этого пользователя контактным лицом по домену - см. предыдущий пункт.
2. Пришлите на postcalc@mail.ru просьбу сделать этого пользователя администратором домена.
Да, если вы получили ключ для mydomain.ru, он будет работать и для всех поддоменов 3-го и 4-го уровня - например, newshop.mydomain.ru, ivanov.mydomain.ru, www.test2020.mydomain.ru и т.п.
Чтобы получить ключ для домена 2-го уровня, необходимо разместить проверочную ссылку на postcalc.ru:
1. Либо непосредственно на странице этого домена 2-го уровня:
http(s)://mydomain.ru
2. Либо на странице домена 3-го уровня из следующего списка:
'www', 'shop', 'stock', 'market', 'test', 'dev', 'demo', 'en', 'ru', 'm', 'new',
например:
http(s)://www.mydomain.ru
http(s)://test.mydomain.ru
http(s)://shop.mydomain.ru
...
Во всех остальных случаях ключ будет выдан только на домен 3-го уровня.
Рабочая база данных почтовых индексов Postcalc.RU.
Источник - Эталонный справочник почтовых индексов объектов почтовой связи Почты России.
Рабочая база данных обновляется один раз в месяц.
Ее можно: Рабочая база включает все индексы из Эталонного справочника, кроме:
  • Технических объектов почтовой связи (технологические индексы, участки сортировки, склады ТМЦ и т.п.). Некоторое количество таких объектов остается в базе данных исторически.
  • Объектов почтовой связи c кодами 500xxx.
Рабочая база ключей населенных пунктов Postcalc.RU.
Источник - Эталонный справочник почтовых индексов объектов почтовой связи Почты России, проекты Open Street Map и Wikipedia.
Рабочая база данных обновляется один раз в месяц.
Ее можно:
  • Просмотреть онлайн.
  • Скачать в формате дампа таблицы MySQL.
  • Скачать упрощенную версию в "старом" формате (вместо номера региона указано название) в виде текста или дампа MySQL для Postcalc Light (таблица postcalc_light_cities). "Старый" формат будет поддерживаться в течение 2021 года, далее поддержка не гарантируется.
Ключи населенных пунктов:
  • Для центров регионов состоят из названия населенного пункта: Москва, Самара, Благовещенск.
  • Для прочих населенных пунктов состоят из его названия и номера региона через запятую: Сергиев Посад, 50; Благовещенск, 2 (город в Башкортостане), Самара, 38 (село в Иркутской области); Самара, 79 (село в Еврейской АО).
  • Если в пределах одного региона находятся несколько населенных пунктов с одним названием, то через запятую добавляется район: Михайловка, 2, Абзелиловский; Михайловка, 2, Архангельский; Михайловка, 2, Бакалинский.
В ключе населенного пункта вместо номера региона можно указать его название (старый формат запроса), например: Сургут, Ханты-Мансийский-Югра автономный округ; Сергиев Посад, Московская область. Однако так делать не рекомендуется, так как это ухудшает читаемость и удлиняет строку запроса, кроме того, у регионов имеются альтернативные названия и они могут меняться.

Примечание. Если в переменной f= (или t=) указан не конкретный почтовый индекс, а населенный пункт, API самостоятельно ищет почтовые отделения, из которых/в которые можно отправить данный вид посылок. Это прежде всего относится к отправлениям для корпоративных клиентов, поскольку они принимаются и выдаются не во всех отделениях связи.
Например, если вы отправляете из московского отделения 105005 в отделение 190000 Посылку Онлайн, то запрос
http://api.postcalc.ru/?f=105005&t=190000&w=1000&v=1000&p=po&key=test
- вернет ошибку, так как в отделении 105005 приема Посылки Онлайн нет.
В то же время запрос
http://api.postcalc.ru/?f=Москва&t=190000&w=1000v=1000&p=po&key=test
- вернет корректный расчет, так как API самостоятельно найдет в пределах Москвы отделение связи, откуда можно отправить Посылку Онлайн.
Аналогично, запрос на доставку ЕКОМ в 190000 вернет ошибку, так как в 190000 ЕКОМ не выдается:
http://api.postcalc.ru/?f=105005&t=190000&w=1000&v=1000&p=ek&key=test
А запрос на доставку в Санкт-Петербург вернет правильный расчет:
http://api.postcalc.ru/?f=101000&t=Санкт-Петербург&w=1000v=1000&p=ek&key=test
Все коды стран взяты запросом к официальному API Почты России:
https://tariff.pochta.ru/tariff/v1/dictionary?jsontext&country
Сокращения названий стран соответствуют ISO-3166-1 alpha 2:
https://ru.wikipedia.org/wiki/ISO_3166-1
Таблицу можно сортировать: для этого щелкните мышкой по названию любого столбца.

Вы можете:
1. Узнайте точный исходящий IP вашего сайта. Обратите внимание, что на массовом хостинге исходящий IP часто отличается от входящего. Поэтому создайте следующий скрипт, назовите его, например, test_ip.php:
echo file_get_contents('https://ipecho.net/plain');
Скопируйте скрипт на ваш сайт, обратитесь к нему через веб-браузер. Вы должны увидеть реальный исходящий IP. Это очень важный момент - без знания точного IP дальнейшая диагностика невозможна.

2. Проверьте "черный список":
https://www.postcalc.ru/blacklist

Если IP есть в черном списке, обратитесь к автору проекта.

3. Проверьте соединение с серверами Postcalc.RU напрямую. Для этого создайте следующий скрипт, назовите его, например, test_conn.php:
header('content-type: text/plain; charset=utf-8');
echo file_get_contents('http://api.postcalc.ru/?f=101000&t=190000&w=1000&v=1001&key=test&o=plain');
echo file_get_contents('http://test.postcalc.ru/?f=101000&t=190000&w=1000&v=1001&key=test&o=plain');
Скопируйте скрипт на ваш сайт, обратитесь к нему через веб-браузер. Вы должны увидеть ответ рабочего и тестового серверов в простом текстовом формате.

Если видите корректный ответ Postcalc.RU с расчетами - проблема не в сети, а в конкретном плагине. Обратитесь к разработчику плагина.

Если запрос "зависает" (обычно на 20-60 секунд), а потом появляется сообщение об ошибке (часто ошибка 504) - ваш хостинг-провайдер заблокировал обращения к сети, где находится сервер Postcalc.RU. Напишите в техническую поддержку хостинг-провайдера.

4. Проверьте прохождение пакетов по сети от вашего сервера к серверам Postcalc.RU.

Для этого соединитесь с вашим сервером по ssh. Не все тарифные планы разрешают доступ по ssh, но если он есть - это очень полезный шаг в диагностике. После соединения введите в командной строке:
ping -c 5 api.postcalc.ru 
ping -c 5 test.postcalc.ru 
Правильный вывод должен выглядеть примерно так:
# ping -c 5 api.postcalc.ru
PING api.postcalc.ru (185.159.82.61) 56(84) bytes of data.
64 bytes from main.postcalc.ru (185.159.82.61): icmp_seq=1 ttl=55 time=37.2 ms
64 bytes from main.postcalc.ru (185.159.82.61): icmp_seq=2 ttl=55 time=37.1 ms
64 bytes from main.postcalc.ru (185.159.82.61): icmp_seq=3 ttl=55 time=37.0 ms
64 bytes from main.postcalc.ru (185.159.82.61): icmp_seq=4 ttl=55 time=37.1 ms
64 bytes from main.postcalc.ru (185.159.82.61): icmp_seq=5 ttl=55 time=37.0 ms

--- api.postcalc.ru ping statistics ---
5 packets transmitted, 5 received, 0% packet loss, time 4005ms
rtt min/avg/max/mdev = 37.007/37.115/37.273/0.193 ms
Если появляются сообщения об ошибке - напишите об этом вашему хостинг-провайдеру.