Юрий Максименко
db_maker@aha.ru

Эту статью я адресую руководителям организаций, которые решили сделать первый шаг на пути освоения коммерции в Сети. Но, поздравив их с этим решением (а это действительно шаг в будущее), хочу призвать сделать этот шаг аккуратно и осмотрительно. Билл Гейтс в книге "Дорога в будущее", сравнивая бум электронной коммерции с золотой лихорадкой, заметил, что в сети Интернет есть золото, но оно залегает глубже, чем многие думают. Поэтому прежде чем принимать значимые решения, осмыслим само понятие - "Интернет-коммерция" (или, другими словами, электронная коммерция). Что здесь нового?

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

Эти черты и обусловливают достоинства и недостатки Интернет-магазина по сравнению с его собратом из реальной жизни. Сформулируем их. Итак, достоинства:

  • можно привлечь много покупателей;
  • небольшие затраты на рекламу магазина;
  • потенциально большее число продаж;
  • значительно меньшие затраты на содержание;
  • лучшее информационное обеспечение: появляется возможность предоставлять всестороннюю информацию о товаре большому количеству посетителей одновременно.

И недостатки:

  • у покупателя нет возможности "повертеть товар в руках" перед покупкой;
  • как правило, покупки совершают под влиянием момента, и в случае электронной коммерции значительно повышается процент отказов от покупки, незавершенных сделок;
  • значительно сложнее организация доставки: если из реального магазина покупатели сами увозят или уносят свою покупку (если только это не крупногабаритный товар), то в случае электронной коммерции все заказы валятся в базу данных сервера, и, если система доставки не отлажена, очень скоро магазин придется закрыть, чтоб разгрести старые заказы;
  • Интернет-магазин недоступен для тех, кто не умеет работать в Интернете. Но надо рассчитывать, что это обстоятельство будет сказываться все меньше: число пользователей Интернета растет лавинообразно.

Какие же выводы следуют из сравнения достоинств и недостатков Интернет-магазина? Прежде всего электронная коммерция - безусловно перспективное направление. Звучит банально? Отнюдь нет! Я свидетельствую: очень многие предприниматели не считают Интернет-коммерцию прибыльным и перспективным направлением и рассматривают ее только как элемент и средство повышения престижа и посещаемости реального магазина.

Но чтобы опровергнуть это мнение, вам придется проделать очень серьезную работу по планированию вашего бизнеса в Сети. Иначе вы столкнетесь с недостатками электронной торговли и не сможете воспользоваться ее плюсами. И поневоле придете к убеждению, что e-commerce - не бизнес, а баловство.

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

Разработка организационной модели

Попытаемся в общем виде изложить узловые моменты схемы продаж через Интернет-магазин. Прежде всего обсудим два появившихся в литературе и в рекламном обиходе понятия, связанных с электронной коммерцией: B2B и B2C.

B2B (Business to Business) - "бизнес для бизнеса" ("to" по созвучию заменено на "two", или 2). Это вид деятельности, при котором две компании проводят бизнес-транзакции с помощью Интернета. Например, компания может разместить запрос на коммерческие предложения, получить текущие котировки от своих поставщиков, заключить контракт, получить или оплатить счета, опубликовать документы.

B2C (Business to Consumer) - "бизнес для потребителя". В этом случае деятельность нацелена на прямые продажи потребителям.

Позвольте, дорогие читатели, поделиться своим мнением: эти понятия надо оставить вашей PR-службе. Которая всегда может написать, например, так: "Поскольку, согласно последним исследованиям ActivMedia Research, к 2010 году доходы от B2C-бизнеса составят 31% от общей прибыли в Интернет вместо 47% на сегодняшний день, наш магазин инвестирует значительные средства в рост сектора B2B, который теперь мы позиционируем как стратегический". Как это обосновать? Извольте. Другой магазин купил через Интернет партию товара для увеличения своего ассортимента - вот вам и B2B. А продавщица заказала еще одно наименование себе лично - это уже B2C. Получаем соотношение этих секторов в вашей электронной торговле 50:1.

А мы при планировании и создании Интернет-магазина будем исходить только из того, что через Интернет наша организация продает товары. Не задаваясь вопросом, B2B это или B2C*.


*Автор, несомненно, прав в том, что аббревиатуры B2B и B2C на данный момент перегружены маркетинговым смыслом. Более того, в ход пошли уже новоизобретенные понятия, такие как B4B (Business for Business) и B2G (Business to Government). Тем не менее не стоит приуменьшать значение изначального смысла этих понятий. Ибо при переходе к Интернет-коммерции никак не меняется не только формула "товар - деньги - товар", но и цепочка "поставщик - реселлер - потребитель". - Прим. гл. ред.

