Интернет-магазин «на минималках»
Краткая предыстория
Написать эту статью меня побудила публикация «Интернет-магазин как черная дыра в бюджете». Сейчас эта публикация скрыта, но вопрос к ней у меня по-прежнему остался. На мой личный взгляд, сумма, которая там выведена (сейчас не помню точную цифру — вроде несколько сотен тысяч рублей), не отвечает примерно ничему. Вернее, на мой взгляд, отвечает личным представлениям автора и произвольному набору допущений, озвученных в статье, но и только.
Сразу оговорюсь, что данная статья рекламной не является. Ни одна организация из упоминаемых в списке партнёров внизу статьи не заплатила мне за рекламу ни копейки. Соответственно, здесь нет никаких партнёрских ссылок и т.п. Единственное, что объединяет эти компании — проявленная не на словах, а на деле готовность решать возникающие вопросы. Это, на мой вкус, единственный реальный критерий. А те компании, которым на клиентов пофигу, в тексте не упоминаются вовсе. Так что любые совпадения с теми-кого-нельзя-называть — случайны, ну, а историю про себя пусть вообще считают вымышленной: так всем будет спокойнее.
С чего всё начиналось
Благодаря куче нелепых случайностей, цеплявшихся друг за друга, как колючки репейника, однажды мы с женой договорились со Стивом Родесом, музыкантом и автором книг из Лондона, о том, что переведём и издадим две его книги. После подписания договора (ноябрь 2017 г.) началась достаточно сложная борьба сразу с двумя языками — и эзотерическим английским, и литературным русским. Первый вцепился мёртвой хваткой и никак не хотел отдавать смыслы некоторых фраз, а второй тем более не желал эти смыслы, с таким трудом отобранные у первого, принимать, однако мы с супругой победили. Конечно, английский всё-таки умудрился оставить в финальном варианте текста следы своего глумления над нами типа реки Danube, которая так-то Дунай, но в целом все читатели довольны.
Про появление самих книгШесть месяцев малосонных ночей мы с супругой потратили на перевод, корректуру, первое знакомство с Adobe InDesign и борьбу с собственными наивными представлениями о нём (то есть то, что честно можно назвать в лучшем случае попытками вёрстки). Спасибо автору книги за предоставленные оригинальные файлы — это спасло нас от необходимости изобретать собственный стиль для книги.
Казалось бы, вставляй перевод в существующие текстовые поля, но не тут-то было: внутренний перфекционист просто орал благим матом из-за не очень удобных терминов и картинок-скриншотов с сайта в оригинальной книге. Что ж, Python, JS и Selenium в помощь: раз есть библиотеки, позволяющие управлять браузером программно, то было бы странно ими не воспользоваться. Соответственно, сколько-то времени ушло на реализацию набора скриптов, делающих из скриншотов с тёмным фоном эстетичные картинки чёрно-белые картинки. Уже лучше.
Далее на очереди были термины в тексте типа «Шестиугольник» (нет, я не шучу — в оригинальном тексте было именно «Hexagon»). Тут всё оказалось проще: взял FontForge, и сделал на базе основного шрифта альтернативные начертания OpenType: цифры в окружностях, шестиугольниках и треугольниках. Соответственно, там, где мы видели в оригинале «Hexagon 1», в перевод вставляли единичку, затем выбирал начертание в шестиугольнике. Кстати, FontForge позже пригодился ещё раз, потому что оригинальный шрифт с обложки не имел абсолютно никаких кириллических знаков — только латиница, только хардкор.
Потом было очень поверхностное прикосновение к особенностям полиграфии и издательского дела в контексте цветоделения (RGB → CMYK, вот это вот всё). До сих пор страшно вспоминать, как возился с тёмно-синей частью коллажа на чёрной обложке.
Так или иначе, прошло полгода, а за это время я зарегистрировался как издатель-частное лицо, получил ISBN’ы, и вот итог: на календаре — середина июня 2018, а перед нашим подъездом — пачки свежеотпечатанных книг. В договоре с автором оговаривался размер минимального тиража, поэтому вес получился внушительный (фото под спойлером).
У подъездаЯ звоню своему шефу — «Дима, привет, что-то срочное на сегодня есть? Нет? Это хорошо: у меня книги приехали, буду поднимать в квартиру, подойду чуть попозже» (Дима, если ты это читаешь — я тебе был и остаюсь благодарен за понимание, ну и вообще за всё!) Потом полтора часа тупой переноски тяжестей — и вот книги уже лежат в квартире. На этом собственно предыстория заканчивается, и начинается как раз самое интересное.
На старт, внимание, ИП!
Итак, по всем шкафам и углам лежат 2000 книг. Самый простой вариант — продавать их через интернет. Ну, а чтобы принимать оплату картами на сайте — как минимум потребуется официальная регистрация ИП/ООО. Так что среди причин, которые побудили нас начать работать именно «в белую», хочу выделить основные:
Желание максимальной автоматизации процесса приёма и обработки заказа
Желание подключить к сайту эквайринг, то есть приём оплаты банковскими картами
Ну и последняя, но столь же важная — абсолютное нежелание иметь какие бы то ни было проблемы с ФНС
Штуки вида «для приобретения позвоните по телефону» и «переведите через *-онлайн» мы не рассматривали по одной простой причине: обязанность выдавать кассовые чеки прописана в законе.При этом наверняка многие видели картонки, много где висящие — »ОПЛАТА ***-ОНЛАЙН, тел. ***». Как говорится, ну такое: в любой момент информационные системы банка могут быть донастроены определённым образом, и — ой. В дальнейшем жизнь сама показала, что её финансовая часть движется в сторону всё большей прозрачности для ФНС. В общем, sapienti sat.
Дальше была вот такая цепочка событий. Мы с супругой восстанавливаем её по памяти, но, к сожалению, от тех времён в голове осталось что-то вроде пачки слайдов, поэтому где-то хронология может быть неточной.
Жена выбрала коды видов деятельности по ОКВЭД, которыми хотела/планировала/умела заниматься. Потом заказала и получила КЭП физлица в более-менее удобном по географии УЦ. К сожалению, сейчас этот УЦ уже не существует, хотя он и работал при вполне себе государственной структуре, и имел полноценную аккредитацию Минсвязи (расходы: 1550 ₽. за подпись + 5000 ₽. за лицензию на криптопровайдер и USB-токен)
Я долго «приседал с отягощениями», чтобы этот самый криптопровайдер, один из широко известных, на её брендовом ноутбуке и вполне себе официальной Win7 наконец-то заработал, а сайт ФНС согласился c тем, что КЭП валидна (расходы: я в роли сисадмина — бесплатно).
Дальше жена подписала своей КЭП запрос через «Госуслуги» в ФНС на регистрацию в качестве ИП с указанием ОКВЭД и выбранной системы налогообложения (на тот момент выбрала УСН «доход 6%»). Через какое-то не очень большое время она получила свидетельство о регистрации (соответственно, в реестре ОГРНИП появилась запись), и вместе с этим пару недель ей пришлось отбиваться от «холодных» звонков из разных банков с предложениями открыть расчётный счёт. Какой-то магией мониторят обновления реестра, что ли? (расходы: госпошлина за регистрацию ИП = 560 ₽., скидка при оплате через «Госуслуги»)
Следующий шаг квеста — снова заказ и получение КЭП, но теперь уже для ИП (это не то же самое, что КЭП физлица!), и потом был небольшой момент радости — все приседания с криптопровайдером были уже выполнены в п.3. (расходы: 2450 ₽.)
Далее я оказал супруге поистине медвежью услугу, предложив открыт счёт в том банке, куда в тот момент приходила моя зарплата (назовём его, к примеру, Ы-банк). Я имел в виду надежду на прозрачность общих доходов для получения ипотеки, вот это вот всё, и она согласилась. Мы, конечно, позже вспоминали это решение недобрым словом, потому что оно на всё про всё сожрало у нас кучу времени и нервов, но на тот момент действия на ближайшую перспективу были более-менее понятными. Поэтому она купила кассовый аппарат (название в списке) по рекомендации клиентского менеджера у партнёра Ы-банка, и зарегистрировала его в ФНС как раз с помощью КЭП ИП (расходы: кассовый аппарат с фискальным накопителем на 36 месяцев обошёлся в ~27 000 ₽.)
Что ж, в оффлайне мы были готовы продавать. А что касается онлайна — тут ситуация достойна пера Кафки. Ы-банк с моей точки зрения клиента-физлица выглядел так же классно, как некий условный слон спереди: вы только посмотрите, какие у него классные уши, мощные бивни, умный лоб, добрые глаза!!! Но стоило ей запросить подключение эквайринга на сайт — слон сразу развернулся на 180 градусов. Сплошное безразмерное, необъятное, неприкрытое разочарование, до которого донести свою точку зрения можно только никак. В эквайринге Ы-банк отказал, и причины не были объяснены («внутренние правила банка не позволяют комментировать причины отказа», вот это вот всё). Самое обидное, что с самого начала, когда супруга только собирались открывать счёт, она сразу говорила: моя цель — эквайринг на вот этом вот сайте, собираюсь продавать изданные книги, и они есть в наличии. «Клиентоориентированность» во всей красе, что тут ещё сказать. Отдельно упомяну, что активно продвигавшаяся Ы-банком услуга онлайн-бухгалтерии на поверку оказалась недоступна при наличии у ИП эквайринга (наши расходы на печаль по безлимиту — 0 ₽.)
Шеф, всё пропало!…
М-да… Столько работы — и нет возможности продавать книги в интернете. Дальше, видимо, какой-то кусок печали и уныния в пару недель, потому что с того момента прошло всего лишь 2,5 года, а детали мы уже плохо помним. Видимо, ничего хорошего там не вспомнить… Зато точно вспомнили вот что: один из знакомых (Серёга, привет!) рассказал нам про платёжных агрегаторов: они, мол, умеют принимать платежи картами, брать свою комиссию, перечислять деньги на указанный счёт в банке, и к нормальным сайтам относятся нормально. По общему правилу терять нам было нечего, и мы заслали документы в первую такую компанию. На тот момент я как раз менял работу — вернее, уже поменял, просто дата выхода на новое место, в Райффайзенбанк, как раз позволяла выдохнуть-отдохнуть, поэтому мы уехали к друзьям в Питер (представляете, без всяких масок! Эх, 2018…)
Именно в Питере нас догнал отказ от первого агрегатора. «Фи», — сказали мы. «Не хотите с нами работать — значит, отдыхаем дальше». Ну и то -, а что бы мы из Питера-то сделали? Но, видимо, что-то повернулось в головах, потому что по возвращению в Москву мы всё-таки нашли агрегатора (см. список в конце). У них не было претензий ни к сайту, ни к двум книгам, которые были на нём представлены на продажу: запросили стандартный комплект документов, предоставили тестовый доступ (включение интеграции — бесплатно).
Сам себе веб-дизайнер
«Хм, какой сайт?» — вправе спросить дотошный читатель. Отвечу честно — сделал сам. Ну как сделал… Вы могли слышать про Joomla!. Так вот, наш сайт на ней. На тот момент у меня уже были практический опыт и знания о внутреннем устройстве Joomla!, и о шикарном компоненте магазина для неё под названием «JoomShopping». В общем, я решил, что уж с сайтом-то могу разобраться полностью сам — и разобрался, но для вёрстки Joomla!-шаблона всё-таки купил Artisteer (расходы: $130, ~ 8250 ₽). В качестве фишки (ну и потому, что мог, да) выбрал цветовую гамму, которая хорошо будет восприниматься людьми с нарушениями цветового зрения. Дизайн получился нестандартный, но, конечно, никаких тебе SPA — при переходе по ссылкам вся страница честно обновляется. С другой стороны, после смены тарифа хостинга этого обновления практически не заметно: SSD + кэш делают своё дело.
Итак, дизайн был свёрстан, и был куплен нужный домен в зоне .RU. Потом — хостинг. К счастью, назвать хостинг-провайдера вслух мне тоже не стыдно — см. список, но вот бывшего регистратора называть не буду: они как-то в одностороннем порядке стали брать за одно доменное имя в год вместо 125 ₽ около восьмиста, что ли, поэтому все свои домены я от них перенёс (расходы на домен на тот момент ~ 800 ₽)
Приятным моментом для меня оказалось наличие у агрегатора готового модуля оплаты для JoomShopping, а сам агрегатор вполне умел работать с новым банком (жена к тому моменту уже закрыла счёт в Ы-банке).
«Что, уже другой банк?» — спросит всё тот же дотошный читатель. Да, к этому времени новый банк уже был выбран супругой (название см. в списке).
Онлайн-кассу нннада?…
К тем порам мы ещё глубже погрузились в тонкости работы «вбелую», и перед нами встал следующий крайне интересный и недешёвый момент. ИП, продающий товары/услуги в онлайне, также обязан предоставить покупателю кассовый чек. Эти положения соответствующего Федерального закона РФ (54-ФЗ, если кому важна точность) фактически породили целую мини-отрасль «облачных касс». Что такое облачная касса? Очень грубо — фискальный накопитель + софт, который предоставляет REST API. Пользование такой штукой обошлось бы нам в кругленькую сумму: на тот момент были предложения от 2000 ₽./мес., плюс отдельно фискальный накопитель по своей собственной кругленькой цене (если ничего не путаю — 7 000 ₽. на 15 мес., и 11 000 ₽. на 36 мес.) К счастью для нас, у одного из банков нашлось полностью легальное решение: системы банка принимают запрос на формирование чека от платёжного агрегатора, и передают его приложению, которое живёт внутри кассы (она вполне себе на Android). Почему так -, а потому, что касса всё равно по тому же 54-ФЗ обязана все чеки загружать в облако оператора фискальных данных (ОФД). Видимо, либо в банке нашлась светлая голова, которая сказала — «а давайте чуть-чуть допишем, и получится крутейшее предложение для ИП, не желающих платить операторам облачных касс!», либо изначально вся система писалась именно в расчёте на такое применение — так или иначе, вопрос выдачи чеков у нас успешно самым счастливым образом решился. Единственные люди в проигрыше — операторы облачных касс, но в этом и был смысл! А ФНС может проверить все наши продажи — хоть в онлайне, хоть в оффлайне — через ОФД, и все чеки фиксируются в фискальном накопителе кассы, поэтому им-то совершенно фиолетово: если корректные чеки выданы при всех покупках в оффлайне и онлайне, то закон соблюдён.
Кстати, самыми приятными фишками агрегатора для нас оказались оплата через холд и автоснятие холда. О чём речь? Вот представьте себе такую ситуацию. Клиент, например, оплатил на сайте книгу, ну или консультацию. Жена его проконсультировала, а он такой — «ничего не понял, меня не устраивает, верните деньги!» Что ж, его деньги ещё никто и не брал — его банк по запросу от нашего агрегатора только «заморозил» оговорённую сумму на карточном счету, и если нажать в личном кабинете агрегатора кнопку снятия холда, то деньги будут «разморожены», а клиент получит чек возврата. А чтобы не было соблазна злоупотреблений, в условиях консультаций мы описали, что в подобной ситуации клиент получит назад свои деньги, но не получит своё видео, и более мы его не обслуживаем: нет смысла. Понятно, что время и усилия в этом случае были потрачены впустую, но в консультировании репутация дороже денег: её очень сложно заработать, и очень легко потерять. Поэтому консультации пишутся на видео (здесь ещё один сервис, и он тоже в списке внизу), и супруга клиента явным образом вслух спрашивает, есть ли вопросы по консультации, всё ли понятно, есть ли желание вернуть деньги или нет (к счастью, этой возможностью ещё никто из клиентов не пожелал воспользовался — консультации всех устроили).
Вторая фишка — автоснятие холда — работает так: если в течение пяти минут не будет сформирован и отправлен клиенту кассовый чек, то деньги на карточном счету клиента будут автоматически разморожены, а заказ отменён. Да, пара-тройка заказов уже пропала таким образом, зато мы не нарушили 54-ФЗ, который обязывает выдавать чеки при покупке. Ведь вероятность такой ситуации — не нулевая: давайте вспомним, что эти чеки формирует софт, который работает внутри кассы, которая стоит у нас дома в шкафу и держит соединение с банком через наш домашний роутер, который подключен к нашему провайдеру домашнего интернета. В общем, какой-то «дом, который построил Джек». Про провайдера, к счастью, я и полслова плохого сказать не смогу, поэтому название в списке снизу.
С книгами понятно. А консультации?…
Следующий вопрос, который пришлось решать — каким образом дать клиентам возможность самостоятельно заказать и оплатить на сайте консультации. Один момент, который меня всегда примерно одинаково бесил во взаимодействии с самыми разными организациями — невозможность выбрать и заказать на сайте услугу, привязанную ко времени. Почему? Это что, так сложно, что ли? Почему я должен тратить время на звонок и выслушивание списков часов, доступных для записи, почему я не вижу сразу всё доступное время, чтобы спланировать своё расписание так, как мне удобно, а не так, как зачитал мне по телефону администратор? Это я уж молчу о том, что записаться на консультацию в этом случае можно только в рабочие часы — грубо говоря, когда ты тоже занят работой. Соответственно, встал вопрос написания ещё одного дополнения для Joomshopping, которое позволило бы сайту принимать заказы на консультации 24×7, с «автомагическим» учётом выходных дней, а также занятости супруги по своим личным вопросам.
Я реализовал такой модуль. Не обошлось, правда, без сервисов ещё одной компании (она также в списке снизу). Как это выглядит? При желании клиента оформить заказ сайт отображает доступные таймслоты на ближайшие три дня. Если какое-то время занято — оно просто выбрасывается. Если же заказ состоялся, то сайт сам добавляет жене в календарь созвоны, снабжая их деталями типа пожеланий клиента к консультации.
Насколько это удобно? Смотрите сами. Например, в эти каникулы с 31 по 10 января она просто добавила в календарь длинное «событие», и никто не мог заказать консультацию на эти дни. На словах, конечно, звучит просто, а в реализации «в лоб» есть свои подводные камни (например, логика, исключающая заказ одного и того же таймслота двумя клиентами).
Всячески доставляем
Дальше встал вопрос интеграции сайта с сервисами компаний, осуществляющими доставку (их названия — в списке снизу). К счастью, нужные модули для JoomShopping нашлись в сети. Вернее, ну как нашлись… Не нашлись, а были тупо куплены: на тот момент я не был готов разбираться в нюансах модулей доставки для JoomShopping, и мне уже хотелось поскорее всё запустить. Суммы я тоже не помню, но какие-то очень вменяемые — в пределах 500 ₽. Зато клиенты получили возможность сразу при заказе видеть стоимость доставки (она считается непосредственно через API выбранной компании-партнёра).
В общем, всё в итоге было собрано и успешно заработало на хостинге, только это потребовало столько внутренних ресурсов моих и жены, что все новогодние выходные 2019 мы просто в позе «морской звезды» провалялись дома: не было сил ни на что.
Налоги и итоги
Раз уж супруга является ИП — у неё есть обязанность платить налоги. В своё время — году в 2012, что ли — государство ввело для ИП фиксированные взносы в фонд социального страхования. О последствиях можно подискутировать, но статья не об этом. В общем, на УСН «доход 6%» ИП платит не только эти самые 6%, но и фиксированные соцвзносы (сейчас в районе 40 тыс. в год). При этом мало кто из этих самых ИП знает — ну по крайней мере, среди тех, с кем на эту тему с 2018 пообщались мы — что при оплате взносов авансом, то есть до конца квартала, из итоговой суммы налога за год вычитается сумма уплаченных взносов. Если ты платишь взносы вовремя, а не раз в год, то до определённого объёма дохода вся сумма налога будет «поглощаться» соцвзносами. Тупо заплатил 40 тыс. равными частями за год — и всё. Другое дело, что хочется вырасти в объёмах продаж настолько, чтобы прибыль превышала этим самые взносы.
Суммарные прямые затраты на запуск интернет-магазина (без учёта стоимости нашего времени, конечно) составили около 50 000 ₽, при этом, если вы смотрели на цифры, самой дорогой частью системы оказалась касса. На выходе — интернет-магазин, работающий «в белую», умеющий принимать оплату картами, рассчитывающий цену доставки, принимающий заказы 24×7, и позволяющий клиентам делать заказы даже на консультации без единого звонка.
Много это или мало — каждый решает сам, я лишь хотел поделиться конкретным опытом в надежде, что он сможет оказаться полезным.
Список компаний-партнёров, помогающих нашему интернет-магазину работатьХостинг-провайдер, на мощностях которого живёт сайт — FirstVDS
Компания, предоставляющая API календаря и не только: Google
Платёжный агрегатор, который реализовал интеграцию своих систем с компонентом JoomShopping для Joomla! — Ю.kassa
Банк, который реализовал интеграцию своих систем с приложением в кассе — Модульбанк
Интернет-провайдер, который умеет предоставлять стабильнейший интернет — Ростелеком
Компания-создатель классной кассы MSPOS-K под управлением ОС Android в корпусе позитивного оранжевого цвета — МодульКасса
Оператор фискальных данных: Первый ОФД
Сервис видеозвонков для онлайн-консультаций: Zoom
Доставка: Почта России, СДЭК
Уважаемые партнёры, спасибо вам большое!!!
Отдельная благодарность консультантам и инспекторам ФНС России, которые терпеливо давали ответы на любые, даже самые наивные и странные вопросы по применению ККТ и налоговому законодательству.
Я долго сомневался, но потом всё-таки решился: вот ссылка на сайт. Обратная связь — welcome!