KAFA
2026-11-10
このページは日本語訳です。正文はフランス語版です(Français · English)。
KAFA Scan Brew and Learnは、コーヒー豆の袋の写真を、淹れ方のカードに変えるアプリです。WHAT THE FILM (EURL)がKAFAのブランド名で提供しています(連絡先:hello@getkafa.com)。広告は表示せず、データを売ることもありません。このページでは、アプリ、KAFAのサーバー、そしてあなたが利用するサービスによるデータの取り扱いを説明します。
袋をスキャンすると、撮影した面(1面または2面)がそれぞれKAFAのサーバーへ送られ、続いてGoogle(AIサービスのGemini)に届き、印刷された内容が読み取られます。Geminiが応答しない場合は、Anthropic(AIサービスのClaude)が代わりに写真を読み取ります。カードの絵を描くために、写真はもう一度Geminiへ送られます。
送信された各面の写真、AIがそこから読み取った内容、スキャンの経過(使ったモデル、成功か失敗か、費用)は、非公開のストレージに保管します。サインインしている場合は、写真がカードの絵のお手本として、アカウントにひもづけて保管されることもあります。サインインしていない場合、絵を描くための追加のコピーは保管しません。これらのデータは、絵の描き直し、読み取りに失敗した理由の把握、スキャンの改善に使います。公開することも、ほかのユーザーに見せることもありません。KAFAのチームは、管理ツールでこれらを閲覧できます。
最初に送信する前に、アプリは同意を求め、写真を受け取るサービスの名前を示します。同意は「プロフィール」>「設定」>「アプリ」>「写真とAI」で撤回できます。撤回すると、改めて同意するまで、以降の送信は止まります。すでに受信された画像を消すには、下で説明するアカウントの削除、またはアカウントなしのデータの削除を使ってください。
カードを仕上げるため、サーバーは焙煎所がそのコーヒーについて書いている内容を、まず焙煎所自身のサイトで探します。検索はコーヒーの名前と焙煎所の名前をもとに行い、写真やあなたの身元をもとにすることはありません。その後、テイスティングノートをClaudeがあなたの言語に翻訳します。
初めて開いたとき、アプリはランダムなコード(UUID)をつくり、端末に保存します。このコードは、スキャンと検索のたびに一緒に送られます。サーバーは、無料スキャン、購入済みスキャンの残高、アカウントなしで購入した利用権を、このコードにひもづけます。コードには名前も電話番号も含まれません。サインインすると、私たちがこのコードをアカウントに関連づけます。
アプリはアカウントなしでも使えます。Apple、Google、またはメールで届いたコードでサインインした場合は、メールアドレス、共有していればAppleまたはGoogleから渡される名前、そしてサインイン用の識別子を保管します。
アカウントは、カードを一杯ごとの記録とともに、端末のあいだで同期します。記録の内容は、方法、粉量、挽き目、時間、注湯カーブ、味、メモです。スキャンのために送った写真は、上記1で説明したルールに従います。KAFAのチームは、サポートとアプリの改善のために、管理ツールでこれらのカードを、メールアドレスと名前とともに閲覧します。
Googleでのサインインには、GoogleのネイティブSDKを使います。Googleによれば、不正を防ぐために、サインイン用の識別子を保持し、IPアドレスからおおよその位置を推定することがあります。Googleのプライバシーマニフェストには、サインインとサービス分析のためのものとして、名前、メールアドレス、電話番号、識別子、利用データ、その他の種類のデータも記載されています。Google独自のこれらの処理は、私たちのアプリがその情報を受け取らない場合でも、あなたの身元にひもづくことがあります。KAFAは電話番号を求めず、GPSの位置情報にもアクセスしません。参考:Googleによる情報、SDKのマニフェスト。
サーバーは、スキャン、検索、購入を1件ずつ、その費用とともに、アカウントまたは端末の識別子にひもづけて記録します。スキャンしたコーヒーの一覧も保持し、一度読み取った袋は、回数を消費せずにもう一度スキャンできるようにしています。
IPアドレスは、ネットワークごとのスキャン、検索、カードの絵、クラッシュレポート、利用状況の計測データの送信の数に上限を設けるために使います。アカウントとはひもづけずにカウンターに保管しており、このカウンターはまだ自動では空にしていません。
アプリがクラッシュすると、あとでKAFAのサーバーに短いレポートを送ります。内容は、画面の種類(表示していた内容は含みません)、識別子をすべて取り除いたエラーメッセージ、アプリのバージョンとプラットフォームで、端末の識別子も一緒に送られます。これらのレポートは、クラッシュの修正に使います。
ドイツ(欧州連合)でホスティングされているSentryも、これらのレポートと、アプリのネイティブコードで起きたクラッシュを受け取り、メールで私たちに知らせます。送信の前に、アプリはあなたを特定できるものをすべて取り除きます。対象は、アカウント、処理中のリクエスト、それまでの操作の履歴(タップと呼び出したウェブアドレス)、端末の名前です。エラーメッセージにも同じ処理を行います。残るのは、主に端末の機種とOS、アプリのバージョン、画面の種類です。スクリーンショットは添付しません。これらのレポートは、下で説明する利用状況の計測の設定に左右されません。
アプリは、端末の識別子だけを添えて、10ほどの利用の場面も記録します。初回起動、はじめの案内の完了、プラン画面の表示、無料体験または購入、抽出の開始と完了、レッスンの読了、スケールの接続、音声の使用、音声出力の故障です。音声については、案内しているのがKAFAの音声か端末の音声か、そして録音がないために端末が読み上げる文の数を記録します。場面によっては、短い補足情報も付きます。選んだレベル、案内のあとに開いた画面、プラン画面を開いた場所、商品とストア、抽出の方法と時間、レッスンの識別子、スケールのブランドです。どの場面にも、時刻、プラットフォーム、アプリのバージョン、アップデートのバージョンが付きます。抽出の完了には、袋をスキャンしていれば、そのスキャンの識別子も添えます。これで、どのコーヒーを使ったかが分かります。スキャンが端末で淹れ方のカードになったときも、同じ識別子を送ります。スキャンがうまくいったことを確かめるためです。アカウントと入力した文章は含まれません。この計測は私たちのサーバーにとどまり、初期設定でオンになっています。
「プロフィール」>「データの保存場所」で「利用状況の計測」を自分でオンにした場合は、これらの場面と補足情報が、欧州連合でホスティングされているPostHogにも送られます。PostHogはさらに、アプリのインストール、アップデート、起動、バックグラウンドへの移行を記録し、端末のメーカーと機種、OS、言語、タイムゾーン、画面のサイズを自動で付け加えます。あなたを見分ける手がかりはPostHog専用のランダムなコードだけで、端末の識別子とはつながりがありません。名前やメールアドレスを受け取ることもありません。IPアドレスはPostHogに保存されず、位置の推定にも使われません。画面の録画も、タップの記録もしません。「オフ」を選ぶと、私たちの計測とPostHogの計測の両方が止まります。
iPhoneのバージョン2.7.1以降では、この同意にApple Adsの広告効果の計測も含まれます。アプリはインストールにつながった広告をAppleに問い合わせ、キャンペーン、広告グループ、キーワード、広告の識別子、コンバージョンの種類、掲載場所をこれらのイベントに追加します。一時的なトークンはAppleだけに送り、保存しません。PostHogのコードは継続して使うため、データは仮名化されたものです。お試し期間や購入などをキャンペーンに関連付けますが、広告のターゲティングや他社アプリをまたぐ追跡には使いません。この新しい用途には改めて同意が必要です。以前の拒否は有効なままです。計測をオフにすると広告の関連付けが止まり、その端末内キャッシュも削除されます。
はじめの案内では、別のカウンターが、インストールごとに一度、各段階を記録します。初回起動、それぞれの画面、そして次に選んだ行き先(袋のスキャン、サンプルでのお試し、アプリのツアー、スクール)です。送る内容は、その段階、プラットフォーム、アプリのバージョンのみで、端末の識別子、アカウント、デバイスの時刻は含みません。日時は、受け取った時点でサーバーが付けます。ここから分かるのは合計の数だけで、一人ひとりの道のりは分かりません。このカウントは、利用状況の計測への同意を待たずに動きますが、「オフ」を選ぶと止まります。
支払いは、iPhoneとiPadではApp Store、AndroidではGoogle Playを通じて行われます。銀行関連のデータが私たちに届くことはありません。サーバーは、購入ごとに該当するストアに確認します。取引番号または購入トークン、商品、付与したスキャンの数、サブスクリプションの期限、購入日を、アカウント、またはサインインしていない場合は端末の識別子にひもづけて保管します。この記録により、同じ支払いが二重に付与されるのを防ぎます。ストアからは、更新と返金の通知も届きます。
水の硬度を調べる場合(フランス国内)、端末は郵便番号を2つの公共サービス、geo.api.gouv.frとHub’Eauに送ります。アカウントも識別子も送りません。郵便番号は端末に保存され、私たちのサーバーには保存されません。
アプリはアップデートをExpo(EAS Update)からダウンロードします。Expoは端末のIPアドレス、プラットフォーム、インストールされているバージョンを受け取ります。
サイトはCloudflareがホスティングしており、Cloudflareは訪問ごとにIPアドレスを受け取ります。アクセスはCloudflare Web Analyticsで計測しており、トラッキング用のCookieも訪問者のプロファイルも使いません。選んだ言語は、ブラウザー内にとどまります。
iPhone版の公開を知らせてほしいとメールアドレスを残した場合は、公開時にメッセージを1通だけ送るため、そのアドレス、日付、ブラウザーの種類を、Supabase上の私たちのデータベースに保管します。アドレスを削除するには、hello@getkafa.comまでメールしてください。
これらの委託先の一部は、欧州連合の外でデータを処理します。AIサービスが受け取るのは、それぞれの作業に必要なものだけです(読み取りには写真、検索にはコーヒーの名前)。
アカウントのデータは、アカウントがあるかぎり残ります。アカウントなしで使われた端末のデータは、消去の依頼があるまで、またはその端末にひもづいたアカウントが削除されるまで残ります。
アプリでは、「プロフィール」>「設定」>「アカウントを削除」の順に進みます。アプリを使わない場合の手順は、アカウント削除のページにあります。
削除すると、アカウント(メールアドレス、名前、サインイン用の識別子)、カードと一杯ごとの記録、スキャンの写真と読み取り結果、アカウントから送ったカードの絵用の写真、サービスのログのうちあなたを示す記録、スキャンしたコーヒーの一覧が消去されます。サインイン前に端末で行った操作も消去されます。対象は、削除を行う端末と、私たちがあなたのアカウントにひもづけた端末です。アカウントと端末とのひもづけは解除され、購入済みスキャンの残高とサブスクリプションは、削除を行った端末に戻ります。
残るものは次のとおりです。購入の記録は、同じ購入が二重に付与されないよう、アカウントとのひもづけを外して残します(アカウントなしで行った購入には端末の識別子が残り、その識別子が引き続き残高と更新を保持します)。AIサービスへの呼び出しごとの費用は、金額、日付、呼び出しの種類だけにして残します。端末には、識別子と好みの設定が残ります。サーバーでは、この識別子が、購入済みスキャンの残高、サブスクリプション、この端末の無料スキャンのカウンターとひもづいたまま残ります。削除によって無料スキャンがリセットされないようにするためです。この記録は、まだ自動では消去していません。すでに別のアカウントにひもづいている端末には、アカウントなしで行った操作が残ります。IPアドレスのカウンターは、ネットワークごとの不正利用を抑えるために残ります。
「プロフィール」>「設定」で「データを削除」をタップします。お使いのバージョンにこの項目がない場合は、hello@getkafa.comまでメールしてください。この操作で、この端末にアカウントなしで保存したカードと一杯の記録、その写真、そしてサーバーがこの利用にひもづけているスキャンの撮影画像、読み取り結果、ログが消去されます。ほかのアカウント、購入、購入済みの残高は影響を受けません。ほかのカードやアカウントでまだ使われている端末内の写真は保持されます。設定、器具、テイスティングの記録は、この端末に残ります。
端末の識別子、無料スキャンのカウンター、消去の技術的な記録は残ります。あなたの権利を保ち、古いリクエストがデータを作り直さないようにするためです。AIの費用は匿名化されます。持ち主を特定できない古い端末内のファイルは、別のアカウントのファイルを消さないよう、保護したまま残します。これらも削除したい場合は、ご連絡ください。サブスクリプションは、App StoreまたはGoogle Playで解約しないかぎり続きます。
hello@getkafa.comにメールすれば、データの開示、訂正、消去を求めたり、データの処理に異議を述べたりできます。アプリで日誌を書き出すと、カードを手元に取り戻せます。CNIL(フランスのデータ保護当局)に申し立てることもできます。