На сайте представлены товары; покупатель наполняет ими свою "корзину". Выбрав все приглянувшиеся товары, он оформляет заказ на то, что находится у него в корзине. И здесь возникает проблема оплаты.

Оплата

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

Наличными курьеру. Этот способ имеет два существенных ограничения: во-первых, так можно получать деньги только в пределах вашего города; во-вторых, чтобы не нарушать законодательство РФ, товар придется снабжать кассовым чеком. Значит, их кто-то должен пробивать: либо специально нанятый для этого кассир, либо продавец-кассир, работающий в реальном магазине.

Через кредитную систему. Существует ряд программных средств, которые, будучи установлены на Web-сервере, принимают деньги по кредитным картам. Покупателю предлагается ввести номер кредитной карты и дату истечения срока действия. По этим данным вычисляются (и могут запрашиваться для проверки) другие параметры: тип кредитной карты (Visa, MasterCard, American Express и т.д.) и имя ее владельца. Этих данных достаточно, чтобы осуществить платежную транзакцию (перевод денег со счета покупателя). Это обстоятельство не ускользнуло от хакеров, породив волну продаж по "ворованным" кредиткам (речь идет не о краже собственно пластиковой карты, а о краже информации - данных карты). Такие явления в Интернет-торговле получили название "фрауд" (от английского fraud - мошенничество.) Именно ими умиляются отечественные журналисты, превознося российских малолетних "гениев", "взломавших" Интернет-магазин (и указавших для доставки свой домашний адрес). Фрауд в размере до 50 долл. обычно компенсируется магазину кредитной системой, большие суммы - по итогам расследования. В России мало распространены кредитки и не накоплено опыта борьбы с фраудом. Поэтому такую систему стоит вводить только в расчете на зарубежного покупателя.

Через специализированную платежную систему. Существует ряд систем, предназначенных для платежей через Интернет. Проблемы безопасности в этом случае решены на качественно ином уровне, который можно признать вполне допустимым. Ограничение - такие системы распространены в России еще меньше, чем кредитные карты.

Банковским или почтовым переводом на расчетный счет. Практически единственный способ получить деньги от покупателей из других российских городов. Имеет два существенных недостатка: длительное прохождение денег и трудность автоматизации. Последняя проблема обусловлена тем, что данные о поступлении денег на счет можно получить только в бухгалтерии. В нашей стране при помощи автоматизированной системы получить от бухгалтерии (заметьте - бухгалтерии реального магазина!) сведения о поступлении денег покупателей на счет практически невозможно: при автоматизации бухучета (если он вообще автоматизирован) такой задачи не ставилось. Но не следует забывать, что этот способ зачастую наиболее удобен для организаций.

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

Какой же способ платежей выбрать для Интернет-магазина? А пусть на вашем сайте их будет много - хороших и разных. Как мы увидели, каждый из способов имеет преимущества и недостатки. Чем больше у клиента возможностей выбирать, тем больше покупателей у вас будет.

Доставка

Итак, товар заказан, покупатель выбрал способ оплаты. Теперь следует разработать схему доставки товара. Это самое "узкое место" многих Интернет-магазинов. Перечислим вопросы, на которые следует дать ответы. И очень рекомендую запомнить: ответы нужно дать до того, как заказы начнут поступать. А не после, как это, к сожалению, принято в ряде российских Интернет-магазинов.

  • Как служащий вашего магазина будет узнавать о новом заказе? Заказ-то лежит где-то в базе данных где-то на сервере…
  • Кстати, кто этим будет заниматься - ведь ранее такой должности не было…
  • Как и где будет фиксироваться движение товаров (прием со склада, выдача курьеру и т.п.)?
  • Как будут формироваться документы, связанные с движением товара - поручения курьеру, накладные и т.п.? (Только не вручную! Иначе сотрудник через месяц уволится…)
  • И кто, собственно, будет их доставлять? Ваши курьеры или курьерская служба?

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

Хочу предостеречь от "легкого" пути: вместо этих специальных страниц создать утилиту (например, на Microsoft Access), решающую описываемые задачи. При этом возникнут три проблемы, причем если две из них трудноразрешимы, то третья неразрешима вообще. Во-первых, у вас образуется две среды разработки вместо одной и, соответственно, две группы разработчиков вместо одной. И вы обречены выслушивать склоки: "Вы так написали утилиту!" - "Нет, это вы так написали сайт!"

Вы как опытный руководитель, хоть и не сразу, но преодолеете эту склоку, и сочетание сайт+утилита начнет работать нормально. Но в итоге ваш Интернет-бизнес окажется для вас непрозрачен: вы наблюдаете его через мутное стекло отдела доставки, которому просто не до статистики. Эту проблему тоже можно решить, организовав общий доступ к базе данных утилиты и встроив в нее систему статистики.

