あらゆるSMSスクリーンショットから送信者、タイムスタンプ、金額、リファレンスを抽出
各SMSの金額、加盟店/送信者、リファレンス番号を手動でスプレッドシートに打ち直すと、1件あたり10~15秒かかり、後で修正が必要な入力ミスも発生します。本ツールならスクリーンショット1枚あたり5秒で完了し、銀行取引通知と注文確認を同じバッチで処理できます。
スクリーンショット1枚あたり5~10秒 · 印字テキストの精度は最大99%
すべてのSMSには2層のデータが存在する
メッセージ固有のメタデータと取引内容 — どちらも1枚のスクリーンショットから読み取り、並べ替えは不要です。
メッセージヘッダーに表示される連絡先名または番号 — 銀行コード、小売業者ID、P2P連絡先など。
OSのスレッド日付や「2時間前」のような相対時間。AIはフレーム内にあるものをそのまま出力します。
未読ドット、薄字テキスト、プレビュー表示と全文表示 — これらのOSインジケーターが表示されたときに取得します。
通貨の数値。銀行取引通知では先頭に付き、注文確認では埋め込まれています。AIはこれを取引シグナルとして読み取ります。
取引の背後にある主体 — 大文字の加盟店名、小売業者名、P2Pユーザー名 — を意味的な役割で識別します。
銀行の認証コード、注文ID、追跡番号。最もばらつきが大きく、位置情報だけでは特定が最も難しいフィールドです。
SMSスクリーンショットが「簡単」なのに最も難しい理由
SMSは一見シンプルで、数行のテキストに見えます。しかし、銀行取引通知は厳格なテンプレートに従う一方で、注文確認はまったく異なる表現を使用します。従来のOCRは文字列全体を途切れのない生テキストとして出力するため、各フィールドを目で探す必要があります。あるRedditユーザーはこう述べています:「銀行取引通知と注文確認のスクリーンショットをすべて撮り、一つずつ開いて金額と加盟店をコピーしています。20分かかっても、少なくとも一つは見落とします。」
従来のOCRは、ページ上の位置(x、y座標、読み取り順序)に基づいて単語を抽出します。しかしSMSは、視覚的な構造がゼロの1行または短い段落です。Chaseの通知で位置3にある「$42.50」は、Wells Fargoのメッセージでは位置7に移動します。
Chaseの通知では承認コードが「ref:」の後に続きます。Amazonのテキストでは注文IDが「order #」の後に文中に現れます。配送追跡通知では、番号が唯一の英数字混在の文字列です。位置に依存したツールは、送信者ごとに再学習が必要になります。
これらは異なる種類のメッセージです。Chaseの通知構造を学習したテンプレートはUS Bankでは機能せず、Amazonの確認フォーマットで訓練されたものにはPayPalの配送通知のルールがありません。結局、ソースごとに個別のプロセスを管理することになります。
送信者名とタイムスタンプはスレッドヘッダーにあり、既読ステータスは色付きのドットなどの視覚的な手がかりを使用します。通知パネルは相対的なタイムスタンプ(「2時間前」)を表示し、切り詰められたプレビューはメッセージの内容を隠します。従来のOCRは、ページ用に作られたものであり、これらのOSレベルのアフォーダンス用ではありません。
カスタム列抽出は、AIに「3番目の単語を見ろ」ではなく「金額を探せ」と指示します。AIはメッセージを金融取引として読み取り、各フィールドが何を表すかに基づいて、位置や銀行に関係なく特定します。
金額、加盟店/送信者、日付、リファレンスを一度定義します。同じ4つの列が、Chaseの通知、Amazonの注文、FedExの配送追跡テキストで機能します。送信者ごとのルールやテンプレートの切り替えは不要です。
1週間分のSMS(銀行取引通知、注文確認、配送追跡通知)を異なる送信者から一度に処理します。出力は、すべてのフィールドが埋められ、日付順に並べられた1つのスプレッドシートで、予算管理にすぐに使えます。
SMSスクリーンショットから整理されたスプレッドシートへ
火曜日の銀行取引通知を記録する場合、注文追跡スプレッドシートを作成する場合、または出張の経費記録をまとめる場合でも、プロセスは同じ3つのステップです。
スクリーンショットをアップロード
銀行取引通知、注文確認、配送通知 — PNG、JPG、お使いのスマートフォンで生成される形式であれば何でも構いません。各SMSスクリーンショットは個別のファイルです。一度に好きなだけアップロードでき、処理側が混在したソースを事前に仕分けすることなく処理します。
4つの列に名前を付ける
金額、加盟店/送信者、日付、リファレンスと入力します。リファレンス列は意図的に汎用的にしています — AIに任意の長さの英数字識別子を探すよう指示し、銀行認証コード、小売業者の注文ID、配送追跡番号を、それぞれ別の列を用意することなくカバーします。
構造化されたスプレッドシートを取得
各行が1つのSMSスクリーンショットに対応します。金額列には$42.50、$129.99、$15.00が表示されます — それぞれChaseの通知、Amazon、USPSからのものです。日付で並べ替え、加盟店/送信者でフィルタリングすれば、1つのセルも触れることなく、その週の取引を確認する準備が整います。
SMS抽出が得意なケースと注意すべきケース
SMSのスクリーンショットからの抽出は、レイアウトではなく意味で読み取るため、ほとんどの場合で確実に機能します。ただし、いくつかのシナリオでは特に注意が必要です。
自動でうまくいくケース
- ✓ ドル記号と大文字の加盟店名が明示された銀行取引通知 — 最も一貫性のあるSMS形式で、最も高い信頼性で抽出できます。
- ✓ 注文番号や追跡コードが記載された注文確認テキスト — AIはパターンと文脈から識別子と周囲のテキストを区別します。
- ✓ メッセージ全体のスクリーンショット — 表示されるコンテキストが多いほど、フィールドレベルの抽出の信頼性が高まります。
注意すべきケース
- ⚠ 電話の通知パネルで切り詰められたSMSプレビュー — 部分的なプレビューでは、リファレンスや金額が省略されたり、タイムスタンプが「2時間前」と表示されたり、送信者行が隠れたりする可能性があります。
- ⚠ 事業者名ではなくユーザー名や電話番号のみが記載された送金テキスト — AIは表示されている内容を抽出しますが、「Alexに$20送金」というテキストは、正式な銀行取引通知に比べて加盟店の詳細情報が少なくなります。
- ⚠ 金額が1つのSMSに、リファレンスが別のSMSに記載されている複数メッセージにわたる取引 — 各スクリーンショットは独立して処理されるため、2つのメッセージにまたがる取引は、2つのスクリーンショットと手動でのマージが必要です。
SMSデータ抽出に関するよくある質問
同じバッチで銀行取引通知と注文確認から金額を抽出できますか?
はい。「金額」という列を一度定義するだけです。AIは「AMAZON.COMで$42.50」(Chaseの通知)と「ご注文$29.99が出荷されました」(Amazonの確認)を、取引に関連する通貨数値を認識することで読み取ります。送信者ごとにドル記号の位置を記憶するわけではありません。両方とも同じ列に、スクリーンショットごとに1行ずつ格納されます。
あるSMSではリファレンス番号が注文IDで、別のSMSでは追跡コードの場合はどうなりますか?
これはSMS送信者間で最もよく見られるバリエーションです。カスタム列抽出は「リファレンス」を汎用的な一意識別子として扱います。AIは、6桁の銀行認証コードであれ、22桁のUSPS追跡番号であれ、取引のキーとなる英数字の文字列を見つけ出します。同じ列が両方で機能します。
実際の日付ではなく「2時間前」と表示されるSMSからデータを抽出できますか?
相対的なタイムスタンプは、メッセージを開かずにスマートフォンの通知パネルからスクリーンショットを撮った場合に表示されます。AIは表示されている日付テキストをそのまま抽出します。「2時間前」としか表示されていなければ、それが日付列に入力されます。絶対的なカレンダー日付が必要な場合は、スクリーンショットを撮る前に個々のメッセージを開いてください。
銀行や小売業者ごとに異なる列セットが必要ですか?
いいえ。4つの列(金額、加盟店/送信者、日付、リファレンス)を一度定義するだけです。銀行取引通知、注文確認、配送追跡、P2P送金テキストはすべて同じデータ構造を共有しています。AIは、送信者ごとのルールやテンプレートを必要とせずに、同じバッチ内で各送信者の表現に適応します。これが従来のテンプレートベースのOCRとは異なる点です。
スクリーンショットにSMSの一部しか写っていない場合はどうなりますか?
メッセージが途切れている場合(全文ではなく通知パネルをスクリーンショットした場合によくあります)、リファレンス番号や金額が表示範囲外にあると、それらのデータが欠落する可能性があります。AIは画面に表示されているものだけを抽出します。メッセージが部分的であれば、抽出されるフィールドも部分的になります。完全な抽出を行うにはメッセージ全文のスクリーンショットを撮るか、事前に通知パネルで何が表示されているかを確認してから判断してください。
このツールは、SMSのスクリーンショットから送信者番号、既読ステータス、元のタイムスタンプなどのメタデータを抽出できますか?
はい — それらのフィールドがスクリーンショット内に表示されていれば可能です。カスタム列抽出は、フレーム全体をデータとして扱います。ヘッダー内の送信者行(電話番号または連絡先名)、OSバーやスレッドヘッダー内のタイムスタンプ、青いドットや薄いテキストなどの視覚的な既読/未読インジケーターを認識します。取引フィールドと一緒に、送信者、タイムスタンプ、既読ステータスのカスタム列を定義してください。AIは、表示されているフレーム内に現れるOSレベルのメタデータをすべて取得します。メッセージ全体のスクリーンショットは、通知パネルのプレビューよりも自然にこれらの手がかりを多く含んでいます。