web-dev-qa-db-ja.com

金融Webフォームでのユーザーの過剰な支払いを防ぐにはどうすればよいですか?

先週、オンライン議会の納税を提出しましたが、間違いを犯しました。フリーテキストの支払いフィールド(約$ 100USD)に£63.00を指定する代わりに、私はドットを逃し、£6,300(米国換算で約1万ドル)だけ下回りました。 1週間後、銀行口座を確認するまで、明確な警告はありませんでした。

現在、払い戻しのリクエストを待っていますが、その間、私は考えています-このようなことを他の人に起こさないようにするための適切な解決策はありますか?

43

ペンス(小数)を別のフィールドに入力し、2つの編集フィールド(ポンドとペンス)で整数のみを受け入れます。ユーザーがポンドフィールドの小数点記号を押すと、フォーカスがペンスフィールドに移動します。

編集中のエラーの防止に加えて、ユーザーに確認別の画面/レイアウトの値。ユーザーに入力した入力の確認を求めるだけの場合、エラーを検出する可能性は、少し異なる方法でユーザーに値を返す場合よりも低くなります。

値を入力:
enter image description here

値の確認:
enter image description here

61

mockup

download bmml sourceBalsamiq Mockups で作成されたワイヤーフレーム

30
Pratheep ch

簡単な解決策は最小/最大の支払いがあるラジオボタンです。 Chase.comのクレジットカード支払いフォームのこの例を参照してください。

enter image description here

私が支払うことができる唯一の方法は、私が意図的に他の金額を選択した場合、他の支払いオプションのいずれかをクリックするだけで、最小金額を支払うことができますIできます、私の完全なステートメント残高、または私の全体の未払い残高。

もう1つのアイデアは、インラインでの検証で、ユーザーに「現在お支払いいただいている金額を$ X支払うことになります」という警告を出すことです。これは、上記のラジオボタン方式に加えて使用できます。

これはお金を扱っているので、ここでの一般的なタイプミス(小数点以下の配置の誤り、余分なゼロ、または転置された数値)は、ユーザーにロットのお金を要します。一時的になら、モーダルダイアログで「$ Xをお支払いしようとしていますお支払い額以上、この金額をお支払いしますか?」過度ではありません。または、「支払いの確認」画面に表示される赤/エラースタイルの警告(インライン警告に加えて)も役立ちます。

ユーザーに支払いを入力させるときは、特にユーザーが間違いを犯した可能性が高い場合は、十分に注意してください。最悪の場合は間違ったバブルを選択することになるため、ラジオボタンは最も簡単な方法です。他のバブルに気付かない限り、誤って[その他の量]を選択することはありません。

20
Ben Brocka

ユーザーがボックスに何を入れるべきかがわかっている場合は、異常な入力の検出を試みることができます。あなたの場合、6,300ポンドは通常の税よりもかなり高いと思うので、彼らの税が期待したものの100倍であることを通知する警告ダイアログを表示します(ただし、実際に人々に迷惑をかける可能性があることを考慮に入れる必要があります- do他の人がすることの100倍を支払う)。

もう1つのことは、他の入力から税金を計算することです。たとえば、固定資産税の場合、資産の概算値(ポンドの端数を追跡するのは無意味なほど大きな数値である可能性が高い)を入力してから、税額を計算することができます。

または、別の方向に進むこともできます-彼らが税金として6,300ポンドを投入した場合、これが確認画面にこれが資産価値に適切な税であることを表示でき、彼らは数十を所有していないことを明確に見ることができます数百万ポンド相当の財産。

6
Brendan Long

多くのオプションがありますが、最高の教育です。参加者に彼らが何をしているか、何をしたかを知らせ、仮定を減らします。このケースのリテラル例:.00を追加して、全額を処理します。変更用に別の箱を用意してください。 [00]。[00](クリックまたはタブを追加すると問題が発生しますが、$$を処理するときの安全性)小数点をボックスに入力して、数値を入力するときに数字が左に移動するようにします。最後から2つ。もっと...

4
Tamler

ソリューションは、適切なユーザーエクスペリエンスの設計とテストです。私の.gov部門での限られた経験では、それに投資するお金はあまりありません。確立された既存のソリューションにアウトソーシングまたは投資、あるいはその両方を行うことでお金を節約しようとすると、UXは通常、多くの人のフラストレーションに犠牲にされます。

更新:

だから、いや、悲しいかな、問題は何よりも体系的です。しかし、この1つの問題を修正する場合、最も費用がかからない方法で最も迅速な方法で、何らかの形で確認ダイアログを表示します。

You are about to pay $8723.00. Is this correct?

[ Yes, submit ]   [ No, return to edit ]
3
DA01

私はインターネットバンキングを専用に使用して請求書を支払い、銀行は請求書の金額を知りません。そのため、金額は常にユーザーが入力します。問題の根本に小数点が欠けていると思います(。と、または国によってはスペース)。

@Ben Brockaのソリューションは非常に優れています。ただし、システムが事前に金額を知っているか、または支払われる金額が大きすぎるかどうかを判断するための分析を行うことができる場合です。

私の提案は、10進数の通貨が使用されている国でユーザーに小数部を入力するように強制することです(たとえば、63ドルの請求書を支払うには、63ドルを入力する必要があります)。私の銀行はこれを使用しており、かなりうまくいきます。アプリケーションが国際化されている場合は、ロケールに応じて、小数点にスペースまたはコンマを使用できるようにする必要があります。

マイナス面は、日本円など、小数通貨がない国ではあまり使用されないことですが、小数通貨を使用している国の人々の問題を防ぐのに役立つと思います。

2
F21

私はおそらく、この特定の状況に対して特別なケースを追加します。入力が期待値のちょうど100倍であり、小数点が省略されている場合は、間違いを「自動修正」するだけです。

より一般化されたソリューションでは、統計を使用して、入力値がエラーである可能性を判断し、それを使用して検証をどの程度強制的に行うかを決定できます。

  • 80-100%:警告を表示し、ユーザーにそれを認めるよう強制します(自信を持って行うことができる場合は自動修正します)。
  • 30〜80%:見逃せない警告を表示します。
  • 0-30%:ユーザーの入力をエコーし​​ます。

アナログの世界で同様の問題がどのように扱われるかを見るのに役立つかもしれません。

小切手では、支払人は2つの形式で金額を書き出す必要があります:数値およびスペルアウト(「SIXTY-THREE POUNDS AND 00/100」)。たぶん、言葉で入力をエコーすることは理にかなっています。おそらく、確認画面の「SIX THOUSAND THREE HUNDRED POUNDS」を見逃していないでしょう。

レストランでは、クレジットカードで支払う場合、小計にチップを追加して合計を入力するために、少し計算を行う必要があります。アプリケーションが税額の金額を知っている場合、確認画面には支払い後の残高が表示されます。そのバランスがマイナスの場合は、明確に強調する必要があります。

0