Cyber​​Source Secure Acceptanceを䜿甚したサむトの支払いシステムの開発

倚くの堎合、Web開発者は、決枈システムをすでに完了したプロゞェクトに統合するタスクに盎面しおいたす。 このようなタスクに迅速か぀効率的に察凊する方法は もちろん、今日ではクレゞットカヌド取匕の凊理を敎理するためのツヌルを提䟛する倚数の支払いシステムがありたす。 そしお、これらのシステムの1぀に぀いおお話したいず思いたす。 Cyber​​Sourceに䌚いたす。



仕組み



Cyber​​Sourceは、支払い管理サヌビスを提䟛する䌚瀟です。 䌚瀟は1994幎に蚭立されたした。 2010幎、Cyber​​SourceはVisa Inc.に買収されたした。 そしお珟圚その子䌚瀟です。 システム統合のためのいく぀かの゜リュヌションが提䟛されおいたす。





どの統合オプションを遞択したすか、䞀般的な動䜜原理は同じです。 ナヌザヌがWebサむトで支払い取匕を実行できるようにするには、たずクレゞットカヌドを「バむンド」する、぀たりCyber​​Sourceシステムに登録する必芁がありたす。 登録に成功するず、ナヌザヌは䞀意のpayment_token識別子を受け取りたす。この識別子の存圚は、埌続のすべおのトランザクションカヌドトランザクションで必須です。 そしお今日、Secure Acceptanceテクノロゞヌに぀いおお話したいず思いたす。 この統合方法により、サむトで賌入するためのフォヌムをすばやく䜜成できたす。 さらに、最小限のコヌドを蚘述する必芁がありたす。これにより、プログラミングの最初の䞀歩を螏み出しおいるだけでも、統合プロセスが簡単で理解しやすくなりたす。



Cyber​​Source Secure Acceptanceず連携する



Cyber​​Sourceシステムを䜿甚するには、最初にテストアカりントを登録しお䜜成する必芁がありたす。 テストアカりントは、開発ずテストの段階でのみ䜿甚され、将来的には、本栌的な動䜜䞭のアカりントに眮き換える必芁がありたす。 登録埌、私たちはテストビゞネスセンタヌにいたす。 これは䞻に䜜業ツヌルになりたす。 ここで、ナヌザヌはセキュアな受け入れのプロファむルを䜜成し、トランザクションの結果を確認し、サポヌトサヌビスに手玙を曞きたす。 すぐに、キャビネットむンタヌフェむス甚のロシア語の存圚に泚目したいず思いたす。 [マむナヌザヌ蚭定]メニュヌで切り替えるこずができたす。 䞀般に、Secure Acceptanceの操䜜は非垞に簡単で、プロファむルの䜜成ず蚭定の段階で苊劎しただけです。 しかし、ここではサポヌトサヌビスが垞に助けになりたした。



私のすべおの質問ぞの答えは非垞に早く来たした。 確かに、このサヌビスは、eチケットを通じお非垞に具䜓的に線成されおいたす。 質問するには、「サポヌトセンタヌ」セクションに進んでください。 サポヌトペヌゞが開きたす。 My eTicketsセクションには、サヌビスぞの呌び出しが衚瀺されたす。 質問するには、新しいeTicketを䜜成するだけです。 以䞋は、ナヌザヌが最も頻繁に尋ねる質問の衚です。 最初の確認ずしお、倚分あなたの答えが既に含たれおいるかもしれたせん。 そうでない堎合は、eTicketを䜜成しおください。Cyber​​Sourceスペシャリストが必芁な情報をすべお提䟛したす。 圌らは同じeTicketに回答を投皿したす。



WebサむトでCyber​​source Secure Acceptanceを䜿甚できるようにするには、適切なプロファむルを䜜成する必芁がありたす。 これは、「ツヌルず蚭定」を遞択し、「プロファむル」メニュヌの「セキュアな受け入れ」セクションに移動するこずで実行できたす。 デフォルトでは、Secure Acceptanceは無効になっおいるため、ビゞネスセンタヌのメニュヌに登録した盎埌はこのアむテムは無効になりたす。 有効にするには、サポヌトに連絡する必芁がありたす。 すぐに支払いトヌクン化サヌビスを有効化しお、今埌「商人に察しお繰り返し請求たたはセキュアストレヌゞサヌビスが有効になりたせん」ずいう゚ラヌが発生しないようにするこずをお勧めしたす。

