Цена жизни дизайнера или сколько стоит графический дизайн? / Хабр
Не размытый ответ для дизайнеров и заказчиков. Ценообразование будет осознанным, честным и главное оправданным.
«Не стоит демпинговать» Кирилл АнтоновБольше 10 лет в сфере графического дизайна, из которых лет 7 я работаю как фрилансер, сейчас я работаю в своей студии и вопрос ценообразования преследует нас в каждом проекте.
Дизайнеры, студии или агентства пересматривают цены за услуги, из-за экономического положения дел в стране, в мире, влияют на цену и другие факторы. Цена зависит от нескольких факторов, которые влияют напрямую или косвенно — нужен только дизайн, с нуля или редизайн, брендинг или ребрендинг, количество SKU и другие дополнения, кто заказчик, кто дизайнер, срочность проекта, объём работы и так далее. Цена не будет одна и та же за объём работы, разный по сложности и на который уйдёт разное количество времени.
Выделю две формы оплаты: фиксированная и почасовая. Другие формы оплаты, такие как оплата ресурсов, рассматривать в этой статье не буду. Используя подходящую форму оплаты минимизируются риски и выстраиваются хорошие отношения между заказчиком и дизайнером. В студии используем фиксированную оплату, когда уместно почасовую.
Фиксированная оплата услуг дизайнера
Фиксированная оплата за конкретный объём работ используется когда заказчик знает, чего хочет, а исполнитель способен оценить сроки и этапы работы. Исполнитель называет заказчику конкретную сумму и срок за проект.
Этот тип оплаты используется чаще остальных в России и на территории СНГ. Учтите, что заказчик захочет узнать цену за проект, ещё до того, как будет известен точный объём задачи. Потому что для большинства заказчиков цена важный критерий выбора исполнителя.
Чтобы назвать примерную цену без точного представления объёма работы, задавайте вопросы, желательно уметь определять финансовые возможности заказчика и иметь опыт работы, чтобы понимать и свои возможности.
Но как бы точно вы не оценили проект, объём работы, может поменяться в процессе. За дополнительными действиями следует дополнительная оплата, об этом заранее предупреждают заказчика. Не помешает уведомлять об изменении цены и сроках по ходу работы, а также прописать соответствующий пункт в договоре, чтобы избежать недопонимания и конфликтов в будущем.
Фиксированная оплата проводится по факту или с предоплатой, в итоге цена корректируется с учётом сделанного объёма работы. У нас предоплата составляет 50%, редко 30%. Бывает оплата проходит поэтапно, а иногда заказчик готов оплатить сразу 100% перед началом работы, что не удобно с психологической стороны для исполнителя — деньги получил, работать не хочется. Ещё и в итоге возможно придётся возвращать часть суммы или выставлять дополнительный счёт.
Почасовая оплата услуг дизайнера
Почасовую оплату удобно использовать, когда работа идёт в режиме реального времени, когда нужна дальнейшая поддержка проекта или когда заказчику не понятно что конкретно он хочет и техническое задание получается размытым.
Для заказчика это плюс, так как он может свободно менять информацию, вносить изменения, добавлять и удалять. Но не каждый готов платить по часам, из-за того, что нет представления какой в итоге будет счёт.
Неизвестность пугает людей, особенно когда это касается денег.
При почасовой оплате исполнитель застрахован от риска потерять деньги из-за различных издержек, внесение правок, учёт идёт по часам. Но есть и другая сторона — не учитываются реальные трудозатраты. Например, сколько усилий потрачено на разработку логотипа за час, а сколько при наборе текста.
При такой форме оплаты договоритесь о частоте выплат, например раз в неделю, или поэтапно и стоит регулярно вести учёт по времени о проделанной работе и держать в курсе заказчика.
При новой задаче или дополнениях сориентируйте заказчика о том, сколько понадобиться часов, чтобы эта неизвестность не беспокоила его. Так вы избежите конфликтов.
«Почасовая оплата» Alex&AntonovИногда удобно использовать Time Tracker – приложение, которое фиксирует все действия работника — какие сайты посещал, какое ПО использовалось и конечно какое время затрачено. Компании переводят сотрудников на удаленный тип работы и такие приложения стали популярны. У нас, например, офиса нет, работаем удалённо и различные приложения помогают в работе.
Так из чего складывается цена в графическом дизайне?
Чтобы не брать цифры с потолка и не писать в поисковую строку «сколько стоит дизайн упаковки?» нужно отталкиваться от обоснованных, конкретных цифр. Мне не нравится слово формула, но вот она:
Годовые расходы/рабочие часы за год = цена часа работы
Запишите месячные расходы, а также желаемую зарплату, оценивайте объективно свой уровень, в любом случае, об этом говорят ваши работы и репутация. Далее переводим эти цифры в годовые, теперь посмотрите сколько производственных часов в настоящем году и разделите годовые цифры на количество рабочих часов за год, получится ваша цена за час работы. Ниже этой цифры опускаться нельзя, чтобы это было доходом, а не работой ради работы или что ещё хуже, работой в минус.
«Стоимость часа работы» Alex&AntonovПример.
У фрилансера есть месячные расходы: обеды, дорога, коворкинг, интернет, необходимые подписки и программы, курсы и развитие, рекламный бюджет и всё необходимое. На это нужно 71 000 р.
Есть личные расходы за месяц, сюда входит: аренда жилья, еда, собака, дети, покупка нового автомобиля, страховка и так далее. Исходя из опыта и уровня, у всех он свой, определяется возможный доход – 170 000 р.
Цифры за месяц: 71 000 + 170 000 = 241 000 р.
241 000 * 12 = 2 892 000 р – это цифры за год.
В 2021 году 247 рабочих дней, на работу уходит 6 часов в день, соответственно 247 * 6 = 1482 часа в год. Остаётся разделить годовые цифры на годовые часы: 2 892 000 / 1482 = 1 951,50 р
Округляем до 1952 — это цена часа работы, если работать ниже этой цифры, то это означает не получить зарплату полностью и не закрыть что-то из своих потребностей.
Ниже этой цифры опускаться нельзя, чтобы это было доходом, а не работой ради работы или что ещё хуже, работой в минус.
При оценке проекта, я отталкиваюсь от получившейся цифры. Для оценки проектов в студии также учитываются все расходы, куда будут входить другие пункты и зарплаты сотрудников: бухгалтера, менеджеров, пользуетесь клинигом — пожалуйста, включайте всё необходимое. Подорожала картошка, снизили стоимость аренды офиса — с изменением расходов корректируется и цена.
Опыт позволяет понимать сколько потребуется времени на ту или иную задачу и возможность возникновения каких-то сложностей, а это значит понимать сколько эта работа может стоить.
Личные наблюдения и рекомендации
Когда заказчик просит примерно оценить проект, не стоит называть минимальную цену, даже понимая, что главный критерий выбора цена.
На эту цену, скорее всего, и будет рассчитывать заказчик когда выберет вас исполнителем. Итоговая цена сильно выше озвученной раньше, вызовет негативную реакцию, заказчик подумает, что на нём хотят навариться.
Что же касается заказчиков, не стоит занижать объем работы или приуменьшать значимость, такое тоже бывает, чтобы услышать меньшую цену, если в итоге выяснится что объём работы другой, исполнитель пересмотрит цену или выставит соответствующий счёт по факту выполненной работы.
Если делаете скидку, скажите об этом и укажите в актах. Таким образом формируется лояльность и это поможет выстроить хорошие отношения между исполнителем и заказчиком.
Что касается различных приложений учёта времени. Одно время я работал на сайте UpWork, это западная биржа фриланса, чуть строже, но по сути тоже что и Fl.ru. Моя часовая ставка, на тот момент, составляла 25 USD. Проекты с оплатой по часам выполняются с открытым приложением, оно скачивается у них же на сайте, которое учитывает время работы, перерывы, курсор мышки и время бездействия, если исполнитель тянет время. Это приложение рандомно делает скриншоты монитора и все ваши действия заказчик видит в сохраненной истории. И это также не всегда удобно, если я делаю, концепт дизайна в бумажном блокноте.
Почитайте книгу 2014 года «Сожги своё портфолио» автора Майкла Джанда. Наш менталитет конечно отличается от западного, но информация будет полезной и сегодня, а книга может стать вашей настольной книгой, как была у меня какое-то время.
Есть книга 2020 года «Продай своё портфолио», в новой книге информация повторяется, но в старой книге полезной информации больше по некоторым мнениям.
«Сожги своё портфолио» Alex&AntonovОбсуждение денежных вопросов бывает напряженным, но если цена обоснована и подкреплена, вы честно оценили себя, то просто ведите себя уверенно когда называйте цену за работу. У меня есть правило, когда речь идёт об оплате, нельзя мешкать, мямлить или использовать смайлики в переписке. Люди чувствуют неуверенность собеседника.
Повторюсь по поводу адекватной оценки своего уровня и возможностей. Если в голове цифры ощущаются не комфортно, это почувствуют и заказчики. Чтобы цена часа работы стоила больше, нужно постоянно развиваться, повышать уровень, чем больше вы приносите пользы, тем выше ценник. Репутация и бренд также имеют прямое отношение к ценам.
И так, сколько стоит дизайн?
Неопытный дизайнер, с сертификатом двухнедельного курса по графическому дизайну, например, потратит много времени на работу, результат будет соответствующий его уровню.
Начинающий дизайнер может работать и быстро, но качество, будет ниже того, которое он способен выдавать. Час работы такого дизайнера стоит меньше часа работы дизайнера с опытом, который делает работу быстро, на профессиональном уровне.
Таким образом за меньшее время придётся заплатить больше, но это не значит потерять, это значит приобрести: заказчик экономит время и получает результат, который решает нужные задачи продукта.
И наоборот: сэкономив бюджет, обращаясь к неопытному дизайнеру, заказчик потеряет больше времени и получит слабый результат, который не принесёт никакой пользы, а возможно принесёт и кучку проблем, придётся потратить ещё раз время на то, чтобы переделать дизайн, соответственно придётся выделить на это и новые средства. А значит экономии бюджета тут никакой и нет.
«Ни какой экономии в этом нет» Alex&AntonovДизайн стоит столько, сколько пользы принесёт исполнитель и сколько усилий это займёт, учитываются и возможности заказчика, а на количество нулей в счете влияет экономическое положение в нашем мирке и много чего ещё.
Жизнь слишком коротка, чтобы зарабатывать мало.
Кирилл Антонов. Художник, дизайнер
Развивайтесь, будьте полезными, цените свой и чужой труд, заключайте приятные сделки, зарабатывайте хорошо и тратьте! Тратьте с удовольствием, ведь смысл жизни не в деньгах.
Наша студия работает полностью на удалёнке и также бываем в роли заказчиков, когда необходимо расширить штат для проекта. Надеюсь информация окажется полезной не только дизайнерам, но и тем, кто заказывает дизайн.
И да, идеальной формы оплаты нет, если знаете такую, поделитесь, пожалуйста, в комментариях.
Как дизайнеру начать продвижение в интернете
- /
- /
- /
- /
- /
КАК ДИЗАЙНЕРУ НАЧАТЬ ПРОДВИЖЕНИЕ В ИНТЕРНЕТЕ
Чтобы продвигать услуги проектирования и оформления интерьеров, дизайнеру важно вести онлайн-активность. Но отнюдь не каждый сайт и коммерческий аккаунт способен принести известность, новых клиентов и прибыль. Маркетолог и консультант ЭйДжей Агроул делится советами по ведению бизнеса в интернете.
Социальные медиа — инструменты, которые помогают частным специалистам и владельцам бизнеса привлекать потенциальных клиентов, взаимодействовать с заказчиками и продвигать свою компанию. Если вы хотите начать продавать свои услуги и увеличить продажи, стоит освоить маркетинг в социальных сетях. Когда я использовал эти стратегии, заметил увеличение трафика на сайте и смог превратить подписчиков в клиентов.
ЭйДжей Агроул
Маркетолог, консультант и генеральный директор Alumnify
Немного статистики
81 МИЛЛИОН
жителей России ежедневно используют интернет
62 МИЛЛИОНА
человек смотрят видео в YouTube
20 МИЛЛИОНОВ
человек используют Instagram
пользователей узнают о продуктах и услугах в интернете
потребителей мониторят социальные сети перед покупкой
Простые рекомендации
Определитесь с целью. Прежде чем опубликовать первый пост, ответьте себе на вопрос: зачем? Зачем вам
Публикуйте работы. Дизайнеру интерьеров довольно сложно показать квалификацию без демонстрации своих проектов. Behance и Pinterest — отличные площадки для размещения фото и видео лучших работ. В Instagram дизайнер может пообщаться с потенциальными клиентами и познакомиться с ожиданиями аудитории. Публикуйте последние проекты, делитесь своим мнением, не стесняйтесь размещать фотографии из частной жизни. Ваши подписчики хотят знать, что вы за человек. Личные фото вызывают доверие.
#BEHANCE
DA. design & architecture
Бюро архитектуры и дизайна
Интересно |
#BEHANCE
Andrey Ryazanov
Архитектор и дизайнер интерьеров
Интересно |
Заведите аккаунт в YouTube. Это вторая по величине поисковая система после Google. Пользователи гораздо охотнее смотрят видео о проекте, нежели читают описания к картинкам. Всегда пользуются успехом практические советы по проектированию и оформлению помещений.
Дизайн интерьера
«Дизайн в личностях»
GEOMETRIOUM
АТМОСФЕРА СВОБОДА
Не игнорируйте Facebook. Обратите внимание: дизайнеры интерьеров ориентируются на потребителей, а не на другие компании. На Facebook легко найти клиентов с помощью настройки рекламы. По сравнению с другими соцсетями
«Свечение»
Студия, возникшая в результате эволюции маркетинговой коммуникации, на стыке искусства, архитектуры и современных технологий
Интересно |
archpole
Русская дизайн- и архитектурная лаборатория
Интересно |
Интервью С Archpole |
Продумайте контент. Визуальный контент стимулирует вовлеченность пользователей. Подумайте о том, как создавать контент, который производит приятное впечатление. Красивые фотографии стильных интерьеров можно разбавлять близкими по тематике мемами и графически оформленными данными — инфографиками. Всегда помните о целях публикации (см. п. 1). Убедитесь, что содержимое ваших соцсетей соответствует им.
Общайтесь с подписчиками. Никто не любит прямые, «бессовестные» продажи, поэтому не игнорируйте аудиторию. Общение поможет установить контакт и доверие к вашему имени, бренду. Отвечайте на комментарии к постам, делитесь советами, выражайте собственное мнение в комментариях. Будьте социально активным.
Используйте полезные связи. Привлекайте лидеров мнений — пользователей соцсетей с большим количеством подписчиков, с близкими вам интересами. Рекомендации или взаимный обмен публикациями усилят приток аудитории на 3−10%. Эти связи могут помочь вам продвигать свое дело и в офлайне.
Отслеживайте аудиторию. Сервисы создания ссылок bit.ly и goo.gl помогут мониторить переходы подписчиков между вашими страницами в разных соцсетях. Анализ этих данных — много ли переходов по ссылкам или их нет совсем — будет полезен при планирований новых публикаций.
Подготовила Полина Весна / Оригиналы и источники: Inc. / Forbes / avertmedia / Adindex / РИФ + КИБ
К ДРУГИМ МАТЕРИАЛАМ
Хотите регулярно получать образовательные материалы «Среды обучения»? Подпишитесь на нашу рассылку! Отправляя свои контактные данные, вы соглашаетесь с Политикой конфиденциальности
Проект системы платежного шлюза— как работает Stripe? | by Think Software
Недавно мы представили новую главу нашего курса «Библия интервью по проектированию распределенных систем», в которой обсуждается системный дизайн платежного шлюза, такого как Stripe.
Библия собеседований по проектированию распределенных систем
Лучший курс подготовки к интервью по проектированию распределенных систем. Этот курс является единственным лучшим ресурсом для обучения, а не…
www.thinksoftwarelearning.com
Когда мы опубликовали главу о дизайне Stripe System, мы получили бесплатные электронные письма от наших студентов, в которых они хвалили детали этой главы. Например. проверьте письмо, которое мы получили.
В этой главе мы рассмотрели три различных аспекта услуги платежного шлюза:
- Хранение платежной информации клиента (например, кредитной карты или другой аналогичной платежной информации)
- Обработка платежа для выставления счета клиенту
- Для общая услуга платежного шлюза, как деньги переводятся от покупателя к продавцу безопасным и надежным способом
Давайте рассмотрим некоторые реальные платежные сценарии, в которых используется платежный шлюз.
Многие из нас теперь покупают много вещей на рынке Amazon. Чтобы что-то купить на Amazon, вам нужно иметь учетную запись клиента. Вы также предоставляете Amazon свою платежную информацию (например, информацию о кредитной карте и т. д.), которая надежно хранится на серверах Amazon. Теперь на Amazon вы можете покупать вещи не только у Amazon, но и у различных сторонних продавцов есть интернет-магазины на Amazon, и вы также можете покупать вещи у них. Когда вы проверяете товар, вы имеете дело только с Amazon. Amazon списывает деньги с вашей кредитной карты и предоставляет деньги продавцу.
Сейчас практически у каждого взрослого человека есть мобильный телефон. Большинство людей используют Android или iPhone. Если вы используете iPhone, вы заходите в Apple Appstore, чтобы установить приложение. Вы также можете хранить платежную информацию (например, информацию о кредитной карте и т. д.) в магазине приложений. Эта информация используется для совершения покупок от вашего имени, когда вы покупаете платное приложение или выполняете покупки в приложении. То же самое относится и к телефонам Android, когда вы заходите в Google Playstore. Даже Microsoft представила магазин приложений Windows, известный как магазин Microsoft, где вы можете покупать приложения и игры для своей ОС Windows. Чтобы приобрести приложение или игру в этих магазинах приложений, клиенты должны предоставить свою платежную информацию (например, информацию о кредитной карте). Затем платежная служба на этих платформах списывает средства с кредитной карты клиента.
Uber предоставляет различные услуги, такие как поездки и Uber Eats на своей торговой площадке. Если клиент использует Uber для бронирования поездки, Uber списывает деньги с кредитной карты клиента (или пассажира), которая надежно хранится на серверах Uber. Часть этой платы за поездку идет в Uber, а остальное передается водителю.
Когда вы регистрируете учетную запись в Netflix, Netflix также запрашивает ваши платежные данные и надежно сохраняет эти платежные данные (например, информацию о кредитной карте клиента) на серверах Netflix. Теперь подписка на Netflix вычитает ежемесячные платежи из платежной информации, предоставленной клиентом. В этом случае первая транзакция инициируется клиентом и называется транзакцией, инициированной клиентом (CIT). Последующие ежемесячные транзакции называются транзакциями, инициированными продавцом (MIT).
Stripe — это платформа для обработки платежей, которую можно интегрировать с сотнями платформ электронной коммерции, корзинами для покупок и другими сторонними приложениями, на которые многие предприятия полагаются каждый день. Сторонние продавцы используют его для интеграции услуг обработки платежей в свою платформу электронной коммерции, чтобы взимать плату со своих клиентов за услуги и товары, которые они предоставляют. Например, наш веб-сайт использует Stripe для безопасного взимания платы с наших клиентов за наш курс. Точно так же другие онлайн-продавцы интегрируют свои интернет-магазины с Stripe, чтобы взимать плату со своих клиентов за предоставленные товары и услуги.
В главе нашего курса мы обсудили системный дизайн сервиса Stripe Payment Gateway. Однако аналогичный дизайн может быть применен к другим платежным системам с небольшими изменениями.
Прежде чем вдаваться в подробности проектирования системы Stripe Payment Gateway, мы должны обсудить, как работает система кредитных карт. Традиционная платежная система с кредитными картами состоит из следующих участников:
Покупатель или держатель карты
Покупатель — это лицо, владеющее кредитной или дебетовой картой и использующее ее для покупки товаров или услуг у продавца/торговца. У каждого клиента есть уникальный номер кредитной карты, обычно состоящий из 16 цифр, но может быть и до 19.цифры в некоторых случаях.
Торговец
Торговец — это предприятие, которое продает товары и услуги клиентам и принимает кредитные, дебетовые или предоплаченные карты в качестве способа оплаты. Каждый продавец имеет торговый счет, который позволяет ему принимать кредитные или дебетовые карты в качестве платежей от клиентов (держателей карт) за предоставленные товары и услуги. У каждого продавца есть уникальный идентификатор продавца.
Эмитент или банк-эмитент (банк клиента)
Эмитенты карт — это финансовые учреждения или банки, которые выдают кредитные карты потребителям, т. е. они являются банками клиента. Банк-эмитент перечисляет деньги на покупку в банк-эквайер. Он несет ответственность за покупки, сделанные потребителем, если они не оплачены.
Эквайрер или банк-эквайер (торговый банк)
Банк-эквайер — это финансовое учреждение или банк, который обрабатывает платежи по кредитным или дебетовым картам от имени продавца. Эквайер позволяет продавцам принимать платежи по кредитным картам от банков-эмитентов карт в рамках ассоциации. Банк-эквайер несет ответственность за комиссию продавца, если продавец не предоставляет купленные товары или услуги.
Card Network Association (Scheme)
Карточные ассоциации включают Visa, Mastercard, Discover, American Express и т. д. Карточные ассоциации устанавливают обменные курсы и руководящие принципы квалификации и выступают в качестве арбитра между банками-эмитентами и банками-эквайерами, помимо выполнения других жизненно важных функций.
Все стороны, упомянутые выше, играют определенную роль в процессе транзакции. Процесс транзакции состоит из двух следующих этапов:
1. Этап авторизации
1. Владелец карты начинает транзакцию по кредитной карте, предъявляя свою карту продавцу для оплаты товаров или услуг.
2. Продавец использует свою машину для кредитных карт, программное обеспечение или шлюз для передачи информации о держателе карты и деталей транзакции в свой банк-эквайер или процессор банка.
3. Банк-эквайер (или его обработчик) собирает информацию о транзакции, выполняет базовую проверку и направляет ее через соответствующую карточную сеть в банк-эмитент держателя карты для утверждения.
4. Когда сеть карт получает информацию о транзакции, она выполняет базовую проверку, а затем информация о транзакции направляется между банками-эмитентами и банками-эквайерами через сеть кредитных карт.
5. Эмитент кредитной карты получает информацию о транзакции от банка-эквайера (или его обработчика) через карточную сеть и отвечает, одобряя или отклоняя транзакцию после проверки, чтобы убедиться, среди прочего, что информация о транзакции действительна, владелец карты имеет достаточный баланс для совершения покупки и что учетная запись находится в хорошем состоянии. В случае одобрения сделки эмитент удерживает сумму денег, необходимую для сделки.
6. Эмитент карты отправляет ответный код банку-эквайеру (или его обработчику) через соответствующую сеть. В случае одобрения транзакции высылается код успешной авторизации.
7. Код ответа достигает терминала, программного обеспечения или шлюза продавца и сохраняется там до расчета.
8. В случае успешного ввода кода авторизации продавец выдает товары/услуги покупателю (держателю карты).
Вопрос: Как на этапе авторизации каждый объект взаимодействует с другими объектами?
2. Этап клиринга и расчетов
1. Процесс клиринга и расчетов начинается в конце рабочего дня. В этом процессе все одобренные коды авторизации и детали их транзакций за весь день записываются в пакетный файл продавцом (или платежным шлюзом на стороне продавца) и отправляются в банк-эквайер по протоколу безопасной передачи файлов (SFTP). .
2. Банк-эквайер согласовывает и направляет его в карточную сеть по протоколу безопасной передачи файлов (SFTP).
3. Карточная сеть считывает все коды авторизации и детали транзакций из пакетного файла, предоставленного продавцом, затем записывает их в отдельные пакетные файлы, предназначенные для разных эмитентов, а затем передает эти пакетные файлы каждому эмитенту через SFTP.
4. При получении пакетного файла эмитент передает деньги, удерживаемые для одобренных транзакций, в карточную сеть, которая затем переводит деньги в банки-эквайеры.
5. Банк-эквайер перечисляет деньги на банковский счет продавца.
Вопрос: Сообщите нам, почему система кредитных карт до сих пор использует технологию безопасного протокола передачи файлов для клиринга и расчетов в конце дня?
Вопрос: Как система кредитных карт позволяет избежать двойного взимания платы с клиента за одну и ту же транзакцию?
Как правило, компании-эмитенты кредитных карт требуют соблюдения требований PCI для обеспечения безопасности онлайн-транзакций и защиты их от кражи личных данных. Любой продавец, который хочет обрабатывать, хранить или передавать данные кредитной карты, должен соответствовать стандарту PCI, согласно Совету по стандартам безопасности соответствия PCI. Достижение полного соответствия не является невозможным, но очень обременительным для небольших сторонних продавцов. Кроме того, у сторонних продавцов, веб-сайтов электронной коммерции и стартапов может не хватить ресурсов, чтобы беспокоиться о проблемах с соблюдением требований. Сейчас более 80% онлайн-компаний продают на международном уровне. Это приносит всевозможные проблемы, о которых нужно беспокоиться бизнесу. Как вы обращаетесь к разнообразным потребительским предпочтениям глобальной аудитории во время оформления заказа? Кроме того, способ, которым клиенты предпочитают оплачивать товары или услуги в Интернете, сильно различается в зависимости от того, где они находятся. В разных регионах могут быть дополнительные требования соответствия. Здесь на сцену выходит Stripe. Stripe позволяет предприятиям любого типа в любой точке мира легко находить и принимать популярные способы оплаты с помощью единой интеграции.
The Stripe работает как главный продавец и посредник по оплате для сторонних продавцов. Таким образом, Stripe регистрирует основной торговый счет в банке-эквайере и предоставляет виртуальные торговые счета сторонним продавцам. Интернет-продавцы/торговцы создают учетную запись виртуального продавца в Stripe и интегрируют рабочие процессы оплаты на своем веб-сайте с оплатой Stripe. На следующей диаграмме показано, как платежная система веб-сайта электронной коммерции работает с Stripe.
1. Владелец карты начинает транзакцию по кредитной карте, предъявляя свою карту к кассе Stripe на веб-сайте электронной коммерции в качестве оплаты товаров или услуг. У веб-сайта электронной коммерции есть виртуальный торговый счет в Stripe.
2. Stripe Checkout перенаправляет запрос на транзакцию и идентификатор продавца в Stripe, который выступает в качестве основного продавца и посредника по оплате для веб-сайта электронной коммерции.
3. Мастер-продавец (например, Stripe) выполняет некоторую базовую проверку, а затем использует программный шлюз для передачи информации о держателе карты и сведений о транзакции в банк-эквайер или процессор банка.
4. Банк-эквайер (или его обработчик) собирает информацию о транзакции, выполняет базовую проверку и направляет ее через соответствующую карточную сеть в банк-эмитент держателя карты для утверждения.
5. Когда сеть карт получает информацию о транзакции, она выполняет базовую проверку, а затем информация о транзакции направляется между банками-эмитентами и банками-эквайерами через сеть кредитных карт.
6. Эмитент кредитной карты получает информацию о транзакции от банка-эквайера (или его обработчика) через карточную сеть и отвечает, одобряя или отклоняя транзакцию после проверки, чтобы убедиться, среди прочего, что информация о транзакции действительна, владелец карты имеет достаточный баланс для совершения покупки и что учетная запись находится в хорошем состоянии. В случае одобрения сделки эмитент удерживает сумму денег, необходимую для сделки.
7. Эмитент карты отправляет ответный код банку-эквайеру (или его обработчику) через соответствующую сеть. В случае одобрения транзакции возвращается код успешной авторизации.
8. Код ответа доходит до мастер-мерчанта, т. е. Stripe через банк-эквайер.
9. Stripe обновляет сведения о транзакции в своей локальной базе данных и информирует продавца о статусе транзакции.
10. В случае успешного ввода кода авторизации продавец выдает товары/услуги покупателю (держателю карты).
11. Позже, в конце рабочего дня, на стороне Stripe запускаются рабочие процессы расчетов и клиринга для выполнения клиринга и расчетов по авторизованным транзакциям.
Итак, давайте обсудим функциональные и нефункциональные требования к системе Stripe Payment Gateway.
Теперь давайте обсудим некоторые функциональные требования к сервису платежного шлюза Stripe.
1. Первое функциональное требование состоит в том, что Stripe должен позволять сторонним продавцам использовать Stripe для списания средств с кредитных карт своих клиентов без соответствия стандарту PCI-DSS. Любой, кто занимается обработкой, передачей или хранением данных карты, должен соблюдать Стандарты безопасности данных индустрии платежных карт (PCI DSS). Самый простой способ для продавцов соответствовать требованиям PCI — никогда не видеть (и не иметь доступа) к данным кредитных карт своих клиентов. Это означает, что сторонние продавцы должны иметь возможность использовать Stripe таким образом, чтобы их клиенты отправляли информацию о своей кредитной карте (номер кредитной карты, срок действия и т. д.) непосредственно в Stripe, минуя веб-сайт продавца.
Вопрос: Сообщите нам в комментариях ниже, как Stripe позволяет продавцам взимать плату со своих клиентов, не вмешиваясь в процесс транзакции, который включает передачу информации о кредитной карте от покупателя к Stripe?
2. Конечно, чтобы использовать Stripe, сторонние продавцы должны зарегистрировать учетную запись в Stripe, используя свой адрес электронной почты и другую информацию.
3. Продавцы должны иметь возможность взимать плату со своих клиентов и при необходимости возвращать деньги.
4. Продавцы должны иметь возможность видеть все типы транзакций на своих счетах. Детали транзакции должны включать тип транзакции (например, покупка, возврат средств, предварительная авторизация, проверка, банковские переводы/выплаты и т. д.), статус (успех или неудача), заказ, связанный с транзакцией, дату и время и другие подобные важные сведения. Детали.
5. Продавцы должны иметь возможность создавать два разных типа платежных транзакций.
- Разовая покупка
- Периодические покупки (например, ежемесячная абонентская плата и т. д.)
6. Продавец должен надежно хранить информацию о платежах клиентов в Stripe для периодических платежей.
Кроме того, есть некоторые дополнительные требования, например:
- Stripe должен иметь возможность генерировать счет за покупку.
- Продавец может создавать отчеты за период времени (например, за месяц, год или настраиваемый диапазон дат).
- Stripe должен обеспечивать несколько способов оплаты (например, различные типы кредитных или дебетовых карт или другие способы оплаты, такие как электронные кошельки, банковский дебет и перевод, ваучеры наличными и т. д.)
- Stripe должен разрешить поддержку аудита.
- Нашивка должна поддерживать купоны на скидку и промокоды.
Нефункциональные требования включают следующее:
1. Stripe должен быть высокодоступным и отказоустойчивым. Подумайте о том, что произойдет, если покупатель попытается купить товар на веб-сайте продавца и не сможет оплатить его из-за недоступности сервиса Stripe. Это будет ужасным опытом как для продавцов (то есть клиентов Stripe), так и для их клиентов. Обычно мы измеряем доступность услуг с точки зрения 9с (например, доступность 99,99 % или 99,999 %).
2. Платежный шлюз Stripe должен быть очень надежным. Значит, он должен правильно выполнять свои функции. Это одно из самых важных нефункциональных требований для любой услуги, связанной с деньгами, потому что любой неправильный результат/вывод вызовет катастрофические проблемы. Например, Stripe не следует взимать с клиентов двойную плату за одну покупку. Точно так же Stripe не должен неправильно сообщать продавцу, что транзакция покупки прошла успешно, если это не так. Это означает, что платформа Stripe должна предлагать механизмы для обнаружения, предотвращения и восстановления ошибок в таких ситуациях, как:
- Отсутствие платежа
- Двойные платежи
- Неправильная конвертация валюты
- Неправильный платеж
- Подвешенные авторизации и т. д.
т. е. торговцы) и скорость транзакций, которые происходят во всем мире.
4. Сервис Stripe должен быть надежным. Мы не можем мириться с потерей данных клиентов (например, деталей платежных транзакций для заказов в интернет-магазине).
5. Служба Stripe должна быть строго согласованной. Мы не можем допустить возможной согласованности в финансовой системе, потому что это может снизить надежность службы. Например, подумайте о дублирующихся платежах и оборванных авторизациях — этого было бы трудно избежать в сервисе, использующем консистентность в конечном счете. Система будет взимать плату с клиента, но из-за возможной согласованности она все равно увидит отсутствующий платеж и, таким образом, попытается снова снять деньги с кредитной карты клиента. Это также могло привести к зависшим авторизациям, когда авторизация могла быть потеряна, потому что она была перезаписана второй повторной попыткой, которая произошла из-за возможной согласованности.
Вопрос: Как система может быть одновременно и высокодоступной, и строго согласованной? Разве это не противоречит CAP теореме ?
6. Безопасность. Сервис Stripe также должен быть очень безопасным. Это еще одно существенное нефункциональное требование к финансовой службе. Он включает в себя службу для обеспечения или обеспечения правильной аутентификации, авторизации и механизмов контроля доступа для защиты данных своих клиентов. Служба Stripe должна предоставлять API и генерировать страницы оформления заказа, которые должны использовать безопасные механизмы связи, такие как HTTPS, чтобы вся связь была зашифрована. Кроме того, Stripe должна безопасно хранить всю информацию о клиентах на своих серверах.
Мы также обсудили вышеизложенное в формате видео на нашем канале Youtube.
Вы можете найти подробный дизайн службы платежного шлюза Stripe вместе со всеми микросервисами и тем, как микросервисы взаимодействуют друг с другом для выполнения функциональных и нефункциональных требований в нашем курсе «Библия интервью по проектированию распределенных систем»:
Библия собеседований по проектированию распределенных систем
Лучший курс подготовки к интервью по проектированию распределенных систем. Этот курс является единственным лучшим ресурсом для изучения, а не…
www.thinksoftwarelearning.com
Что касается нашего курса «Библия интервью по проектированию распределенных систем», этот курс является отличным ресурсом не только для улучшения ваших навыков проектирования распределенных систем, но и для прохождения собеседований по проектированию распределенных систем и таргетинг уровня L5+ в таких компаниях, как Facebook, Google и т. д. Книга/курс все еще находится в стадии разработки. Уже есть немало глав, в которых обсуждается дизайн TinyURL, Twitter, Distributed Cache, Uber, Whatsapp, Netflix, Dropbox, Stripe и т. д.
Курс также включает в себя раздел, посвященный инсценировкам собеседований по проектированию системы. Это отличный ресурс, потому что он даст вам опыт настоящего интервью по проектированию распределенной системы. Это позволит вам ознакомиться с реальными примерами интервью по системному проектированию. Вы увидите, как опытный интервьюер может задавать различные вопросы для оценки кандидата при разработке простой распределенной системы, такой как сервис TinyURL, и как кандидат отвечает на вопросы интервьюеров. Какие ошибки допускают кандидаты во время собеседований по проектированию системы и как их избежать на собеседовании. Кроме того, добавляется больше пробных интервью по проектированию системы.
Практика проектирования системы: проектирование платежной системы
Очередь занимает центральное место в надежной платежной системе. Изображение Alexas_Fotos с сайта PixabayАвик Дас
Ведущий инженер @ LinkedIn
Опубликовано 11 мая 2020 г.
+ Подписаться
Как обычно: может быть трудно получить опыт проектирования сложных систем, если у вас ранее не было такого опыта, особенно если вы не знакомы с соответствующей областью бизнеса. Сегодня я хочу рассказать о том, как спроектировать платежную систему, с которой вы можете столкнуться на собеседовании по проектированию системы.
Проблема заключается в следующем: разработать платежную систему, в которой пользователи авторизуют платежи (обычно при покупке продукта), а система взаимодействует с внешними платежными системами, такими как Visa, для завершения платежа.
Архитектура на основе очередей
Платежные системы требуют высокой надежности, поскольку последствия невыполнения платежей, запрошенных пользователями, или многократного взимания платы с пользователей слишком велики. Для достижения этой надежности система помещает «платежное задание» в очередь, которая обрабатывается асинхронно.
Центральная часть этой архитектуры подробно описана в моем подробном обзоре очереди надежности.
- Внешний сервис принимает платежный запрос пользователя. Первым делом необходимо создать запись в базе данных, в которой говорится, что запрос пользователя получен и ожидается оплата. Запись — это то, что будет использоваться для сообщения пользователю статуса платежа.
- Внешняя служба также помещает сообщение в очередь платежей со следующей информацией: ссылка на вновь созданную запись в базе данных и любые сведения о платеже (какая кредитная карта используется, сумма и т. д.). Если на этом или предыдущем шаге произошел сбой, пользователь немедленно уведомляется об этом.
- Асинхронный процессор читает из очереди, обрабатывая отдельные платежные задачи. Обработка является идемпотентной и устойчивой к сбоям, как описано в моем сообщении в блоге. Основная цель обработки — произвести платеж с использованием внешней платежной службы (например, Visa) и обновить запись базы данных платежей пользователя на основе результата.
- Как только платеж проходит или завершается сбоем без возможности восстановления (например, внешняя служба отклоняет платеж из-за недостатка средств), асинхронный процессор уведомляет пользователя. Как правило, это осуществляется путем отправки пользователю электронного письма.
Эти части составляют центральный поток платежной системы, в котором пользователь запрашивает платеж, и платеж осуществляется через внешний сервис. Центральный поток, реализованный таким образом, обеспечивает надежность и отказоустойчивость, но в нем много недостающих элементов. Например, для соблюдения законодательства могут потребоваться возможности аудита.
Я недостаточно знаком с предметной областью бизнеса, чтобы конкретизировать остальную часть системы (поэтому я, вероятно, не справился бы с этой задачей), но я знаю достаточно, чтобы сказать, что архитектура, основанная на очередях, является важной частью этой системы. архитектура.
Первоначально эта статья была опубликована на веб-сайте Hiring For Tech. Если вы хотите получать от меня больше материалов, подпишитесь по электронной почте или на LinkedIn. И, пожалуйста, поделитесь в своих сетях, чтобы другие могли узнать о Hiring For Tech!
Наем для техники
56 707 подписчиков
+ Подписаться
Собеседование по проектированию системы
10 января 2022 г.
«Это не персики со сливками и для мужчин»
29 нояб. 2021 г.
Это нормально быть не в порядке
2 нояб.
2021 г.Что еще не так с техническим наймом
15 фев. 2021 г.
Один размер не подходит для всех
8 февраля 2021 г.
Формальное собеседование
1 февраля 2021 г.
Интервью ученичество
25 января 2021 г.