web-dev-qa-db-ja.com

定期支払いシステムを使用してWebアプリケーションを構築することへの恐れを克服するにはどうすればよいですか?

私はRuby on Rails開発者です。Webアプリケーションを作成したいと思います。ユーザーが製品を使用するための有料サブスクリプションを取得できるようにします。そのため、定期的な請求システムが必要になります(Paypalなど)。

しかし、私は他の人からのお金を処理するので、失敗していくつかの悪い間違いを犯す恐れがあります。 RailscastsのRyanBates このような定期支払いシステムを実装する方法

そのような製品を作ることへのこの恐れを克服するためのあなたのアドバイスは何ですか?

そのようなシステムを設計するときに計算する必要があるリスクは何ですか?

2
sn3ek

1)定期的な支払いを行うためにサービスを使用する権利があるため、セキュリティについて心配する必要はありません。最大のリスクは、支払いデータを悪意のある個人に公開する可能性があることです。他人の問題でクレジットカードデータを安全に保管してください。

2)本当に良いテストを書いてください。単体テストにとどまらず、統合、機能、および動作のテストに進みます。 「testCardAccepted」をテストするだけでは不十分です。また、「カードが正常に処理され、1年が経過し、キャンセルしなかった場合、テストカードアカウントに9.99の請求が1回表示されるはずです」などのテストも必要です。 「私のカードが...で、有効期限が過ぎていて、更新までに1か月あるとすると、カード情報の更新を求める電子メールが表示されます。」

3)開始する前に、分析と設計を行います。販売者からの定期的な支払いを行うために使用できる、十分に確立されたライブラリがあるかどうかを確認します。問題を本当によく理解し、問題のある領域が何であるかを理解します。良いライブラリは思いつきませんが、再利用できる高品質のサンプルコードが販売者にあるかどうかを確認してください。

4)マーチャントとの取引のために、独自の別個の銀行口座でLLCまたは企業を形成するようにしてください。現地の法律で、事業許可を含む債券またはその他の保険に加入することが義務付けられているかどうかを確認してください。

私があなたに持っているすべてのアドバイス。

5
ipaul

Paypalを使用しているという事実は、ITから法務および経理部門へのリスクを軽減します。安全な方法で支払いを処理する必要はありません:Paypalはそうします。クレジットカード番号を安全に保管する必要はありません。Paypalはそうします。

何か問題が発生した場合は、Paypalの録音を証拠として、クライアントと問題について話し合うのは経理部門の責任です。最悪の場合、顧客は実際に支払いを行いますが、Webアプリケーションは、Paypalが支払いを処理したことを記録できません(または魔法のように忘れます)。この場合、会計士は単にオーバーライドを設定して、支払いが効果的に行われたことをWebアプリに示すことができます。

4