中級向け

freee の督促を下書き

毎朝、期日を過ぎても入金のない売上ごとに、督促メールの下書きが Gmail にできています。

金額・請求書番号・期日は、freee の値とコードが照らします。一部だけ入金があれば、残りの額で書きます。

勝手には送りません。人が読んで、送ります。

人の手間は、どう変わるか

Before(人が手でやっていたこと)

  • freee で、期日を過ぎて入金のない売上を探す
  • 一部だけ入金があった売上の、残りの額を計算する
  • お客様ごとに、気を使いながら督促のメールを一から書く

After(このワークフローを入れると)

  • 毎朝、期日を過ぎた売上を探し、お客様ごとにまとめる
  • 残りの額・番号・期日の入った督促メールの下書きが、Gmail にできている
  • freee にない金額や、延滞金・法的な言葉が入った下書きは、保存されない

それでも人に残ること

  • 下書きを読んで、直すところを直して送る
  • メールアドレスのないお客様には、一覧を見て手で連絡する

動作確認: — n8n 2.36.8 / Claude Haiku 4.5 / freee会計 API(開発用テスト事業所) / Gmail

売上は freee会計で管理している。毎週、期日を過ぎても入金のない売上を探して、一部だけ入金があれば残りの額を計算して、気を使いながら督促のメールを書いている人に向けて書いています。

先に結論です。

  • 毎朝、期日を過ぎた売上ごとに、督促メールの下書きが Gmail にできます。 お客様ごとに1通です
  • 督促に入る数字は、すべて freee の値と照らします。 一部だけ入金があった売上は、請求の総額ではなく、残りの額で書きます
  • 勝手には送りません。 下書きとして保存するだけです。人が読んで、送ります

AI(Claude)は、文を書くだけです。金額の計算もしません。

このワークフローは、n8n 公式テンプレートに提出しました(2026年10月25日、審査中)。freee のシリーズの3本目です(見積書 → 請求書 → 督促)。freee請求書を使っていなくても、freee会計に売上を入れていれば動きます。

約27秒の動画(音声あり。音声:VOICEVOX:雨晴はう)

overdue-reminders-freee-ja.json をダウンロード(日本語版)(ノードの名前、付箋、担当者へのお知らせが日本語です)

英語版(n8n に提出したものと同じファイル。督促の文は日本語で、担当者へのお知らせは英語):overdue-reminders-freee.json

Gmail に保存された督促メールの下書きの画面。宛先は buyer@example.com、件名は「お支払いのお願い」。株式会社テスト商事 佐藤(テスト)様あてに、請求書番号 INV-0000000002 はお支払い期日2026年10月20日で未入金の額188,100円、INV-0000000003 はお支払い期日2026年10月15日で未入金の額32,250円(一部ご入金済み20,000円、ありがとうございます)、未入金合計220,350円と書かれと続く。
ワークフローが Gmail に保存した下書き(本物の画面。取引先と金額は架空。まだ送っていない)
毎朝 freee を読む未入金の売上の取引期日を過ぎたものをお客様ごとにまとめるClaude が書く渡すのは番号・残りの額・期日ていねいな督促メール一部入金にはお礼をコードが freee の値と照らす番号・未入金の額・期日は、そのまま入っているかfreee にない金額は、混ざっていないか延滞金・法的などの言葉はないか通らない下書きは、保存しないGmail に下書きで保存宛先はお客様のメールアドレス送らない担当者に知らせる → 人が読んで送る作った下書き、止めた下書きとその理由メールアドレスのないお客様の一覧
AI に任せるのは、文を書くところだけです。督促に入る数字は、すべて freee の値とコードが照らします。

督促に入る数字は、すべて freee と照らす

督促のメールで一番困るのは、金額を間違えることです。もう入金のあった額まで請求したり、総額と残りの額を取り違えたりすると、お客様に失礼になります。

そこで、AI に渡すのは、freee から読んだ事実だけにしました。

AI に渡すこと freee の項目
請求書番号 取引の「管理番号」
請求額 取引の金額
未入金の額 取引の「支払残額」
お支払い期日 取引の「支払期日」

