Pull to refresh
0
Rating

А у нас есть SDK, а у вас?

Aviasales corporate blog Development for iOS *
Привет, Хабр! Правильнее было бы назвать этот пост «У нас есть классная партнёрская программа и крутой SDK для неё», но не хотелось делать длинный заголовок и сразу раскрывать все карты. Как бы там ни было, в этой публикации мы хотим рассказать про SDK наших сервисов, который каждый из вас может использовать в своих приложениях.



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

Спустя время у нас появилась своя партнёрская программа (непременно с блекджеком) под названием Travelpayouts. Она объединила метапоисковики всех наших проектов: Aviasales, JetRadar и Hotellook, то есть любой участник программы получает возможность в своём приложении организовать поиск авиабилетов по базам порядка 100 агентств и авиакомпаний, а также организовать поиск отелей по базам 65 крупнейших агентств (около 700000 отелей). Ну и, понятное дело, получать средства за каждую покупку через ваше приложение: мы предоставляем партнёрам от 50 до 70% от комиссии.



Как и у любой компании (или продукта), у Aviasales есть конкуренты, которые в своём арсенале также имеют различные партнёрки. Существующие партнёрские программы рассчитаны исключительно на веб-применение – API и всякие виджеты. У нас тоже есть API, но чтобы сделать на его основе своё мобильное приложение, надо потрудиться.

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

  • Статическая библиотека. В ней реализована вся работа по взаимодействию с сервером Aviasales. Она умеет отправлять поисковые запросы, получать и парсить ответы, предоставлять их в удобном для программиста виде. Также библиотека умеет фильтровать полученные билеты по различным параметрам и генерировать ссылку для перехода к покупке.

  • Шаблонное приложение на основе этой библиотеки. Оно состоит из поисковой формы, экрана ожидания, результатов поиска, фильтров и экрана с подробной информацией о билете. Модуль поиска может быть встроен в существующее (или новое) приложение множеством способов, например, в виде модального окна или отдельным экраном в таббаре. Для интерфейса подготовлены локализации на русском, английском и испанском языке.

Как видите, всё довольно просто, но у конкурентов таких штук просто нет :)



Когда мы начинали работу, мы думали сделать вообще только статическую библиотеку, которая будет инкапсулировать в себе все взаимодействие с сервером. Наивно полагали, что партнёры будут включать фантазию, и создавать на основе этой библиотеки свои эксклюзивные приложения. Шаблонное приложение, которые мы также выложили в открытый доступ, должно было служить лишь примером реализации. Но на деле получилось так, что за основу партнёры берут именно шаблонное приложение, а некоторые и вовсе не видоизменяют его :) Но всё равно мы работаем над тем, чтобы партнёрам было проще кастомизировать шаблонное приложение под свой дизайн – в будущих версиях SDK будут конфигурационные файлы, в которых можно будет настраивать цвета, шрифты и многие другие параметры.



На данный момент SDK существует только для iOS, но мы прекрасно понимаем необходимость поддержки и других платформ, так что это вопрос времени. Пока конкретные сроки есть только по Android – SDK под него планируется к лету. С Windows Phone же пока всё не так радужно и там мы пока предлагаем только API.

Для нашей команды это был первый опыт разработки подобного решения, поэтому нет ничего удивительного в том, что мы наступили на некоторые грабли. Одна из проблем, с которой рано или поздно сталкивается любой разработчик – документация. Если в повседневной разработке мы уделяем ей не так много внимания, то для публичного решения нам пришлось постараться :)

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

Процесс интеграции довольно прост и сейчас состоит всего из 6 пунктов, которые очень подробно описаны в документации к SDK. В новой версии (над которой мы работаем уже сейчас) мы планируем сократить количество шагов по внедрению поискового модуля до 2-3. Распространять будущие версии SDK будем, скорее всего, через CocoaPods.

Success story


На момент написания публикации существует около 21 мобильных приложений, которые уже внедрили наш SDK. Причём около 16 из них принадлежат одному разработчику, который увлёкся процессом :) и выпустил приложения, адаптированные под разные языки и регионы – например, поиск билетов на арабском языке или поиск билетов в Крым.

Про свой опыт внедрения нашего SDK разработчик (Дмитрий) интересно рассказывает на странице спец-проекта с Хабром:
Сегодня я хочу максимально объективно и честно рассказать о своем опыте участия в партнёрской программе Travelpayouts. Моя совместная работа с Aviasales длится всего несколько месяцев, поэтому в этой статье не будет ни цифр с 6 нулями, ни красных Ferrari, ни офиса в Москва-Сити с сотнями сотрудников.