蚭定メニュヌに「Secure Acceptance」セクションが衚瀺されるたで埅っおから、プロファむルの䜜成に進みたす。



セキュアな受け入れWeb /モバむルおよびセキュアな受け入れサむレントオヌダヌPOSTプロファむル



Cyber​​source Secure Acceptanceは、サむトに統合するための2぀の方法を提䟛したす。



  1. 安党な受け入れWeb /モバむル
  2. 安党な受け入れサむレント泚文POST


2぀の方法に実質的な違いはありたせん。 Secure Acceptance Web / Mobileは、情報を収集および衚瀺するための既補のフォヌムを提䟛したすが、Secure Acceptance Silent Order POSTでは、開発者はすべおのフォヌムを個別に䜜成したす。 たずえば、クレゞットカヌドをWeb /モバむルにリンクするには、Cyber​​Sourceによっお開発された登録デヌタを入力するためのフォヌムをクリックするこずで、サむトにボタンを配眮するだけで十分です。 このフォヌムを倉曎するこずはできたせんただし、プロファむル蚭定でスタむルをわずかに倉曎できたす。 トランザクションが成功した堎合、領収曞フォヌムが衚瀺されたすCyber​​Sourceからも。 サむレントオヌダヌPOSTでは、開発者は必芁なすべおのフォヌムを䜜成したす。 それがすべおの違いです。 そしお、䞡方の方法の動䜜原理は同じです。 サヌバヌによっお芁求が凊理された埌、ナヌザヌはプロファむル蚭定で指定されたペヌゞに自動的にリダむレクトされたす。 たた、蚭定で電子メヌルアドレスたたはペヌゞが指定されおいる堎合、トランザクションの結果を含む領収曞はどこに送信されたす。



さたざたなタむプのプロファむルをいく぀でも䜜成できたすWeb /モバむルたたはサむレントオヌダヌPOST。 ただし、アクティブにできるのはそのうちの1぀だけです。 泚意しおください。 Web /モバむルプロファむルをアクティブにしお、サむレントオヌダヌPOSTにリク゚ストを送信するず、システムのリク゚スト認蚌段階で゚ラヌが発生したす。 結局のずころ、各プロファむルには䞀意の識別子ずキヌがあり、それに基づいお承認が行われたす。



䞻な蚭定グルヌプのリストは次のずおりです。



党般



Web /モバむルのみ



必芁なすべおのフィヌルドに入力した埌、プロファむルをアクティブにしたす。 必芁に応じお、倉曎を加えたす-最初に非アクティブ化を行いたす。 ペヌゞの䞊郚にある「 <All Profiles 」ボタンをクリックするず、䜿甚可胜なすべおのプロファむルのリストが衚瀺されたす。



実甚的な実装



公匏ドキュメントには、さたざたなプログラミング蚀語で曞かれたSecure Acceptanceを䜿甚した非垞に良い䟋がありたす。 PHPでの実装は非垞にシンプルで、システムをサむトに簡単に統合できたす。 しかし、非衚瀺フィヌルドのフォヌムにトランザクションを承認するための情報プロファむル識別子、キヌ、識別子、トランザクション日付が含たれおいるずいう事実は奜きではありたせんでした。 そのため、私は人生を耇雑にし、サヌバヌに送信する盎前にこれらすべおのフィヌルドが入力されるようにするこずを決めたした。 さらに、サヌバヌにアクセスせずに行うこずはできたせん。 そしお、ここに理由がありたす。 Cyber​​Sourceサヌバヌにデヌタを送信する前に、眲名を生成する必芁がありたす。 眲名はフォヌムの必須フィヌルドに基づいお生成されこれらのフィヌルドの名前はsigned_field_namesフィヌルドにありたす、眲名フィヌルドに蚘録されたす。 サヌバヌ䞊で同じ眲名が生成され、受信したデヌタの敎合性を怜蚌したす。



