web-dev-qa-db-ja.com

遅延処理のためにウェブサイトでクレジットカード/ Paypalを受け入れます

遅延処理のためにクレジットカードを受け入れるために、サイトに基本システムをセットアップしようとしています。私がやろうとしているのは、人々のグループのために大量の注文/クレジットカードを収集し、一定期間後にそれらのカードを処理して請求を行う必要があることです。

これは、人々のグループが個別に注文できるようにするためです。全員がグループから注文すると、X日以内にカードが処理されることを知っています。

私の質問は、これを行うための最善の方法は何ですか? Visa/Master Card/American Express、およびDiscover Cardを受け入れるようにします。また、このシステムを使用すると、Pay PalアカウントのクレジットカードではなくPay Pal情報を処理できるようになりますか?

また、これらのクレジットカードを保存する最良の方法は何ですか。セキュアなDBと、注文の送信にSSLを使用するページですが、すべてを受け入れる必要がありますか?明らかに、カード番号、CVV、有効期限、有効期限は、すべてデータベースで正規化できます。また、これらのカードの暗号化/復号化には何をお勧めしますか?後で処理するためにそれらを解読する必要があります。

私の質問に対するアドバイスは素晴らしいでしょう。

6
aherrick

クレジットカードの詳細の保存に関する簡単な回答:しない

良い議論については クレジットカードの詳細を保存する をご覧ください。

2
jmb

可能な限り、クレジットカードデータを保存しないでください。それを取り巻く法的な問題は山ほどあり(たとえば、CVVを保存できる状況はほとんどありません)、サイトがハッキングされた場合、責任を負うことになります。

このルートを下る必要がある場合は、最初に PCI DSS に精通する必要があります。少なくとも英国では法的要件です)。また、ホストに確認して、PCIに準拠していることを確認する必要があります(つまり、ホストは、このデータが保存されるサーバーを保護するために必要なレベルの物理的セキュリティを持っています)。

一部の支払いゲートウェイは、カードの詳細と金額を送信し、安全に保管できる一意のトークンを送り返す一種の承認後払い機能を提供します。その後、トランザクションを実行する場合は、このトークンを後日再送信します。この方法では、遅延データを提供できますが、機密データを自分で保存する必要はありませんので、これを検討することをお勧めします。

Edit:Authorize.netは米国の大きなゲートウェイだと思います-「Advanced Integration」APIには、上記で説明したことを実行するAuthorization Onlyモードがあります、トークンは最大30日間しか持続しません。おそらくこれはあなたのために働くかもしれません。

2
Tim Fountain

このようなことをすることの問題はここにあります。あなたはその人のカードを前もって請求することはできません...だからあなたはそれを保持します...たぶん承認によって、おそらくカード会社を使ってセーブをすることによってかもしれませんが、間違いなくあなた自身のサーバーでは...とにかく、その人は数日後に購入を確定し、たまたま新しいPCを購入しました。これにより、クレジット限度額が5ドルになりました。それで?数日前にシステムで許可されていた架空の100ドルの購入額に満たない95ドルです。良いUIイベントではありません。

私の会社は毎日、再請求書を扱っています。彼らは悪臭を放ちます。プログラミングの側面と顧客サービスの観点の両方から。 「私はそれを許可しませんでした...」と聞いたことがあるかどうかはわかりませんが、細かい活字にはあなたが言ったことが書かれています!

Paypalは、この遅れた方法で機能します。しかし、非常に多くの異なる観点から、PayFlowのような支払いプロセッサとの遅延トランザクションには触れません。

1
bpeterson76

この非常に古い質問がぶつかった理由は定かではありませんが、誰かがこの質問に出くわした場合、その時点では存在しなかったが非常に有用なものを追加します。

これを実行したい人で、まだクレジットカードプロセッサを選択していない人は、 Stripe を使用することを検討してください。

豊富な(詳細に文書化された)APIを使用すると、クレジットカードの詳細を自分のプラットフォームに保存できます。データはユーザーのデータを通過することなく(したがって、すべてのPCI DSSセキュリティ監査要件を回避)あなたのウェブサイトに完全に統合されています。

その後、Stripeはカード(または、1人の顧客に複数のカードを保存できるので顧客)のトークンを返します。その後、請求を処理する必要があるときにいつでも使用できます。

1
jcaron

Authorize.Netの顧客情報マネージャー のようなサービスを使用します。まさにあなたが望むことをするように設計されています。クレジットカード情報を顧客プロファイルとして保存します。その後、そのプロファイルを参照して、顧客のクレジットカード情報を再度必要とせずに将来の購入を行います。

0
John Conde