Вместо этого вы найдёте здесь несколько секретов по продвижению своего приложения в App Store, а также практические советы о том, как бросить офис и начать зарабатывать на продаже авиабилетов.
За 5 лет работы в крупном рекламном агентстве я окончательно перегорел. «Это был бы отличный бизнес, если бы не клиенты», – говорят у нас. Реклама – одна из самых жёстких индустрий, где из каждого сотрудника стараются выжать максимум, пока он не ушёл «на сторону клиента», где задач меньше, а зарплата выше.
Продолжение опыта компании Hunters BBS, LLC
Текучка в рекламном бизнесе ещё выше, чем среди стажеров в фастфуд. 2 года назад я наконец принял решение уйти из серого офиса и заняться своим делом, но невыплаченные бонусы и премии продолжали держать меня в рекламе ещё некоторое время. Я продолжал консультировать бывшего работодателя по вопросам стратегического планирования и продвижения в интернете, работая на дому. Параллельно размышлял о своём бизнесе.

«Золотая лихорадка» стартапов манила всех, и я не стал исключением. Однажды я наткнулся на английскую статью, посвящённую App Store Optimization (для тех, кто не в курсе, это SEO для App Store). Меня настолько увлекла эта таинственная и неизученная тема, что я решил полностью посвятить себя ASO на годы вперед. Так я и попал в новый дивный мир мобильных приложений.

Тогда я даже не представлял, что ждёт меня в будущем. На свои сбережения (около 5 миллионов рублей) я сформировал удалённую команду в Украине из двух мобильных разработчиков, разработчика серверной части и дизайнера на full time, и начал разработку, координируя команду самостоятельно. Спустя 9 месяцев работы моё первое приложение было готово. Это было приложение для знакомств и с третьей попытки суровые модераторы пропустили приложение в App Store.

Дейтинг оказался чрезвычайно конкурентной средой, где the winner takes it all. Добиться успеха в этой сфере ещё сложнее, чем создать убийцу Facebook. Традиционный замкнутый круг – если у тебя мало постоянных пользователей, то новые пользователи безвозвратно уходят. Нужны были дополнительные инвестиции и агрессивная рекламная кампания. Но проведя несколько встреч с российскими венчурными капиталистами, я твёрдо решил – работать снова на дядю я не хочу, ведь это вернёт меня к тому, от чего я так хотел уйти…

Однако именно в этот момент я открыл для себя всю силу и мощь ASO – замена всего одного ключевого слова в моём приложении увеличивала количество загрузок в 10 раз – с 200 до 2 000 в день!

image

Я начал размышлять над монетизацией существующего приложения и наткнулся на статью о партнёрской программе Travelpayouts от Aviasales. Но внедрять бронирование авиабилетов в дейтинг было не совсем разумно, а вот выделить поиск дешёвых авиабилетов в отдельное приложение мне показалось очень интересным. К тому же, меня всегда привлекали путешествия, а вид самолетов захватывал дух. Буквально через неделю в App Store появилось моё новое приложение Дешёвые авиабилеты от 729 авиакомпаний. Приложение было полностью создано на основе SDK от Aviasales.



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

Опыт недавно запущенного приложения Corner это только доказывает. Ребята из России проделали гигантскую работу, разработали действительно новый подход к поиску авиабилетов, были отмечены на главной странице российского App Store и вывели user experience на новый уровень. А что в итоге? Пока про них пишут СМИ, приложение находится в TOP10 категории (несколько тысяч загрузок в день в России). Как только журналисты затихают, приложение за считанные дни скатывается ниже TOP200 (несколько загрузок в день). Если бы команда проекта уделила ASO хотя бы 5% времени, потраченного на разработку, всё могло бы быть иначе.

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

Но вернёмся назад к моей истории. У моего приложения очень простой дизайн, однако, само приложение отлично справляется со своей задачей. Простота была поставлена во главу угла. Как и любой метапоиск, приложение сравнивает цены 729 авиакомпаний, 30 онлайн-агентств (OTA), фильтрует результаты и показывает пользователю самые дешёвые варианты перелёта. Фактически, это упрощённый аналог приложения Aviasales, который работает на их технологической платформе. Приложение было дополнительно локализовано на 24 языка и в него были добавлены полезные советы по бронированию авиабилетов (например, немногие знают, что если вы путешествуете семьёй или большой компанией, то покупать билеты стоит раздельно – как правило, это поможет вам существенно сэкономить).



Поскольку никакой PR-истории из такого простого функционала не раздуешь, все силы были брошены на App Store Optimization. Как оказалось, литературы на эту тему катастрофически мало, а профессионалов, которые действительно обладают ценными знаниями, во всём мире можно пересчитать по пальцам. Все статьи на тему ASO повторяют 10 стандартных пунктов, большинство из которых описаны в документации Apple – убирать пробелы между ключевыми словами, не дублировать слова в заголовке и в ключевых словах, локализация на самые популярные языки и т.д.