Но вы не преодолеете идеологической трудности такой организации работы: необходимость и неизбежность работы сотрудников отдела доставки на всех этапах обработки заказа. Им приходится, например, самим ехать на склад за товарами, брать их оттуда, отмечать их в базе данных утилиты и только потом выдавать курьеру. Иначе - никак…

А физически осуществлять доставку лучше с помощью курьерской службы. При малых объемах продаж это просто экономнее, чем содержать своего курьера. А до создания собственной курьерской службы надо еще дорасти: далеко не каждому Интернет-магазину это по силам. При взаимодействии с московскими курьерскими службами одна поездка курьера обойдется в 1-3 долл.

Схему движения товара логичнее рассмотреть после планирования схемы данных. Итак, настало время обсудить планирование сайта.

Планирование сайта

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

 


*См. Ю. Максименко, "Создание корпоративного Web-сервера - принятие стратегических решений", "Byte/Россия", №2'2001; "Спор о вкусах и цветах", "Byte/Россия", №4'2001.

Схема данных

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

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

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

  • Заставлять пользователя регистрироваться и входить в магазин со своим логином (login) и паролем.
  • Присваивать каждому посетителю уникальный идентификационный код.

Второй путь технически сложнее, но идеологически правильнее. Представьте: вы приходите в продуктовый магазин, а вам говорят: "Прежде чем что-то купить у нас - заполните анкету и получите пропуск". Примерно так покупатели могут воспринять систему регистрации.

Для присвоения пользователю уникального идентификационного кода можно создать таблицу Visitors с единственным полем типа AutoIncrement. Если на компьютере пользователя нет файла cookie с идентификационным кодом, программа добавляет запись в Visitors, и значение этого единственного поля вставляется в файл cookie на компьютере посетителя.

Сведения о товарах, отобранных покупателем в корзину, попадают в таблицу GoodsInOrders. Она содержит код товара, количество данного товара в заказе, код заказа, идентификационный код покупателя, статус товара в заказе (0 - внесен в заказ; 1 - внесен в поручение курьерской службе; 3 - выдан со склада курьеру; 4 - продан; 5 - возвращен курьерской службе в связи с отказом; 6 - возвращен на склад) и сведения об оплате.

Кроме того, должна быть создана таблица NotesOfGoods - документы, связанные с движением товаров. В нее следует включить два важных поля - тип документа (1 - поручение курьеру, 2 - накладная выдачи со склада, 3 - отчет о поручении, 4 - возвратная накладная) и код предыдущего документа (исходного для данного). Для связи типа многие-ко-многим с таблицей GoodsInOrders создается таблица GoodsInOrdersInNotes.

Итак, пользователь зашел в магазин и начал складывать товары в корзину. При каждом выборе товара создается запись в таблице GoodsInOrders с кодом заказа и статусом, равными нулю. Когда покупатель укомплектовал корзину и нажал на сайте кнопку "Оформить заказ", появляется новая запись в таблице Orders, содержащей код покупателя, способ платежа и инструкции по доставке. Код этой записи проставляется в поле кода заказа в записи таблицы GoodsInOrders, соответствующей набранной корзине.

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

На основании выбранных товаров (по умолчанию выбраны все) по нажатию кнопки и ответу на запрос о ФИО и документе курьера формируется Поручение курьеру (таблица NotesOfGoods, тип документа = 1, код предыдущего документа = 0), и в GoodsInOrdersInNotes вставляются записи с соответствующим кодом товара в заказе и кодом вновь созданного поручения. В GoodsInOrders в выбранных для поручения записях поле статуса становится равным 1.

Поручение курьеру распечатывается со страницы сайта, и курьер с этой распечаткой выезжает на склад.

Сотрудник, работающий на складе, открывает свою страничку, идентифицируя себя паролем, и вызывает данное поручение. После сличения данных документа курьера с данными в платежном поручении он начинает формировать заказ. Результат формирования заказа сотрудник отражает в специальной страничке, заполняя таблицу.

На основе выданных товаров (по умолчанию все выданы) по нажатию кнопки формируется Накладная выдачи со склада (таблица NotesOfGoods, тип документа = 2, код предыдущего документа = коду поручения курьеру) и в соответствующие записи GoodsInOrders в поле статуса вносится значение 2.

В GoodsInOrdersInNotes вставляются записи с соответствующим кодом товара в заказе и кодом вновь созданной накладной.

