Приветствия - смотрели через доску, чтобы найти лучшее место для размещения, и это, кажется, нравится, но извинения, если это не по теме. В настоящее время делает технические исследования в Bitcoin лучшей практике, и как наиболее эффективно и надежно осуществлять интеграцию платежей.
У нас есть 5 клиентов, которые управляют телеги системы покупок, в нескольких странах и валютах: они заинтересованы в поддержке платежей Bitcoin. Тем не менее, они не слишком заинтересованы в управлении своими кошельками, и хотели бы, чтобы сделать это для них (в настоящее время со всеми платежами торгуемых ежедневно в долларах США). Некоторые из них используют API-интерфейсы, другие используют обратные вызовы со страницы своего платежного процессора. Некоторые запустить Magento, другие Кентико и т.д.
Клиент 1: 1500 товаров.
Клиент 2: 70 продуктов
Клиент 3: 4575 продуктов, и так далее.
2 другие также очень заинтересованы в принятии в игре и в приложении микро-платежей, эквивалентных $ 0,50 и $ 1,00 время. Они должны быть почти мгновенно.
Мы явно обеспокоены управления безопасностью, так что почти наверняка будет аутсорсинг фактической обработки с более оборудованным поставщика сделки, например, Coinbase. Наш PHP5 / Cloud на основе настройки происходят от лампы: Varnish, Nginx, PHP-FPM, RabbitMQ, NoSQL (Монго), и проходят через различный КДС.
Важные замечания: мы ...
- хотите "гибридный" подход, при котором мы делаем столько, сколько мы можем в браузере клиента (с JS), снижение риска безопасности клиентов. На самом деле, мы хотели бы людей платить непосредственно из кошельков на свой телефон или компьютер, а не нам делать что-либо вообще.
- хотите сохранить как можно меньше на сервере или в БД (очевидно, в зашифрованном виде).
- не хочет, чтобы генерировать или управлять кошельками для клиентов конечных пользователей, если это вообще возможно.
- хочу построить нашу собственную автоматизированную систему управления для нескольких клиентов, а не раскатывать пользовательский сайт, устанавливает сайт.
- предпочитают асинхронную обработку инфраструктуры / заказа, где это возможно.
Потому что мы должны управлять потребностями обработки несколько клиентов, наше современное мышлением является то, что лучше всего подходить к жизненному циклу 3 этапа:
1) Заказчик рассматривает продукт, и хиты "оплатить Bitcoin" (И такое) - форма, содержащая POST поля (продукт / заказ ссылок # и т.д.);
2) Клиент видит наш промежуточный экран оплаты процессор, с помощью QR кода и бумажник детали для поставщика с просьбой оплаты (что мы управляем через 3 участника);
-- клиент платит BTC адреса с внешним телефоном / компьютерной программой бумажником, деталью, посланной на 3-й партию, например Coinbase .---
3) (обратный вызов / обновления) Оплата принимается, клиент видит "благодаря" страницы, клиент инвентаризация / заказ завершена в фоновом режиме.
--- Потенциал на стороне сервера обратного вызова поставщику и / или жесткий перенаправлять их "платеж получен" стр. ---
Таким образом, вопрос: что это лучший способ сделать шаги после 2)?
В частности:
- Как мы связываем продуктовую поставщика # (также, порядок ссылки) они выбрали с Anon-отправителем Bitcoin кошелька адреса они используют для того, чтобы подтвердить, что человек заплатил за этот товар? Есть ли способ включить реф # с их сделками в QR-коде, который мы можем получить в функции обратного вызова?
- Является практичным / эффективным, чтобы создать кошелек для каждого продукта в инвентаре, создайте кошелек каждый раз для каждой отдельной сделки, или просто 1 одного поставщика бумажника, в котором они получают платежи?
- Предполагая, что они сканируют QR на экране в свой смартфон, и платить внешне от своего Android кошелька (например), как мы проверяем в фоновом режиме, чтобы увидеть, если он был получен - и как мы делаем, что сделать это как "мгновенное" насколько это возможно в их индивидуальном браузере клиента, не говоря "пожалуйста, обновите эту страницу" до 10mins в то время как проверка происходит?
- Какой самый лучший способ, чтобы инструктировать их "обновление" их экран, как только мы получили подтверждение фона? Мы должны быть в состоянии сказать, что платеж не удалось или отсутствует, а не генерировать транзакции каждый раз, когда кто-то пытается платежа, то есть мы не можем получить их, чтобы нажать на кнопку, и затем каждый раз получить к "спасибо, мы сообщим вам, когда ваш заказ будет завершен" экран. Мы должны быть в управлении, когда процесс действительно начался или тайм-аут. Мы рассматриваем функции автоматического обновления (сеансов), WebSockets и AJAX опроса.
Благодаря чрезвычайно заранее за любую помощь. Любите монету, и мы инвестируем много времени и энергии в поддержке его откачки, где мы можем. Просто пытаюсь получить голову каждого вокруг него.