Все секреты App Store мне пришлось постигать самому. Когда мое моё первое приложение по бронированию авиабилетов начало приносить доход, я решил провести AB-тестирование ключевых слов необычным способом. Вместо того-чтобы тестировать ключевые слова на одном приложении и каждый раз ждать модерацию в течение 7 дней, я просто создал несколько приложений под разными именами и загрузил их в App Store, чтобы впоследствии выбрать одно наиболее удачное и продвигать именно его.

На практике оказалось, что на российском рынке лучше работают ключевые слова «дешёвые авиабилеты», на американском – названия авиакомпаний, а на европейском – ни то, ни другое. Лоукостеры, как вирус, поразили всю Европу. Сколько ни сравнивай, все всё равно дешевле Ryanair ничего не найдёшь, при этом лоукостеры не платят комиссию.

Неприятный сюрприз ожидал меня там, где ждёшь его меньше всего. При очередном обновлении приложений модераторы App Store пригрозили мне исключением из рядов разработчиков, объяснив это следующим: “Developers spamming the App Store with many versions of similar Apps will be removed from the iOS Developer Program”. Но после длительных переговоров я нашёл с ними компромисс.

Эксклюзив. Несколько слов о секретах App Store Optimization, которые вы не найдёте ни в одной книге или статье. По понятной причине все карты я раскрывать не буду, но вот некоторые приёмы, которые помогут вам с продвижением своего приложения:

• Если вы ориентируетесь на рынок США, то количество ключевых слов можно увеличить вдвое, введя дополнительные английские ключевые слова в испанской локализации. В США много иммигрантов из Мексики и Кубы, поэтому App Store автоматически включает ключевые слова из испанской локализации в ранжирование. Да, этот рынок крайне насыщен конкурентами, но если вы выйдете на американский рынок, вам не будут страшны ни валютные колебания, ни сюрпризы российских законодателей.

• Арабский рынок также очень перспективен. У населения высокий доход, а семьи большие (мужчина часто имеет от 2 до 4 жён и ещё несколько детей). Только на арабском рынке вы встретите бронирования авиабилетов на 7 человек из Дубаи в Нью-Йорк и обратно бизнес-классом за $25 000. Локализация приложения на арабский не составляет особого труда. Добиться высокого количества закачек можно выпустив на этом рынке отдельное приложение с одной — единственной арабской локализацией вместо английской. Местные модераторы очень любят приложения на арабском и помогут прорекламировать ваше приложение на первой странице App Store, что по моему опыту приносит около 11 000 загрузок в день только в одной Саудовской Аравии.



Надо отметить, что ASO полностью повторяет путь SEO — механизмы ранжирования постоянно совершенствуются и в игру включаются все всё новые и новые факторы. Но никакие механизмы не выведут и не удержат ваше приложение в ТОПе, если его рейтинг будет меньше 4. При этом довольные пользователи, в отличие от недовольных, редко оставляют отзывы. Со временем это приводит к тому, что рейтинги даже самого качественного приложения опускаются до 2-3 звезд, и рейтинг приходится подкручивать не совсем честными методами. Могу с уверенностью сказать, что все крупные игроки рынка (как в России, так и в США) используют чёрные методы ASO, покупая положительные отзывы и оценки пользователей на специальных биржах. Кстати, удовольствие недешёвое – около $1,25 за положительный отзыв.

А теперь о цифрах. Спустя 6 месяцев:

• Вхождение в TOP5 по выплатам в партнёрской программе (ноябрь 2014, всего около 50 000 участников);
• 2 500 проданных авиабилетов (17 полных самолетов Boeing-737);
• Суммарное количество закачек приложений: около 900 000 (5 000 в день);
• Постоянное присутствие в TOP100 US App Store (Travel). К примеру, родное приложение JetRadar (клон Aviasales для международного рынка) не входит даже в TOP200;
• Постоянное присутствие в TOP50 российского App Store (Путешествия);
• Текущий доход от 200 000 до 250 000 рублей в месяц (с учётом бонусов)
• Средний доход на 1 пользователя: 1,2 $ (да, маржа в этом бизнесе очень низкая, около 1% от стоимости авиабилета);
• Скромная конверсия посетителей в бронирования: 0,5%.

image

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

Конечно, успех – понятие растяжимое. Лично для меня успехом стал выход на стабильный доход, который превысил мою зарплату на предыдущем месте работы. В моих дальнейших планах увеличение конверсии в 3-4 раза, и работа над этим уже началась. Например, американцы очень любят истории, так называемый storytelling. Поэтому сейчас я тестирую разъясняющее видео Booking Cheapest Flights Tips, которое рекомендуется к просмотру всем новым пользователям приложения из США.

