Написание онлайн-системы обработки платежей

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

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

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

Как я могу взять на себя такую ​​огромную задачу?

4 ответа

Решение

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

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

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

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

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

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

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

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

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

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

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

Также, чтобы ответить на ваши конкретные вопросы:

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

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

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

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

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

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

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

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

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

Другие вопросы по тегам