Google Play が OSS の寄付リンクを拒否 — 501(c)(6) は「非課税団体」ではないのか
はじめに
暗記アプリ Anki の Android 版である AnkiDroid が、9月11日に Google Play から削除されると通告されている。理由はマルウェアでもプライバシー侵害でもなく、アプリ内に Open Collective への寄付ページへのリンクが置かれていたことだ。
この件が Hacker News で 709 ポイントを集めたのは、単に人気アプリが消えるからではない。争点が「Google の Payments Policy が言う tax-exempt(非課税)とは、具体的にどの税制区分を指すのか」という、規約の一語の解釈に絞られているからである。AnkiDroid 側は IRS の非課税認定書を提出したが、拒否された。この記事では、何が起きたのか、なぜ 501(c)(6) が弾かれるのか、そして 2019年の WireGuard 削除から何が変わっていないのかを整理する。
何が起きたのか — 通告から削除予告までの時系列
GitHub Issue #21656 に経緯が記録されている。
- 7月20日: Google Play から自動のポリシー違反通知。Payments Policy 違反として、アプリ内の寄付リンクが指摘される
- 7月21日: AnkiDroid が Open Source Collective の IRS 非課税認定書(determination letter) を提出。同団体は AnkiDroid の資金を預かるフィスカルホストである
- 8月6日: Google が書類を却下。寄付先は「validated 501(c)(3)」でなければならないと回答
- 8月7日: 再度の却下。「非課税団体ではない組織への寄付をユーザーに許している」という趣旨の説明
- 8月28日: アプリのアップデートが却下され、9月11日にインド・ロシアを除く全世界で削除すると通告
提出された認定書は本物である。Open Source Collective は IRS から非課税認定を受けている。ただしその区分が 501(c)(6) だった。
メンテナは最終的に、Play 版からは寄付リンクを削除する方針を表明している。数百万人のユーザーが使うアプリを消されるより、抗議しつつ従うほうがましだ、という判断だ。
なぜ 501(c)(6) が弾かれるのか
Google の Payments Policy は、まず原則としてこう定めている。
apps may not lead users to a payment method other than Google Play’s billing system. (アプリは Google Play の課金システム以外の支払い手段へユーザーを誘導してはならない)
この禁止はアプリのストア掲載情報、アプリ内の WebView・ボタン・リンク・メッセージ・広告など、あらゆる導線に及ぶ。そのうえでポリシーは例外を列挙しており、物理的な商品・役務、個人間送金、オンラインオークションと並んで 「tax exempt donations(非課税の寄付)」 が挙げられている。
問題はこの例外の適用条件で、Google は「validated tax-exempt organization(例: 米国であれば validated 501(c)(3) charitable organization、または各国の同等物)」への寄付であることを求めている。つまり 例外の見出しは「tax exempt」なのに、実運用では 501(c)(3) に限定されている。ここに食い違いがある。
米国の内国歳入法における両者の違いは明確だ。
| 501(c)(3) | 501(c)(6) | |
|---|---|---|
| 分類 | 慈善団体 | ビジネスリーグ・業界団体 |
| 団体自体の非課税 | ○ | ○ |
| 寄付者側の慈善寄付控除 | ○ | ×(事業経費としての控除はありうる) |
つまり Google が実際に見ているのは「団体が非課税か」ではなく、**「寄付した側が慈善寄付として控除できるか」**である可能性が高い。この読み方なら Google の判断は内部的には一貫しているが、ポリシー本文が「tax exempt donations」としか書いていない以上、開発者が事前に読み取れる区別ではない。
そして 501(c)(6) は OSS の世界では例外的な形態ではない。Linux Foundation は 501(c)(6) であり、2003年2月から非課税団体として認定されている(Bylaws にも「501(c)(6) の下で運営される非営利相互利益法人」と明記されている)。HN のコメント欄では Rust Foundation も同じ区分だとして、「業界を代表する OSS 財団がまとめて条件を満たさないことになる」という指摘が出ていた。
Open Source Collective が担うのはフィスカルホストという役割で、法人格を持たない OSS プロジェクトの代わりに資金を受け取り、会計と事務を代行する。プロジェクトごとに 501(c)(3) を取得するコストを避けるための仕組みであり、これが「慈善団体ではない」と判定されると、個人メンテナが Play 上で資金を募る現実的な経路がほぼ消える。
2019年の再演 — 構造は7年変わっていない
この光景には既視感がある。2019年10月、WireGuard の Android アプリが Play Store から削除された。理由は wireguard.com/donations/ へのリンクだった。Phoronix の報道によれば、リリース承認からわずか20分後に削除通知が届き、過去バージョンまで含めて取り下げられている。同時期に Manyverse や andOTP といった FOSS アプリも同じ理由で影響を受けた。
7年後の今回と条件はほぼ同じだ。Play の課金システムは寄付を扱わない。だから寄付は外部リンクに頼るしかない。しかし外部リンクは Payments Policy が原則禁止している。そして例外規定は、OSS プロジェクトが現実に使っている法人形態を想定していない。この三すくみが一度も解消されないまま運用され続けているというのが実態である。
なお HN では「Google は今回、決済を処理しているわけではない。AnkiDroid は外部ページへリンクしているだけだ」という指摘も出ていた。手数料収入が直接発生しない導線まで一律に禁止する運用の妥当性は、争点として残っている。
エンジニアへの影響 — 何を前提に設計するか
自分のアプリを Play で配布していて、なんらかの資金導線を持つなら、今回の件から引ける実務的な線は3つある。
1. 「非課税団体だから大丈夫」は通用しない。 IRS の認定書を持っていても、区分が 501(c)(3) でなければ拒否されうる。フィスカルホストを使っている場合は、ホスト側の区分を確認しておく必要がある。GitHub Sponsors や Open Collective を「とりあえず貼っておく」運用は、Play 配布アプリでは前提が崩れている。
2. 導線をアプリの外に出す。 実務的な回避策は、アプリ内には寄付リンクを一切置かず、プロジェクトの Web サイト側にのみ置くことだ。AnkiDroid が採る方針もこれに近い。ただし到達率は確実に落ちる。アプリを使っている人の大半はリポジトリや公式サイトを見ない。
3. 配布チャネルを Play に一本化しない。 F-Droid のような FOSS 専用ストアや、GitHub Releases での直接配布を並行して維持しておくと、ポリシー変更が事業継続リスクに直結しなくなる。今回の削除予告が「インド・ロシアを除く全世界」という単位で降ってきたことが示すのは、配布可否の判断がプラットフォーム側の一存で、地域単位で切り替わりうるということだ。
商用アプリを書いている場合でも他人事ではない。Payments Policy の外部決済誘導の禁止は寄付に限った話ではなく、サブスクリプションの Web 決済への誘導や、アプリ内から自社サイトの購入ページへ飛ばす動線にも同じ条文が適用される。「例外リストに自分のケースが載っているか」ではなく、「Google がその例外をどの粒度で運用しているか」まで確認しておくのが安全側の判断になる。
今日のその他のニュース
Play が AuroraStore をブロック — Play の非公式クライアントである Aurora Store で、匿名アカウント経由のインストール時に “Server busy, please try again later.” が返る不具合が報告された。CalyxOS など Google アカウントを持たない環境での利用に影響が出ている。Google 側の遮断方法は現時点で公表されていない。
Mozilla が iOS 版 Firefox に純正広告ブロッカーを搭載 — サードパーティ拡張に頼らず、ブラウザ本体の機能として提供する。iOS では WebKit の利用が事実上必須という制約下で、ブラウザベンダーが差別化できる残された領域のひとつ。
1.5時間学習の小型 Transformer が多くの LLM を上回る — ARC-1 ベンチマークでの実験報告が HN で 391 ポイント。タスク特化の小型モデルが汎用 LLM を上回る領域が具体例として示された。
まとめ
- AnkiDroid は Open Collective への寄付リンクを理由に、9月11日に Play から削除されると通告された(インド・ロシアを除く)
- 争点は Payments Policy の「tax exempt donations」の解釈。Open Source Collective は 501(c)(6) の非課税団体だが、Google は 501(c)(3) を要求している
- 実質的な判定基準は「団体が非課税か」ではなく「寄付者が慈善寄付控除を取れるか」だが、ポリシー本文にその区別は書かれていない
- Linux Foundation も 501(c)(6) であり、OSS の主要な法人形態がまとめて例外規定から外れる構図になっている
- 2019年の WireGuard 削除とまったく同じ構造で、7年間解消されていない
Play の課金システムが寄付を扱わない以上、外部リンクを禁止したうえで例外を 501(c)(3) に絞る運用は、個人・小規模の OSS メンテナに資金導線を残さない。この設計が変わるまで、Play を唯一の配布チャネルにすることは、それ自体がプロジェクトのリスクとして計上すべき項目であり続ける。
ソース
- [Community Help Needed] Google Play: no longer allowing our Open Collective donation link · Issue #21656 — ankidroid/Anki-Android
- Payments — Play Console Help
- AnkiDroid: Google Play no longer allowing Open Collective donation link — Hacker News
- Google Ejects Open-Source WireGuard From Android Play Store Over Donation Link In App — Phoronix
- AnkiDroid — Open Collective
- Bylaws — Linux Foundation
- Play Store blocks AuroraStore — AuroraOSS work item #1566
- Introducing Ad Blocker for Firefox on iOS — Mozilla Blog
- I trained a small transformer in 1.5hrs and it beats many LLMs