Ну, а теперь несколько слов о самом SDK:

Скажу честно, эмоциональная составляющая взяла верх над рациональной, и как показал опыт реальной работы – не зря. Коллектив команды партнёра очень дружелюбный, даже самые сложные вопросы решаются оперативно.

Само создание приложения на основе SDK в руках опытного разработчика занимает всего пару часов.
Ещё мне очень близок командный дух Aviasales и особенно принципы основателя компании Константина Калинова (кстати, советую всем подписаться на его страницу в Facebook). Чего стоит фраза Кости в интервью для ЦП «Мы даём до 70 процентов профита – столько никто не отдаёт. Я считаю, что жадность порождает бедность, поэтому мы не жадные». Шах и мат.

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

В ходе работы встречались и трудности, без них никуда. Было много нюансов с локализацией на различные языки, с региональными настройками и валютами — что-то не умещалось, что-то съезжало, что-то растягивалось. Но ребята из Aviasales быстро помогали с решением всех проблем.

Если вы обратили внимание на график, приведённый выше, то наверняка заметили провал в сентябре и октябре. Это не сезонность, просто мы не успели вовремя отловить баг, в результате которого пользователи на iOS8 не могли выбрать даты вылета и прилета. В результате продажи сильно просели.

От данного бага пострадало несколько пользователей в США и в Австралии – они умудрились купить билеты не на те даты. Вернуть все деньги они не смогли, поэтому я компенсировал пострадавшим пользователям около $2 500 из собственных средств. В США с Customer Service шутить нельзя, особенно когда работаешь на платформе Apple.

Вся статистика представлена в личном кабинете – он предоставляет самую полную информацию по пользователям, поискам и бронированиям в режиме реального времени.

image

Как было отмечено выше, подход Aviasales по разделению комиссии с партнёрами выше всяких похвал и, однозначно, это самые выгодные условия не только в России, но и во всем мире. Если ваш месячный доход при ставке 60% превышает 60 000 рублей, то ставка повышается до 70% при условии выплат на карту ePayments. Кстати, эта карта пригодится всем, кто работает в IT-индустрии, она выпускается в Лондоне от имени Electronic Payments Association и позволяет снимать наличные доллары с очень низкой комиссией – всего $1,5 за транзакцию в $200. Переводы внутри системы мгновенные и бесплатные.

В моих планах выход на чистую прибыль в 10 миллионов рублей в год в течение следующих 12 месяцев.
Теперь о том, чего не хватает в API и SDK. Однозначно, в SDK не хватает поддержки iPad. Также рано или поздно хотелось бы получить SDK не из нативных элементов, а более изящное решение. Например, взять за основу приложение JetRadar, очистить его от упоминания бренда и, по сути, сделать White Label SDK, который будет выглядеть более презентабельно в глазах пользователей. Уверен, что это позволит повысить средний доход в расчете на пользователя в 3-4 раза.

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

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

Вы также сможете существенно увеличить количество бронирований из США, если качественно локализуете свои сайты на английский язык с учетом нюансов американского рынка. У большинства граждан США нет паспорта (он необходим им только для поездок заграницу). Вместо этого, у американцев есть ID (driver’s license). Поэтому не стоит просить американцев вводить номер паспорта при бронировании внутренних рейсов, поскольку у них его попросту нет.

Пока с этими, по сути, очевидными задачами хорошо справилось только агентство trip.ru. Именно через их сайт проходит большинство бронирований из моих приложений на рынке США, Европы и в странах Ближнего Востока.

image

» Опыт внедрения SDK от сайта Any.travel

» Опыт внедрения SDK от сайта Aviapoisk

Есть и другие примеры адаптации продуктов под партнёрский контент. Ещё одним клиентом стал проект Travel.ru, разработчики которого (компания CleverPumpkin) использовали наш SDK с несколько изменёнными шаблонами.

Также пару недель назад собственным приложением с нашим SDK обзавёлся небезызвестный Тёма Лебедев. «Тревел — Артемий Лебедев и его путевые заметки» – как несложно догадаться из названия, приложение посвящено путешествиям дизайнера.

В завершение этого поста хочется поделиться с вами ссылкой на наш конкурс приложений на Хабре – победителю достанется 150 тысяч рублей на развитие проекта. Подключайтесь и полетели :)

Готовы ответить на ваши комментарии по партнёрской программе и по API/SDK.

Спасибо за внимание!
Tags:
Hubs:
Total votes 61: ↑50 and ↓11 +39
Views 22K
Comments Comments 39

Information

Founded
Location
Таиланд
Website
www.aviasales.ru
Employees
51–100 employees
Registered