Jump to content

Ethereum в VamShop - Инструкция по настройке VamShop для оплаты заказов с помощью eth blockchain!


support

Recommended Posts

support

Здравствуйте!

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

В данной статье расскажу как настривается модуль оплаты Ethereum Blockchain в VamShop и как это выглядит со стороны посетителя, покупателя.

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

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

Сразу покажу как всё это выглядит со стороны покупателя.

Процес оформления заказа в VamShop стандартный.

Добавляется товар в корзину:

Screenshot-from-2018-03-15-22-48-35-300x

Затем переходите на страницу оформления заказа и выбираете способ оплаты Ethereum

Screenshot-from-2018-03-15-22-48-48-300x

и переходите на страницу подтверждения заказа:

Screenshot-from-2018-03-15-22-48-59-300x

Вот здесь начинаются отличия, если сравнивать со стандартными модулями оплаты вроде Яндекс.Кассы и подобных.

В чём разница.

Нам необходимо провести транзакцию через blockchain эфира, т.е. оплатить заказ с помощью эфира (eth монет).

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

Кошелёк может быть любой, в любой системе, хоть "холодный" кошелёк, хоть на бирже, хоть локальный кошелёк, хоть myetherwallet.com, не важно.

Главное, что б этот кошелёк быть зарегистрирова в блокчейне эфира и был видел в блокчене, например в обозревателе https://etherscan.io/

На странице подтверждения заказа генерируется картинка с qr кодом, в котором зашифрован номер eth кошелька магазина, на который необходимо сделать перевод.

Для чего нужен qr код?! 

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

Ниже номер кошелька написан в открытом виде, просто текстом.

Номер кошелька магазина указывается в настройках модуля оплаты Ethereum в Админке - Настройки - Способы оплаты.

Screenshot-from-2018-03-15-22-59-53-300x

Затем на странице подтверждения заказа, ниже qr кода указывается сумма в eth монетах на момент оформления заказа, т.е. сумма заказа пересчитывается по курсу на момент оформления заказа и записывается в базу данных и уже не меняется, остаётся постоянной.

Данная сумма в eth монетах выводится для покупателя, что б он произвёл оплату заказа в eth монетах, любым доступным ему способом.

Например можно напрямую сдлать перевод с кошелька покупателя на кошелёк магзаина. Можно оплатить через любые обменники, указав в качестве получается eth кошелёк магазин, можно с различных бирж оплатить на кошелёк магазина, вариантов много.

Вот например оплата заказа может выглядеть например так:

  1. К примеру, это может быть какой-либо мобильный кошелёк на смартфоне, с помощью смартфона сканируете qr код кошелька, указывается сумму перевода и производите оплату заказа.
  2. Либо с помощью myetherwallet.com делаете перевод с Вашего кошелька на кошелёк магазина.
  3. Не важно, каким образом, главное, что б транзакция (оплата заказа) попала в blockchain эфира, т.е. в единую базу данных всех транзакций (переводов).
  4. Всё это можно отследить в любом blockchain обозревателе, например на https://etherscan.io/
  5. Всё, допустим, Вы оплатили Ваш заказа с помощью eth монет. Сумма оплаты должна быть точно такой как указано на странице подтверждения заказа.
  6. Убедиться в том, что Ваша оплата попала в blockchain ethereum можно просто посмотрев Ваш кошелёк и переводы из кошелька.
  7. Вот например как будет выглядеть перевод на кошелёк магазина.
  8. Screenshot-from-2018-03-15-23-00-26-300x Screenshot-from-2018-03-15-23-00-30-300x

т.е. перевод попал в blockchain сеть эфира, где с помощью майнеров данная транзакция будет подтверждена, т.е. будет информация, что да, действительно, покупатель X перевёл такую-то сумму продавцу Y.

Статус Pending - это ожидание подтверждения транзакции (перевода) майнерами.

Статус Success - значит транзакция (перевод) подтверждена и баланс на Вашем кошельке увеличился на указанную в переводе сумму.

т.е. баланс Вашего кошелька увеличивается на сумму оплаты заказа только когда статус транзакции Success.

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

Раз транзакция видна у Вас в кошельке, значит она попала в общую базу данных (в блокчейн), через некоторое время она будет подтверждена (зависит от суммы комиссии (gwei), которую Вы выставите), но по факту любые транзакции в блокчейне ethereum подтверждаются майнерами довольно быстро, т.е. можно сказать, что если транзакция зарегистрирована в блокчейне ethereum и она видна в Вашем кошельке, то с высокой долей вероятности это значит, что деньги (монеты eth) появятся в Вашем кошельке. В блокчейне ethereum по моему опыту переводы с кошелька на кошелёк занимают максимум 10 минут.

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

В плане подтверждения операций майнерами ethereum быстрее и стабильнее работает (во всяком случае на момент написания статьи в марте 2018 года).

9. Всё, мы заплатити со своего коешлька eth на кошелёк eth магазина.

10. Заказ в админке магазине виден сразу же как только покупатель перешёл на страницу подтверждения заказа.

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

 

В модуле оплаты Ethereum реализована автоматическая смена статуса заказа на оплаченный.

Для этого на странице подтверждения заказа есть ссылка - Проверить статус оплаты заказа!

После оплаты заказа покупатель просто нажимает эту ссылку.

Это необязательно конечно делать, в админке магазина у Вас уже заказ и так виден и Вы можете связаться с клиентом в любом случае.

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

Что происходит когда нажимает клиент эту ссылку.

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

и сравнивается сумма заказа с последними транзакциями на кошельке магазина.

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

Screenshot-from-2018-03-15-22-49-09-300x

в админке так же статус заказа меняется, в данном примере статус заказа автоматичес поменялся на Доставлен.

Screenshot-from-2018-03-15-22-49-23-300x Screenshot-from-2018-03-15-22-49-40-300x

Статус оплаченного заказа меняется в настройках модуля оплаты Ethereum в Админке - Настройки - Модули - Оплаты.

Screenshot-from-2018-03-15-22-59-53-300x

Всё, на данный момент таким образом реализован модуль оплаты Ethereum в движке интернет-магазина VamShop.

т.е. максимально избавляемся от каких-либо посредников.

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

Всё прозразчно и в любой момент можно проверить любые движения, транзакции в блокчейн обозревателе, например на https://etherscan.io/

 

P.S. Аналогичным образом работает модуль оплаты Bitcoin в VamShop.

 

 

 

 

 

 

Link to post
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Guest
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

×
×
  • Create New...