sorted について
sorted は、getSorted.de で請求書、経費、ドイツの税務報告を扱うフリーランス向けブラウザー自動化スキルです。実際の Chrome Beta セッションを使い、請求書作成や PDF ダウンロード、税務報告の確認・提出を行います。一部の操作はプランに依存します。
主な機能
- 01請求書の作成、一覧表示、ダウンロード
- 02利用可能なプランで請求書をメール送信
- 03経費の追加と記録
- 04税務上の義務と期限の確認
- 05税務報告のプレビューまたは提出
活用シーン
- 01クライアント向け請求書の作成
- 02請求書の PDF ダウンロード
- 03Sorted での経費記録
- 04ドイツの税務報告の確認または提出
インストール
コマンドをコピーしてターミナルで実行します。
npx skills add https:/ / github.com/ glebis/ claude-skills --skill sortedインストール後、Claude Code で/sortedを入力して読み込まれたか確認します。
詳細
Sorted — フリーランサー向け税務・請求書の自動化
請求書の発行、経費の追跡、ドイツの税務申告書の提出を行うため、実際の Chrome Beta ブラウザーを使って getSorted.de を自動化します。
前提条件
--remote-debugging-port=9222を指定した Chrome Beta(/real-browserの起動手順を使用)~/.chrome-beta-profileに保存された Google アカウントのセッションagent-browserCLI がインストール済みであること
コマンド
invoice create
Sorted で新しい請求書を作成します。
必須パラメーター: 顧客名、金額 オプション: 時間、単価、説明、支払期限、サービス提供日、顧客の種類(事業者/個人)
invoice download <invoice-number>
ブラウザーの印刷機能ではなく、Sorted から正しくフォーマットされた PDF をダウンロードします。
invoice send <invoice-number> --email <email>
Sorted から直接、請求書をメールで送信します(有料プランのみ)。無料プランでは、PDF をダウンロードして Telegram 経由で送信します。
invoice list
すべての請求書を支払い状況(支払い済み/未払い)とともに一覧表示します。
expense add
経費を追加します。
tax status
現在の納税義務、期限、期限超過の申告書を表示します。
tax preview <report-type> <period>
提出前に税務申告書をプレビューします。
tax submit <report-type> <period>
ELSTER 経由で Finanzamt に税務申告書を提出します(有料プランが必要です)。
Sorted のナビゲーション
アプリの URL:https://app.getsorted.de/
| セクション | サイドバーのリンク | 用途 |
|---|---|---|
| ダッシュボード | Sorted(ロゴ) | 概要:納税額、収入、経費 |
| 税務 | Taxes | 税務申告書、期限、提出 |
| 収入 | Income | 請求書一覧、請求書の作成/編集 |
| 経費 | Expenses | 経費の追跡、領収書 |
| 税務アドバイザー | Tax consultant | アドバイザーとの連携 |
| 個人情報 | Profile → Personal details | フリーランサー情報、Steuernummer |
| 銀行口座 | Profile → Bank accounts (Beta) | 連携済みの銀行 |
| サブスクリプション | Profile → Subscription | プランの管理 |
| インポート | Profile → Import your data | データの一括インポート |
| 設定 | Profile → Settings | アプリの設定 |
税務申告書の種類
| 申告書 | ドイツ語名 | 頻度 | 説明 |
|---|---|---|---|
| VAT 予定申告 | Umsatzsteuer-Voranmeldung (UStVA) | 四半期ごと | 請求書で徴収した VAT |
| EU 売上明細書 | Zusammenfassende Meldung (ZM) | 四半期ごと | EU の顧客からの収益 |
| 年次申告 | EÜR + Einkommensteuererklärung | 年次 | 損益+所得税 |
請求書の作成手順
ブラウザー自動化の手順:
- 移動:
Income→Addをクリック →Create invoice - 顧客を設定: 請求書プレビューの
Client detailsエリアをクリック- 既存の顧客を検索するか、
Add new clientをクリックします BusinessまたはPrivate personを選択します- 次の情報を入力します:氏名、VAT/TIN、番地、市区町村、郵便番号、国(オートコンプリートのドロップダウンで入力後、一致する項目をクリック)、メールアドレス(任意)
- ダイアログの
Saveをクリックします
- 既存の顧客を検索するか、
- 請求書の日付を設定: 「Invoice date」の横の日付をクリックします(初期設定は今日です)
- サービス提供日を設定(必須): 請求書の日付の右側にある「Service date」と表示された空欄をクリックします
- これは日付範囲ピッカーです。開始日を選択し、次に終了日を選択します
- 同日中のサービスの場合は、同じ日付を 2 回クリックします
- サービス提供日を設定しないと、保存は失敗しても通知されません。フィールドに赤字で「Required」と表示されます
- クリック可能な要素には
clickableクラスがあり、請求書プレビュー上の位置はおよそ x:734 y:413 です - スナップショットに表示されない場合は、JavaScript を使用して、テキスト「Service dateRequired」を含む div を見つけてクリックします
- 支払期限を設定: 「Due date」の下にある「Select date」をクリックし、カレンダーから日付を選択します
- 明細項目を追加:
Add a lineをクリックします- フィールド:説明(テキスト)、数量(数値)、単位のドロップダウン(h/pcs など)、単価(数値)
- 折りたたまれた値をクリックすると、再編集できます
- VAT: 小規模事業者(Kleinunternehmer)のアカウントでは、自動的に 0% になります。注記には「Service not taxable in Germany」と表示されます
- 保存:
Saveボタンをクリックします。成功すると、タイトルが「Add invoice」から「Edit invoice」に変わります
注意点
- サービス日は必須ですが、見落としやすく、保存しようとするまで強調表示されません
- ドイツ式の数値表記: ピリオドは桁区切りです(1.000 は千)。小数点にはカンマを使います
- 折りたたまれたフィールド: 保存後、明細項目のフィールドは表示のみの状態に折りたたまれます。表示された値をクリックすると、編集可能なフィールドが再び開きます
- 請求書番号: 連番で自動生成されます(例:2025-03-21)。クリックすると編集できます
請求書 PDF のダウンロード手順
重要:Chrome CDP の Page.printToPDF は使用しないでください。サイドバーや設定パネルを含むページ全体がキャプチャされます。必ず Sorted の標準 PDF を使用してください。
手順:
- 請求書を開きます(Income リストからクリックするか、作成後に移動します)
Save and sendボタン(右上にある青緑色のボタン)をクリックします- **「Email invoice」**ダイアログが表示され、次の項目が含まれています。
- To フィールド(メールアドレス)
- Subject(自動入力済み)
- Message テキストエリア
- 下部に PDF ファイル名が表示された添付ファイルセクション
- PDF のリンク(例:
ALL3 DOO BELGRADE-2025-03-21-20260506.pdf)をクリックしますcursor:pointerとonclickを持つgeneric要素です- テキストは次のパターンに一致します:
{CLIENT_NAME}-{INVOICE_NUMBER}-{DATE}.pdf
- PDF が
~/Downloads/にダウンロードされます - ダイアログを閉じます(
Closeまたは×をクリックします)
メール送信(有料プラン)
有料プランでは、「Email invoice」ダイアログのすべての機能を利用できます。
Toフィールドにクライアントのメールアドレスを入力します(@e49)- 必要に応じて
Subjectを編集します(「Gleb Kalinin sent you an invoice (#INVOICE-NUMBER)」と自動入力されています) - テキストエリアに
Messageを入力します - 「Send a copy to my email」チェックボックスを切り替えます(デフォルトでオン)
Email invoiceボタン(@e15)をクリックして送信します
無料プランでは、ダイアログに「メールでの請求書送信はお使いのプランでは利用できません」と表示され、「プランを変更」リンクが表示されます。プランにかかわらず、PDF はダウンロードできます。
代替手段:Telegram での送信(無料プラン)
メール送信を利用できない場合は、PDF をダウンロードし、Telethon 経由で送信します(下記の「ダウンロード後の請求書送信」セクションを参照)。
PDF ファイル名のパターン
{CLIENT_NAME}-{INVOICE_NUMBER}-{YYYYMMDD}.pdf
例:ALL3 DOO BELGRADE-2025-03-21-20260506.pdf
クライアント管理
既存のクライアントは保存され、再利用できます。請求書を作成する際:
- クライアント選択欄には、保存済みのクライアントがすべて表示されます
- 検索ボックスで名前を検索します
- 各名前の横にある小さなボタンから、クライアントを編集または削除できます
クライアントの項目(法人)
- 事業者名(必須)
- VAT 番号/TIN(任意)
- 通り名と番地
- 市区町村
- 郵便番号
- 国(オートコンプリート — 入力して候補をクリックします)
- メールアドレス
クライアントの項目(個人)
- 名、姓
- 住所の項目は法人と同じです
ダウンロード後の請求書送信
PDF をダウンロードした後、Telethon を使用して Telegram 経由で送信します。
from telethon.sync import TelegramClient
import json
from pathlib import Path
config = json.loads((Path.home() / '.telegram_dl' / 'config.json').read_text())
session = str(Path.home() / '.telegram_dl' / 'user')
with TelegramClient(session, config['api_id'], config['api_hash']) as client:
client.send_file("username", "/path/to/invoice.pdf", caption="message")
Gleb の Sorted アカウント詳細
- ステータス: Kleinunternehmer(VAT は請求されません)
- Finanzamt: Berlin - Wedding
- VAT-ID: DE369692682
- 税番号: 2337201265
- 銀行: Revolut Bank UAB, Zweigniederlassung
- IBAN: DE38 1001 0178 8157 1777 30
- BIC/SWIFT: REVODEB2
- プラン: 無料(請求書の発行は可能ですが、税務申告にはアップグレードが必要です)
ブラウザーセッションの設定
必ず /real-browser スキルの起動手順を使用してください。セッション名は実行ごとに一意にしてください。
SESSION=$(LC_ALL=C tr -dc 'a-z0-9' < /dev/urandom | head -c 6)
agent-browser --cdp 9222 --session "$SESSION" open "https://app.getsorted.de/"
Google ログインは保持されるため、毎回再認証する必要はありません。