AI が書いた下書きを、コードが確かめます。

  1. 請求書番号・未入金の額・期日が、そのまま入っているか。 一部入金の売上で、総額だけを書いていたら止める
  2. freee にない金額が、混ざっていないか。 下書きの中の「〇〇円」をすべて拾い、freee の値(未入金の額、請求額、入金済みの額、合計)のどれでもなければ止める
  3. 強い言葉がないか。 延滞金・遅延損害金・法的・訴訟・弁護士などの言葉があれば止める

通らなかった下書きは保存せず、担当者へのお知らせに「このお客様は、手で書いてください」と理由を書きます。

試した結果

2026年10月25日、freee の開発用テスト事業所で試しました。売上の取引は架空で、API で作りました。

売上 状態 結果
INV-0000000002(株式会社テスト商事) 期日 10/20 を過ぎて、入金なし(188,100円) 下書きに入った
INV-0000000003(同) 期日 10/15 を過ぎて、52,250円のうち 20,000円が入金済み 下書きに「未入金の額 32,250円(一部ご入金済み 20,000円、ありがとうございます)」と入った
INV-0000000004(同) 期日前(11/30) 下書きに入らなかった
デモの取引先3社の売上 期日を過ぎて、入金なし。メールアドレスなし 下書きは作らず、お知らせの一覧に載った
取引先の入っていない売上 期日を過ぎて、入金なし お知らせに「取引先の設定がない売上」として載った

テスト商事あての下書きは1通にまとまり、未入金の合計(220,350円)、「行き違いの場合はお忘れください」、お支払いの予定日を教えてほしいというお願いが入りました。

わざと間違えた下書きで、照らす部分だけを試した

AI を使わずに、間違いを入れた下書きを手で作り、確かめのコードに通しました。

入れた間違い 結果
残りの 32,250円ではなく、請求の総額 52,250円だけを書く 止めた(INV-0000000003 の未入金の額がない)
「お支払いが遅れる場合は延滞金が発生します」と書く 止めた
「振込手数料 440円はご負担ください」と足す 止めた(freee にない金額)
期日を 10/25 と間違える 止めた(10/15 の期日がない)

freee の開発用テスト事業所で分かったこと

最初は、請求書のワークフローで作った請求書を、freee請求書の画面から「取引登録」して、入金を確かめる形にするつもりでした。ところが、開発用テスト事業所では、freee会計の画面が「プラン未契約」で使えず、取引登録のボタンも押せませんでした。

一方で、freee会計の API は、そのまま使えました。 売上の取引も、一部の入金の記録も、API で作れました。そこで、freee会計の取引を直接見る形に変えました。結果として、freee請求書を使っていない会社でも使える形になりました。

使うアプリの権限は、取引と取引先の参照だけです(試験用の取引を作るときは、取引の更新と、口座・勘定科目・税区分の参照も足しました)。

使うための設定

  1. freee のアプリ: 取引と取引先の参照の権限。コールバック URL は、見積書の記事と同じです(freee の API で詰まった3つのこと)
  2. n8n の認証情報: freee の「OAuth2 API」と、Gmail、Anthropic
  3. freee の準備: 取引先に、お客様の担当者のメールアドレスを入れる。督促に請求書番号を入れたいときは、売上の取引の「管理番号」に請求書番号を入れておく
  4. 設定(英語版は Config):freee の事業所の ID、担当者のメールアドレス、署名、何日過ぎたら督促するか、1回に下書きを作るお客様の数
  5. 「今すぐ動かす」(英語版は Run now)で試す。 過去の日付で試したいときは、設定の today_override に日付を入れる。よければ公開して、平日の朝9時に動かす

できないこと・確認していないこと

  • 1回に読む売上は、100件までです
  • 入金がまだなら、次の朝も同じ下書きができます。 古い下書きは消すか、週に1回だけ動かす
  • 入金の記録は freee の側の情報です。freee にまだ記録していない入金は、未入金に見えます
  • 下書きの文の言い回し(ていねいさの加減)は、コードでは確かめていません。数字と、強い言葉だけです
  • 100件を超える売上、1つの取引先に複数のメールアドレスがある場合は、試していません

次に読む

次に読む