0
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

Firebaseの収益表示とStoreConnect上の売上がズレる

Last updated at Posted at 2026-01-28

概要

Firebase の収益表示において、通常数ドルのところ数百ドルの収益が計上された
Store Connect 上の売上は通常通りで、売上乖離について調査した結果を記録

発生事象

  • Firebase Analytics のRevenueが1日だけ急上昇している
  • AnalyticsEventPurchase のイベント回数は1〜2回程度で異常なし
  • Store Connect の売上は正常

スクリーンショット 2026-01-28 22.48.47.png

原因

通貨コードを端末ロケール依存で送信していたため、
JPY 価格が USD として Firebase に解釈されていた・・

let currencyCode = Locale.current.currency?.identifier ?? "JPY"

AnalyticsService.shared.logPurchase(
    transactionId: transactionId,
    productId: productId,
    productType: productTypeForPurchase,
    price: priceForPurchase,
    currency: currencyCode
)

price = 800
currency = "USD"
→ Firebase 上では $800 として集計された

対応内容

日本でしか配信していないので、通貨コードを固定値に変更すれば解決です

let currencyCode = "JPY"

海外でも配信している場合はproductから取得すれば安心ぽいですが、試してはないです

let price = NSDecimalNumber(decimal: product.price).doubleValue
let currency = product.priceFormatStyle.currencyCode

補足

Firebase の過去データは修正不可なので注意が必要です!
(本当に800ドルなら良かったんですけどね)

参考

0
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
0
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?