カカオトーク支払いスクリーンショット:
金額と口座番号を取得
カカオトークは、韓国における取引の場です。日常のチャットを扱う同じアプリが、お金のやり取りも担っています。友人に5万ウォンを送金したり、フリーランサーに支払いをしたり、入金のために銀行口座情報を共有したり。誰かがカカオペイで送金すると、確認画面がチャット内に埋め込まれた支払いカードとして表示されます。また、「銀行名:国民、口座番号:123456-78-901234」とメッセージで入力された場合、そのスクリーンショットを保存することになります。どちらも領収書や請求書ではありません。しかし、どちらにも多くの人が必要とする2つの数字、すなわち金額と口座番号が含まれており、1桁も手入力することなく抽出できます。
重要なポイント
- カカオトークの支払いは、カカオペイカード(緑色の枠線で囲まれた₩50,000)か、銀行名、口座番号、口座名義人が入力されたテキストメッセージの2つの形式のいずれかで表示され、どちらにも金額と口座番号が含まれています。
- 従来のOCRでは、支払いカード上の₩50,000と、隣接するチャットバブルの電話番号や数量の記載を区別できません。エンジンにとっては、どちらも単なる数字の文字列だからです。
- カカオペイカードとテキストメッセージが混在したスクリーンショットを、金額と口座番号の列を設定して一度にアップロードすれば、AIが各スクリーンショットに表示されている形式を読み取り、両方のフィールドを1つのテーブルにまとめて入力します。
カカオトークの送金カードに実際に表示される情報
カカオトークの会話内で支払い関連情報が表示される方法は主に2つあり、見た目が大きく異なります。そのため、これらを単なる「チャットのスクリーンショット」として扱うだけでは不十分なのです。
シナリオ1:カカオペイの送金カード(송금 카드)。 誰かがカカオトークを通じて送金すると、アプリはチャットスレッド内に埋め込まれた視覚的なカードを生成します。そこには、韓国ウォン建ての金額(금액)、送信者(보낸분)と受信者(받는분)の名前、そして取引時刻が表示されます。カードの下には「受け取る」ボタンがあり、受信者はそのお金をカカオペイ残高に受け入れることができます。このカードは、明確な背景と角丸を持つ自己完結型の視覚コンポーネントであり、周囲のテキストメッセージとは明確に区別されます。
シナリオ2:チャットに入力された銀行口座情報。 もう1つの一般的なシナリオは、誰かが自分の銀行情報をメッセージに直接入力する場合です。典型的な例としては、"은행명: 국민은행 / 예금주: 김철수 / 계좌번호: 123456-78-901234"(銀行名:KB国民銀行 / 口座名義人:キム・チョルス / 口座番号:123456-78-901234)などがあります。構造化されたカードも、強調表示されたフィールドもなく、会話の中の単なるプレーンテキストです。金額は同じメッセージに含まれているか、別途合意されます。口座番号は韓国の銀行の慣例に従い、ハイフンを含む10~14桁で、銀行名はほとんどの場合、口座番号と一緒に記載されています。
どちらのシナリオも、取引を記録しようとする人にとって同じ根本的な問題を抱えています。それは、情報がスクリーンショットの中に閉じ込められていることです。カカオペイのカードはダウンロード可能な領収書ではなく、チャットがスクロールすると表示から消えてしまうチャットコンポーネントです。銀行口座のメッセージは、長い会話の中に埋め込まれた単なるテキストの一行です。どちらの場合も、実際に記録として残せるのは、画面に表示されているものをキャプチャしたものだけです。
チャットのスクリーンショットにOCRとは異なるアプローチが必要な理由
従来のOCRツールは、請求書の合計金額が右下、レシートの日付が上部など、文書のレイアウトが予測可能な場合にうまく機能します。OCRエンジンはすべての文字を読み取り、固定された座標に基づいて、どのテキストがどのフィールドに属するかを判断します。しかし、カカオトークのスクリーンショットには、そのような予測可能性はまったくありません。送金カードは、長さが毎回異なるチャットスレッドの途中に表示されます。銀行口座のメッセージは、会話の2番目のメッセージであることもあれば、50番目であることもあります。周囲のテキスト(絵文字、スタンプ、プロフィール名、タイムスタンプ)は視覚的なノイズを生み出し、座標ベースのシステムではフィルタリングできません。
実際の障害例は次のようになります。OCRツールが、「₩50,000」と表示された送金カードと「5명」(5人)に言及したテキストメッセージの両方を含むカカオトークのスクリーンショットをスキャンします。両方の数字が返されるため、ユーザーはどちらが金額かを判断しなければなりません。同じ問題は口座番号にも当てはまります。11桁の文字列が電話番号の隣にある場合、OCRはどちらの文字列が何を意味するのかを理解できないため、それらを区別できません。
視覚言語モデル(VLM)は、同じスクリーンショットを異なる方法で処理します。VLMは座標ですべての文字を読み取る代わりに、完全な視覚的コンテキストを処理します。「₩50,000」は、独特の背景を持つ角丸カードの中にあり、プロフィール写真と「受け取る」ボタンが隣接しています。AIはこれを支払金額として認識します。「123456-78-901234」は「은행명: 국민은행」の隣に表示されます。AIはこれを口座番号として識別します。違いは意味理解です。AIは「この文字はどの座標にあるのか?」ではなく、「これはどのような種類の情報か?」を問いかけます。
この区別は、特にカカオトークにおいて重要です。なぜなら、支払いは視覚的に豊かなチャット環境の中で行われるからです。スタンプ、プロフィール画像、カカオフレンズの絵文字、チャットバブルの色などが多様性を生み出し、テンプレートベースのシステムでは事前にプログラムすることができません。VLMは、目に映るものをそのまま読み取ります。
金額と口座番号を抽出する
ワークフローは次の通りです。カカオトークのスクリーンショットを撮り、カスタム列抽出に対応したツールにアップロードします。金額と銀行口座番号の2つの列を定義するだけです。テンプレートも、学習サンプルも、領域の指定も不要です。AIがスクリーンショットをスキャンし、送金金額(₩または韓国語の「원」の接尾辞が付いたもの)と口座番号(ハイフン付きの10~14桁で、多くの場合「계좌번호」の前に表示されます)を識別します。両方の値が、出力テーブルの同じ行に出力されます。
1ヶ月間に複数の取引先から受け取った支払い確認など、カカオトークのスクリーンショットが複数ある場合は、すべてを一度にアップロードしてください。各スクリーンショットが1行になります。AIは、口座番号が毎回同じ位置に表示されることに依存しません。あるスクリーンショットでは3番目のメッセージにあるかもしれませんが、別のスクリーンショットでは最初のメッセージにあるかもしれません。AIはラベルと視覚的なコンテキストに依存します。このアプローチは、情報が会話のどこに表示されても機能します。
明確にしておくべきいくつかの制限事項があります。スクリーンショットでカカオペイカードの一部が切れている場合(例えば、金額のみが表示されている上半分だけで、確認完了画面全体が写っていない場合)、画像から口座番号や受取人名が欠落している可能性があり、AIは表示されているものしか抽出できません。チャットに入力された銀行口座番号の場合、精度は、スクリーンショットにラベル(계좌번호または계좌)と数字の両方が一緒に写っているかどうかに依存します。ラベルのない数字の文字列だけが見える場合、AIはそれを数値シーケンスとして識別することはできても、それが電話番号ではなく口座番号であるという確信度は低くなります。これらは抽出方法の問題ではなく、元の素材の制約です。
異なるアプリの支払いスクリーンショットを比較したより広範な概要については(カカオトークの支払いカードとLINEのLINE Payカードの類似点を含む)、LINEチャットの支払い情報抽出の比較をご覧ください。また、支払いの会話に付随することが多い住所や注文詳細については、カカオトークの住所・注文詳細ガイドで、チャットスクリーンショットに通常含まれる残りの部分を説明しています。
これら2つの数値がシートに入力されると何ができるか
金額と銀行口座番号がスプレッドシートの行にあれば、想像以上に便利です。この2つのフィールドが、最も一般的な後続のニーズをカバーするからです。
受け取った支払いの記録。 韓国のフリーランサーや中小企業経営者は、カカオペイで支払いを受け取り、その後、将来の送金のためにクライアントの口座番号が記載されたメッセージを受け取ることがよくあります。両方のフィールドが抽出されていれば、毎回チャット履歴を探し回ることなく、請求書との照合が可能です。
共同経費の割り勘(n分の1割り勘)。 カカオトークは、グループでの食事代、旅行費、共同購入品の精算に使われます。誰かが支払い、その総額をグループチャットに送信し、他のメンバーがそれぞれの負担額を送金します。複数のグループでの外出について、誰がいくら支払ったかを追跡している場合、抽出された金額が入力されたスプレッドシートがあれば、すべてのチャットメッセージを読み返すことなく合計を集計できます。ここでは口座番号はそれほど重要ではありませんが、金額は重要なフィールドです。
税金や経理のための支払い記録の作成。 韓国のギグエコノミーで一般的な、カカオトークを通じて業務を行うフリーランサーにとって、受け取った金額と各クライアントの銀行口座を照合した月次の記録は、検証可能な収入の証跡となります。これは税務上の領収書(韓国では公式な控除には税計算書が必要です)にはなりませんが、受け取った税計算書と照合するための生データとなります。
これらすべてのシナリオに共通するのは「量」です。スクリーンショット1枚なら手動で簡単に処理できます。しかし、異なるクライアント、グループでの外出、様々な金額から、月に10枚や20枚になると、その手間は倍増します。スクリーンショットごとに、画像を開き、数値を読み取り、スプレッドシートに入力し、口座番号の桁を間違えていないか確認する必要があります(これは、ダッシュを含む韓国の銀行口座形式では実際に起こり得るリスクです)。抽出ワークフローは、この転記作業を完全に排除します。
LINEがどのように支払確認を処理しているか(支払方法や取引IDを含む日本式の支払カードを含む)の比較については、LINEチャット支払スクリーンショットガイドをご覧ください。また、メッセージングアプリの支払スクリーンショットを構造化データのように抽出するという広範な概念については、WeChat Payの記事で中心的論点を扱っています。支払スクリーンショットは領収書ではありませんが、金額はきれいに抽出できる、というものです。
よくある質問
スクリーンショットがすべて韓国語の場合でも、抽出は機能しますか?
はい、機能します。視覚言語モデルは、テキストがどの言語で書かれていても処理します。韓国語の文字(ハングル)は、別のOCRパイプラインを介さずにネイティブに処理されます。金額フィールドは₩記号または韓国語の「원」という接尾辞が付いた数値として表現され、銀行口座番号は数値の文字列です。これらはどちらも言語に依存しないフィールドであり、AIは視覚的なコンテキストと周囲のラベルに基づいてこれらを識別します。銀行名(은행명)と口座名義人(예금주)は韓国語で書かれたまま抽出されます。これは記録管理のためにまさに必要なものであり、翻訳は必要ありません。
カカオペイカードの場合と、銀行詳細が書かれたテキストメッセージの場合とでは、抽出の仕組みは異なりますか?
基本的な仕組みは同じですが、視覚的な手がかりが異なります。カカオペイカードの場合、AIはカードの特徴的な視覚的なコンテナ(角丸の長方形と色付きのヘッダー)によって金額を識別します。これにより、周囲のチャットメッセージから金額が区別されます。テキストで入力された銀行口座詳細の場合、AIは数字の前に付くラベル(계좌번호、은행명)に大きく依存します。どちらのアプローチも座標ではなく意味理解に基づいているため、情報がチャット内のどこに表示されていても機能します。テキストメッセージから抽出する場合、ラベルと番号の両方が一緒に含まれるスクリーンショットを用意することで、AIに最も強力なシグナルを与えることができます。
この機能はすべての韓国の銀行で動作しますか?
はい、動作します。韓国の銀行口座番号は、銀行に関係なく一貫した形式に従っています。通常は10~14桁で、ハイフンが1つまたは2つ含まれます。KB国民銀行、ウリ銀行、新韓銀行、ハナ銀行、農協銀行、カカオバンクのいずれの口座であっても、数字の構造は似ており、銀行名はほとんどの場合、チャットメッセージ内で口座番号と一緒に含まれています。AIは口座がどの銀行に属しているかを知る必要はありません。番号の長さ、数字のグループ化パターン、およびその前に付くラベルに基づいて、その文字列を口座番号として識別します。
複数のカカオトークのスクリーンショットを一度に処理できますか?
はい。送金カード、銀行口座メッセージ、またはその両方をまとめてアップロードすると、AIがスクリーンショットごとに1行のデータを作成し、1つのテーブルに出力します。口座番号のない送金カードのみのスクリーンショットの場合、該当セルは空欄になります。これは、月末の照合や記録保管のために、1ヶ月分のカカオトーク送金スクリーンショットをまとめる際に特に便利です。
これは単にトレーニングを強化したOCRですか?
いいえ。従来のOCRは、表示されているすべてのテキストを読み取り、ブロックとして出力します。各フィールドの位置を指定するテンプレートがなければ、金額と電話番号を区別することはできません。一方、視覚言語モデルはスクリーンショットを全体として読み取り、フィールドがどこにあるかではなく、何を意味するかによって識別します。そのため、カカオトークの送金カードを何の設定もせずに処理できるのです。意味理解は、チャットのスクリーンショットにとって便利な機能ではなく、必須の要件なのです。