Вопрос

Нас попросили создать систему обработки онлайн-платежей, подобную Paypal, для нашего национального использования.

существует ли версия этого с открытым исходным кодом ?(чтобы я мог изучить это и, возможно, улучшить)

есть ли какие - либо книги / ресурсы / материалы, которые могли бы быть полезны ?

Как я могу взяться за выполнение такой огромной задачи ?

Это было полезно?

Решение

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

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

Для начала просто спроектируйте систему, используя что-то вроде Payflow, для выполнения фактической обработки.

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

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

http://www.allbusiness.com/sales/internet-e-commerce-securelectronic-transaction/2310-1.html

Другие советы

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

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

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

+по 1 каждому @James Black и @eyze за их ответы.Это не второстепенное мероприятие, и если вы не работаете в компании, которая уже каким-то образом связана с сетью обработки кредитных карт, вам предстоит много работы и множество проблем с соблюдением требований.Их ответы были достаточно хороши, так что мне особо нечего добавить, но я хотел бы добавить вот что.

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

Кроме того, чтобы ответить на ваши конкретные вопросы:

  • Я не верю, что существует что-либо с открытым исходным кодом.Основа, на которой осуществляется обработка кредитных карт, настолько чувствительна и является такой мишенью для злоумышленников, что существует вполне реальная необходимость ограничить знания о том, как обрабатывать карты, исходя из необходимости знать.(Я потерял счет количеству соглашений о неразглашении, которые мне были представлены только для того, чтобы изучить эту идею.)

  • По той же причине я сомневаюсь, что вы найдете много интересного в книгах и т.д.

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

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

Хитрость в решении любой большой проблемы заключается в том, чтобы разбить ее на мелкие проблемы.

Так что сделай это.

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

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

Как только вы начинаете думать о проблеме с карандашом и бумагой в руках, это становится очень легко, ИМХО :)

Лицензировано под: CC-BY-SA с атрибуция
Не связан с StackOverflow
scroll top