Эта накладная распечатывается в двух экземплярах (со странички сайта!), которые подписываются курьером и складским работником. Один экземпляр остается на складе, другой выдается курьеру. Курьеру также выдаются распечатанные со страницы и заверенные на складе документы для доставки.

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

Курьер начал развозить заказы. Кто-то купил и выдал курьеру деньги, кто-то отказался от покупки. Курьер приезжает к начальству (своему!) и отчитывается. Результаты его поездки (т.е. выполнения Поручения клиенту) вносятся на страницу (заполняются строки в таблице).

После заполнения этой таблицы нажатием кнопки формируется Отчет Курьерской службы (таблица NotesOfGoods, тип документа = 3, код предыдущего документа = коду накладной выдачи со склада) о выполнении поручения. Таблица GoodsInOrdersInNotes не модифицируется: все заказы данного отчета обязаны присутствовать в накладной. В поле статуса вносятся значения, соответствующие радиокнопкам в форме отчета (4 - продан; 5 - возвращен курьерской службе в связи с отказом). На основании этих отчетов производятся расчеты с курьерской службой.

Заказы, которые курьер возвратил, сдаются обратно на склад, и оформляется Возвратная накладная (таблица NotesOfGoods, тип документа = 4, код предыдущего документа = коду отчета). В поле статуса вносится значение 6.

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

Как заметил вдумчивый читатель, приведенная схема процесса сделки через Интернет иллюстративна. Я хотел бы, чтобы вы обратили внимание на главное ее достоинство: при реализации подобной схемы электронный бизнес не только становится прозрачным для его владельца - можно сделать его прозрачным (в известных пределах, конечно) и для покупателя. Он сможет видеть, в каком состоянии его заказ, а не звонить бесконечно в службу доставки, обрекая себя на ответ типа "перезвоните через 20 минут!"

Но когда вы начнете планировать схему доставки и ее отражение в структуре таблиц - не поленитесь, оформите это в письменном виде. Это необходимо, во-первых, для согласования с заинтересованными службами (с тем же складом), а во-вторых, для постановки задачи программистам.

Особенности сайта

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

Это должен быть физический сервер: только так вы обеспечите надежную работу магазина в Сети. Хостинг тоже должны обеспечивать сами владельцы: только так вы можете быть сколько-нибудь уверены в защищенности вашего Интернет-магазина от взлома.

При проектировании страничек нужно больше, чем обычно, заботиться о безопасности и отражении хакерских атак. Эту тему невозможно достойно осветить в рамках настоящей статьи, поэтому ограничусь рекомендацией: привлеките к работе над сайтом эксперта по безопасности (это не столько программист-разработчик, сколько программист, изучающий способы нападения и защиты в области Web-технологий). Пусть по ходу создания сайта он ищет и находит лазейки для хакеров, которые возникают по двум причинам: из-за "дыр" в безопасности системных Web-средств (серверов IIS и Apache, средств маршрутизации и др.) и по недосмотру программистов. Нахождению и устранению подобных лазеек необходимо уделять постоянное внимание.

Еще одна тонкость проектирования страниц для Интернет-магазина - система поиска товара. Позволю себе повторить рекомендацию об использовании для хранения товаров информационной структуры типа "дерево" (см. "Byte/Россия", №4). И рассмотрим еще одну весьма интересную ситуацию - я бы ее обозначил как "эффект двойного названия". Классический пример - фильм Квентина Тарантино Pulp Fiction в российском прокате известен под названием "Криминальное чтиво". Таким образом, мы имеем не оригинал и перевод, а два совершенно разных названия одного и того же товара (фильма). И это случается не только с иностранными фильмами. Музыкальные диски Земфиры Рамазановой можно найти под названиями "Земфира" или "Zемфира" (так официально называется группа). Или, например, в фармакологии: аспирин (он же ацетилсалициловая кислота), эффералган (он же парацетамол) и т.д. и т.п. Мы привыкли прибегать к помощи продавца-консультанта, который объяснит нам, что Die Hard переводится с английского как "Крепкий орешек". Но в Интернете продавцом-консультантом выступает сайт. Вот почему необходимо в базе данных хранить названия-синонимы товаров, иначе покупатели могут просто не найти нужный им товар.

Раскрутка Интернет-магазина

Нам еще предстоит разговор о "раскрутке" сайтов, о привлечении на него посетителей. Здесь мы, пользуясь случаем, отметим специфические приемы, характерные именно для сайтов онлайновой торговли.

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

В некоторых известных поисковых системах есть очень полезные для вас службы - как раз для выставления товаров в соответствующем разделе поисковика (например, "Яндекс-товары"). Плата за эту услугу необременительна - около 10 центов за "клик" (нажатие мышью).