Skip to main content
Skip to navigation

In-App Currency feed

Columns for the In-App Currency Scheduled Data Export feed

Ask RicoChatGPTClaude

This page lists the columns of the In-App Currency feed. For setup, delivery frequency, and file formats, see Scheduled Data Exports.

The In-App Currency feed exports your in-app currency ledger, one row per balance adjustment. RevenueCat delivers it to <base>/virtual_currency/<date>/virtual_currency_<timestamp>.<ext>. It's a full-snapshot feed: each run re-exports the entire ledger, and incremental delivery isn't supported. To set up in-app currencies in your project before exporting them, see In-App Currency.

Columns​

New integrations start with a default selection of the most commonly used columns; you can adjust the selection from the column catalog in the dashboard. For step-by-step instructions, see Selecting columns for an export.

Each row records a credit or debit and the running balance after that adjustment. When the adjustment originated from a store purchase, the row also includes the associated purchase fields.

Purchase-related columns (store, is_sandbox, store_transaction_id, product_identifier, and price fields) are null on non-purchase rows. Refund columns (refund_amount_usd, refund_amount_in_purchased_currency, refund_type) are populated only on REFUND_REMOVAL rows with a positive refund delta.

All dates and times are in UTC.

HeaderDescriptionTypeExample valueCan be null
rc_original_app_user_idThe original App User ID for the Customer. Can be used as a unique Customer identifier to find all of a user's in-app currency events.string$RCAnonymousID:87c6049c58069238dce29853916d624cYes
rc_last_seen_app_user_id_aliasThe last seen alias for the App User ID. Can be used together with rc_original_app_user_id to match events with Customer identifiers in your systems.string$RCAnonymousID:87c6049c58069238dce29853916d624cYes
transaction_typeIn-app currency event type. One of PURCHASE, DEDUCTION, GRANT, REFUND_REMOVAL, expiration, or other.stringPURCHASEYes
currency_codeCode of the in-app currency.stringcoinsYes
adjustment_amountSigned amount of this balance adjustment. Positive values are credits; negative values are debits.integer100Yes
updated_balanceRunning balance for this balance ID after this adjustment, floored at 0.integer250Yes
event_timestampWhen the underlying in-app currency transaction occurred.datetime2023-01-01 08:27:06Yes
updated_atWhen this ledger row was last updated in RevenueCat.datetime2023-02-20 05:47:55Yes
idempotency_keyIdempotency key of the underlying in-app currency transaction. Use this to deduplicate rows if you ingest the same delivery more than once.stringvc_tx_abc123Yes
storeStore the originating purchase came from (app_store, play_store, etc.). null for non-purchase rows.stringapp_storeYes
is_sandboxWhether the originating purchase was made in a sandbox environment. null for non-purchase rows.booleanfalseYes
store_transaction_idIdentifier the store assigned to the originating purchase.string123456789012345Yes
product_identifierIdentifier of the product purchased.stringcoins_100_packYes
price_in_usdPrice of the purchase in USD, after any refunds.float4.99Yes
purchase_price_in_usdCatalog price of the purchase in USD, before discounts and refunds.float4.99Yes
purchased_currencyCurrency the purchase was made in.stringUSDYes
price_in_purchased_currencyPrice of the purchase in its purchased currency, after any refunds.float4.99Yes
purchase_price_in_purchased_currencyCatalog price of the purchase in its purchased currency, before discounts and refunds.float4.99Yes
refund_amount_usdRefunded amount in USD. Populated only on REFUND_REMOVAL rows with a positive refund delta.float4.99Yes
refund_amount_in_purchased_currencyRefunded amount in the purchased currency. Populated only on REFUND_REMOVAL rows with a positive refund delta.float4.99Yes
refund_typeFULL or PARTIAL. Populated only on REFUND_REMOVAL rows with a positive refund delta.stringFULLYes
Was this page helpful?