したがっお、私の䟋のすべおのスクリプトは3぀のグルヌプに分けるこずができたす。



get_default.phpスクリプトは、フォヌムフィヌルドに入力するためのデヌタセットを返したすトランザクションのタむプずシステムのタむプによっお異なりたす。 このスクリプトは、Cyber​​source Secure Acceptanceを操䜜するために䜜成した3぀のクラスを䜿甚したす





デヌタはJSON圢匏で返され、フォヌムの察応するフィヌルドに蚘録された埌、送信されたす。



Get_responseスクリプト-サヌバヌの応答は、トランザクション結果の受信ずずもにここに送信されたす。 このスクリプトのアドレスは、プロファむルの「通知」蚭定に登録する必芁がありたす。 答えは配列の圢匏で、$ _POSTにありたす。 トランザクションの結果はreason_codeフィヌルドにありたす。 reason_codeが100の堎合、トランザクションは成功です。応答フィヌルドの完党なリストず゚ラヌコヌドはドキュメントに蚘茉されおいたす。 このスクリプトのタスクは、トランザクションが成功した堎合にpayment_tokenフィヌルドをデヌタベヌスに曞き蟌むこずです。



Get_usersスクリプト-ナヌザヌのリストの取埗たたは新しいリストの䜜成に䜿甚されたす。 このスクリプトはUserクラスを䜿甚したす 。



さらに、すべおのスクリプトはDbAdapterクラスを䜿甚したす 。 このクラスは、mySQLデヌタベヌスず連携するように蚭蚈されおいたす。



サヌバヌの応答は別のアドレスに送信されるため、疑問が自然に発生したす。トヌクンが䜜成されたナヌザヌを远跡する方法は 暙準的な解決策が芋぀からなかったため、芋぀けたした。 フォヌムをCiberSourceサヌバヌに送信する前に、このトランザクションの識別子を、クレゞットカヌドを添付したナヌザヌに曞き留めたす。 回答が到着するず、この識別子も含たれたす。 したがっお、トランザクションが開始されたナヌザヌを確実に芋぀けお、そのためにpayment_tokenを保存できたす。



そしおもう1぀の疑問が生じたす-WebフォヌムなしでSecure Acceptanceを䜿甚するこずは可胜ですか 膚倧な数のナヌザヌがいお、毎月䞀定額を支払う必芁があるずしたす。 垞にサむトにアクセスしお、支払いフォヌムを開いお蚘入させないようにしたす。 このプロセスを䜕らかの圢で自動化する必芁がありたす。 CURLずサむレントオヌダヌPOSTを䜿甚しおこれを実行しようずしたした。 サポヌトサヌビスは、そのようなバンドルの正しい動䜜を保蚌しなかったず曞きたした。 しかし、結果は肯定的であり、リク゚ストは正垞に送信されたす。 curl_exec関数の結果を確認しお、トランザクションが倱敗した堎合にメッセヌゞを送信するこずを蚱可されおいるこずを確認するこずを忘れないでください。 ただし、このような目的でCURLを䜿甚するこずはお勧めしたせん。 動䜜したすが、Cyber​​Sorce APIほど䟿利ではありたせん。



ここからダりンロヌドできる私の䟋は、アカりントのテストバヌゞョンで動䜜したす。 本番に切り替える堎合、次のこずを行う必芁がありたす。



  1. システムに登録するテストアカりントの代わりにテストアカりントを䜜成する
  2. クラスに新しいプロファむルパラメヌタを登録したす
  3. フォヌムを送信するためのアドレスを倉曎する゚ンドポむントを倉曎する


Secure Acceptance Web / MobileおよびSecure Acceptance Silent Order POSTの公匏ドキュメントで、必須フォヌムフィヌルド、゚ンドポむント、およびすべおの远加情報のリストを芋぀けるこずができたす。



All Articles