カードの支払いを受け入れるときの不正なY​​andex.Money API

先週末、携帯電話が鳴りました。 番号はなじみがありません。 電話を取ります。

行の反対側で、女の子は彼女がYandexを代表していると言い、新しいサービスに関する情報をメールで送ってくれました:Yandex.Moneyだけでなく、Yandexフォームを使用したVISA / MasterCardの銀行カードでも支払いを受け入れることができるようになりました。 私は手紙を受け取っていないと回答しました(スパムになったのかもしれません)。しかし、情報は興味深いものであり、このサービスの新機能について詳しく知りたいと思います。



以前の仕組み


私のサイトでは、約2年前にYandex.Moneyを使用して支払いを受け取りました。 私の目的では、ホストの最も原始的な形式で十分でした。Ya.Denegは、サイトでデザイナーを投入し、サイトに挿入し、それ以上触れませんでした。 必要なウォレット、支払い目的(簡単な説明を含む内部データベースのトランザクション番号)および金額は、フォームで自動的に置き換えられました。 ユーザーは「Pay」ボタンをクリックし、Yandex.Money Webサイトにアクセスして、フォームデータを確認し、支払いパスワードを入力しました。 さらに、HTTP通知を通じて、操作識別子(operation_id)を受け取り、operation-detailsメソッドを使用してAPIを介して残りの支払い詳細を受け取りました。 このスキームは非常にシンプルで、多くの人によく知られています。



今何が変わった


フォームデザイナーに新しいオプションが追加されました:「VISAおよびMasterCardカードからの支払い」

画像

むしろ、私はそれを押して、フレームを要求するときに追加のパラメーターpayment-type-choice = onを取得します。それ以外はすべて同じです。

結果のフォームのコードをサイトでの支払いに挿入し、カードから支払いを試みます。 Yandex.MoneyのWebサイトにアクセスして、カードの詳細を入力します。 銀行のウェブサイト(3D-Secure)にアクセスし、SMSを受信し、コードを入力します。 支払いが完了し、お金がカードから引き落とされます。

ここからが楽しみです。



動作しないもの


開始するには、支払い通知がメールで受信されました。 通常の「他のユーザーからの翻訳」と「#77362青い星付きタオル」または「test1」のようなコメントの代わりに、美しくデザインされた愚かな「領収書」の形式を取得します。

画像

うーん、誰かが0.98rを支払った。 誰が不明で、なぜかは不明です。

Yandex.MoneyのWebサイトにアクセスして、支払いの詳細を確認します。 支払いの目的に関する情報があります。

画像



ええ、情報は保存されていると思います。 手紙では、それは本当に必要ではありません、私はAPIを通してそれを拾う必要があります。 しかし、ここでも失敗は待ち状態にあります。 operation-detailsメソッドによって要求されると、APIは以下を返します。



{"details":"","type":"deposition","amount":0.98,"direction":"in","title":" ","datetime":"2014-02-20T18:22:20Z","operation_id":"446xxxxxxxxx16012","status":"success"}







つまり、Yandex.Moneyで支払う場合と同様に、メッセージフィールドが欠落しており、詳細フィールドは空です。

私は同じ形式でYandex.Moneyを支払おうとしますが、すべてがうまくいき、APIが支払目的を返します。



{"message":"test1","details":"test1","sender":"4100xxxxxxxxx36","codepro":false,"type":"incoming-transfer","amount":13.93,"direction":"in","title":" 4100xxxxxxxxx36","status":"success","operation_id":"8920xxxxxxxxxxx2025","pattern_id":"p2p", "datetime":"2014-02-18T14:46:08Z"}







ここでは、支払人(実際には必要ありませんが)と支払の目的が示されています。 何と両方ですでに二回。



カードによる支払いの場合、支払いの目的だけでなく、支払いに関するコメントも示す価値があると考えられていましたか? OK、このフォームを試してください。



画像



これに応じて、コメント付きの(および予約なしの)メールの「領収書」を受け取ります。 そしてこのサイトでは、解説と目的の両方を見ることができます。



メールする

画像

サイトで

画像



ただし、APIを介して、詳細フィールドが再び空になり、メッセージが失われます。



{"details":"","type":"deposition","operation_id":"446xxxxxxxxxxxx012", "datetime":"2014-02-20T18:43:35Z", "status":"success", "amount":0.98, "direction":"in", "title":" "}







ドキュメント内のメッセージの存在は、p2p変換に対してのみ宣言されますが、多少曖昧な説明は、おそらく( メソッドの説明 )だけではありません。 メッセージは何らかの形で存在し、Yandexデータベースに保存されます。 ただし、APIから読み取ることはできません。



カードで支払う機能は確かに便利で便利ですが、このバージョンでは自分では受け入れられないことがわかり、サイトにロールバックしませんでした。

支払いの目的がわからないため(Yandex.Moneyのウェブサイトを解析する場合を除く)、寄付を受け取る場合にのみ機能し、ターゲットではありません。



いつ修正されるか


早ければ日曜日(2014年2月16日)にYandexに送信されたバグレポートは、通知書を受け取りました。 しかし、これまでのところ、それを除去する方向への進展はありませんでした。 私は毎日1ルーブルのテストのために投げます。おそらく彼らはそれを黙って修正するでしょう。

そしてもちろん、(一般的な自動化とロボット化の時代の)本物の生きている少女の形の電話広告は私を驚かせました。 同時に、宣伝された製品はまだかなり粗雑でした。



PS Yandex.Diskは2台のコンピューターでWindows 7を「台無しにしました」。 彼らはその事件の後に改善し、製品をより徹底的にテストすることを約束しました。



All Articles