WeChat Payのスクリーンショットから金額、注文番号、
加盟店を取得する
WeChat Payは独立した決済アプリではなく、WeChatというメッセージングアプリの中に組み込まれています。人々が音声メッセージを送ったり、写真を共有したり、食事代を割り勘したりする、あのWeChatです。支払いが完了すると、確認画面はチャットの領収書と取引記録を兼ねています。金額は上部に大きく表示されますが、加盟店名と注文番号(订单号)はその下の小さな文字で表示され、見落としがちです。スクリーンショットからWeChat Payの取引を記録する場合(月次の経費照合、経費精算の申請、仕入先への一括支払いなど)、どの項目が何を意味するのかを正確に把握しておくことで、誤った数値を間違った列に入力することを防げます。
画面上の金額、加盟店、注文番号の位置
WeChat Payの取引詳細画面(ウォレット(钱包)の取引履歴から支払いをタップして表示されるページ)では、金額が最初に目に入ります。上部付近に大きく表示され、人民元(¥)単位で小数点以下2桁まで示されます。加盟店への支払いの場合、通貨はほぼ常に人民元です。WeChat Payのグローバル決済を通じて処理されるクロスボーダー取引では、金額が加盟店の現地通貨(香港ドル、米ドル、ユーロ)で表示され、その下に人民元相当額が小さな文字で表示されることがあります。スクリーンショットに両方の数値が写っている場合、どちらを取得するかは、あなたが追跡している内容(あなたが支払った金額(残高またはカードからの引き落とし額)か、加盟店が受け取った金額か)によって異なります。
加盟店名(商户)は金額の下に表示され、多くの場合、WeChat Payが割り当てた小さなアイコンやカテゴリタグ(「餐饮」(飲食)、「交通」(交通)、「购物」(ショッピング)など)が付随します。これは、加盟店がWeChat Payに加盟店アカウントを開設する際に登録した商号です。スーパーマーケットチェーンのような馴染みのある店舗の場合、画面に表示される名前は店頭のブランド名と一致します。個人の受取用QRコードを使用する路上販売業者の場合、加盟店名はあまり知られていないものになる可能性があります。つまり、あなたが知っている屋台の名前ではなく、販売業者の登録事業者名です。これは、取引を申告する前に確認すべき最も重要な項目です。この支払いを帳簿上の特定の仕入先と照合する場合は、スクリーンショットの名前が後で検索する名前であることを確認してください。
注文番号(订单号または交易单号)は、詳細画面の下部にある小さな文字のフィールドで、通常は4200002193のような日付プレフィックスで始まる28桁の文字列です。WeChat Payは、すべての取引に対して2つの異なる参照番号を生成します。プラットフォームの内部追跡IDであるWeChat Pay注文番号(transaction_id、微信支付订单号)と、加盟店のシステムが販売に割り当てた参照である加盟店注文番号(out_trade_no、商户订单号)です。詳細画面には、加盟店の統合方法に応じて、一方または両方が表示されます。WeChat Pay注文番号の方がより一貫した識別子です。加盟店の設定に関係なく、すべての取引に1つ存在します。スクリーンショットに両方が写っている場合は、WeChat Pay注文番号を主要な参照として記録してください。これは、請求に異議がある取引を追跡したり、銀行取引明細書と照合したりする際に使用する番号です。
支払い方法(どの銀行カードか、またはWeChat残高(零钱)からの支払いか)と、正確な取引時刻(秒単位、北京時間)もこの画面に表示されます。税務や経費精算の目的でデータを取得する場合、タイムスタンプは支払いが完了した正確な瞬間を示し、取引がどの会計期間に属するかを判断する上で重要になる可能性があります。
友人への送金スクリーンショットが加盟店支払いと異なる理由
WeChat Payは、3つの異なる取引タイプをそれぞれ異なる画面で処理しており、各画面に表示されるフィールドは同じではありません。スクリーンショットがどのタイプかを把握することで、実際に抽出できるデータが決まります。
加盟店支払い — 店舗でのQRコードスキャン、ミニプログラムでの支払い、または店員がバーコードをスキャンするクイックペイ(被掃) — は、最も情報量の多い確認画面を生成します。金額、カテゴリタグ付きの加盟店名、注文番号、支払い方法、タイムスタンプです。これが上記で説明した画面であり、この記事で扱う3つのフィールドすべてが含まれています。
友人への送金(转账)は、チャットに埋め込まれた確認画面を生成します。金額は会話内のカードスタイルの吹き出しに表示され、受取人のWeChat表示名(加盟店名ではありません。個人間送金に「加盟店」は存在しません)が表示され、送金時間が記録されます。加盟店取引のような意味での注文番号はなく、代わりにWeChatはウォレットの取引履歴で確認できる送金記録IDを生成します。主な違いは、送金スクリーンショットでは、相手方フィールドが個人の表示名であることです。これは編集可能で変更可能であり、確認済みの事業者IDではありません。経費分割や収入追跡のために送金を記録する場合は、その時点で表示されていたWeChat IDまたは表示名を記録してください。ただし、同じ人物が来月のスクリーンショットでは別の名前で表示される可能性があることに注意してください。
紅包(ホンバオ)(红包)は3つ目のタイプで、最もデータが少ないです。紅包の確認画面には、受け取った(または送った)金額、送り主または受取人の名前、および挨拶メッセージが表示されます。注文番号、加盟店、支払い方法の詳細はありません。運任せのグループ紅包の金額はランダムに分割されるため、表示される金額は、あなたが知らないかもしれない総額のうちのあなたの取り分です。記録管理の目的では、紅包のスクリーンショットから信頼できるフィールドは1つだけです。金額です。それ以外は最小限の情報です。
実用的な意味合い:3つの取引タイプすべてのスクリーンショットを1つのフォルダに混在させ、それぞれから同じフィールドセットを抽出しようとする場合、加盟店支払いのスクリーンショットは3つのフィールドすべてを埋めますが、送金のスクリーンショットは金額と名前(ただし注文番号なし)を提供し、紅包のスクリーンショットは金額のみを提供する可能性があります。列定義ではこれらの違いを考慮する必要があります。あるスクリーンショットタイプに存在するフィールドが、別のタイプには存在しない可能性があります。
従来のOCRではWeChat Payのスクリーンショットを確実に読み取れない理由——そして代わりになる方法
スクリーンショットからデータを抽出する従来の方法——OCRにかけて、テキストが正しい列に収まることを期待する——は、WeChat Payで壁にぶつかります。その理由は画質とは無関係で、レイアウトの問題であり、プラットフォームの設計に組み込まれています。
WeChat Payの確認画面はフォームではありません。金額は「金額:¥__.__」というラベル付きフィールドにあるわけではなく、画面上部に大きなフォントで独立して表示され、その下に中サイズの加盟店名、さらに下部に小さなフォントの注文番号が続きます。従来のOCRエンジンは、フォントサイズが異なる3つの数字を認識しても、どれが金額で、どれがタイムスタンプで、どれが参照IDかを判断できません。文字は読めても、文脈は読めないのです。
テンプレートベースのOCR——金額が「通常」表示される場所にバウンディングボックスを描く——は問題を悪化させます。加盟店の支払い画面と送金画面ではフィールドの配置が異なります。ミニプログラム加盟店への支払い(WeChat内でMeituanを通じてフードデリバリーを注文するなど)では、明細項目が追加され、注文番号がコンビニでのQRコードスキャンよりもページのさらに下に押しやられることがあります。WeChatのダークモードのスクリーンショットは配色を反転させますが、テキスト内容は同じです。バリエーションごとに個別のテンプレートを作成・維持する必要があり、テンプレート化していない取引タイプのスクリーンショットからは無意味なデータしか得られません。
その代替手段がセマンティック抽出です。ツールに各フィールドが画面上のどこにあるかを指示する代わりに、「何を」探すべきかを指示します——「支払金額を表す数字」「その下にある登録事業者名」「下部付近にある日付プレフィックスで始まる28桁の数字」。抽出エンジンは人間が読むのと同じようにスクリーンショットを読み取ります。¥328.50が金額であり、4200002193202403093640737027のような文字列が注文番号であることを、それらがページ上のどこにあっても理解します。同じ列定義セット——金額、加盟店、注文番号——が加盟店支払い、送金、さらにはプラットフォーム間でも機能します。WeChat Payのスクリーンショットからデータを抽出する同じ3つの列が、Venmo、PayPal、Alipayのスクリーンショットでも機能するのは、抽出がデータの意味を探し、位置を探さないからです。
ファイルは安全に処理され、保存されることはありません。
同じアプローチは、あらゆる決済アプリのスクリーンショットでも機能します — Venmo、Zelle、PayPal、Alipay。なぜなら、抽出処理は画像内のデータを読み取るのであって、どのアプリが生成したかは関係ないからです。複数のプラットフォームで支払いを受け取っている場合でも、単一の列セットで、アプリごとに再設定することなく、それらを1つのスプレッドシートにまとめられます。
抽出後、その行を実際にどう使うか
スクリーンショットから金額、注文番号、加盟店を取得するのは前半戦です。後半戦は、それらの3つの値がスプレッドシートの行に格納された後に何が起こるかです。そして、WeChat Payを扱うほとんどの人にとって、それは一度きりの作業であることはほとんどありません。
経費照合の場合:WeChat Payの取引はすぐに蓄積されます — ここでのランチ、あそこでのタクシー、ミニプログラムで支払った公共料金。月末に、WeChatの残高と銀行の明細を照合するには、アプリ内の取引記録のスクロールリストを1つずつ確認する必要があります。抽出された行(金額、日付、加盟店、注文番号)を含むスプレッドシートは、銀行のエクスポートと同じ形式で、WeChat Pay側の照合データを提供します。注文番号は両者をつなぐ架け橋です。これは、WeChat Payの記録と、返金や紛争の場合の加盟店システムの両方に表示される識別子です。
経費精算の場合:中国やアジアの多くの企業では、経費請求の証拠書類としてWeChat Payの確認画面のスクリーンショットが必要です。経理チームは、これらのスクリーンショットから金額と加盟店を手動で承認用スプレッドシートに入力することがよくあります。3つのコアフィールドを抽出することで(コピーペーストではなく)、スクリーンショットの山を数秒で1つの請求テーブルに変換できます。そのテーブルを精算フォームに添付し、元のスクリーンショットはバックアップとして保管してください。抽出されたデータは、承認者が実際に確認する必要があるものをカバーします。
収入追跡と税務記録の場合:個人のQRコードや加盟店のレシートコードを通じてWeChat Payで顧客からの支払いを受け取る小規模事業主やフリーランサーは、日付、金額、顧客ごとの完全なログを必要とします。WeChat Payのアプリ内取引履歴は時系列のフィードであり、フィルタリング可能な元帳ではありません。また、WeChatの組み込みエクスポートツールは、APIアクセスを持つ加盟店アカウント向けに設計されており、個人ユーザー向けではありません。スクリーンショットからスプレッドシートへのワークフローは、加盟店アカウントへのアップグレードを必要とせずに、検索可能で並べ替え可能な記録を作成します。事業所得の証拠書類を必要とする管轄区域で確定申告を行う場合、抽出された行(金額、日付、取引相手)が必要なデータであり、スクリーンショットはその証明です。
これらすべての下流での使用法をつなぐ糸は、特定の職業や収入層ではありません。それは、単一の取引が多数のうちの1つになる瞬間です — アプリ内で1つずつではなく、20件のWeChat Pay支払いを1つのテーブルで確認する必要があるときです。
よくある質問
WeChat Payのスクリーンショットは、経費精算の領収書として同じように使えますか?
スクリーンショットには、一般的な経費報告書に必要な3つのデータ(金額、加盟店、取引参照番号)が含まれています。会社や税務当局がこれを領収書として認めるかどうかは、それぞれの文書ポリシーによります。中国では、WeChat Pay注文番号(transaction_id)は、支払い者と加盟店のアクワイアリング銀行の両方が取引を確認できる追跡可能な参照番号であり、機能的には領収書の参照番号と同等です。税務や監査の目的では、抽出したデータとともに元のスクリーンショットを保管してください。
インターフェースが中国語の場合でも、WeChat Payのスクリーンショットからデータを抽出できますか?
はい、可能です。抽出処理は、UIの言語に関係なく、画像内の数字やテキストを読み取ります。「¥」記号は、周囲のラベルが「支付金額」でも「Payment Amount」でも同じ意味です。列名が英語の場合、抽出された値は、スクリーンショットの元の言語に関係なく、それらの列に入力されます。つまり、中国語版WeChat Payのインターフェースと国際版WeChat Payのインターフェースのスクリーンショットを、同じバッチで処理できます。