Documentation

​
​

Development

User Acquisition

Monetization

Industry

In-App Purchasing

IAP Client API

IAP SDK API

Webshop Admin API

Webshop Client API

In-App Purchasing

LiveOps
​
​
Get started
  • Overview
  • Introduction to IAP
  • What's new in IAP v5.4
  • Upgrade from IAP v4 to v5
  • AI skill for In-App Purchasing
Direct to Consumer (D2C) payments
  • Direct to Consumer (D2C) payment providers
    • Integrate D2C payment providers workflow
    • Initiate a purchase
    • Refunds and disputes for D2C payments
    • Currencies and exchange rates for D2C payments
    • Comply with Apple and Google external purchase requirements
    • Deep link Success URL example
Webshop
  • Overview
  • Get started with webshops
  • Webshop setup
  • Catalog and payments
  • Game integration for webshops
  • Troubleshooting webshops
Platform-native stores
  • Set up IAP for platform-native stores
  • Codeless IAP
Catalogs and store management
  • Create product catalogs
  • Supported stores
Purchases
  • Purchase management and fulfillment
Monitor IAP performance
  • Overview
  • IAP revenue performance
  • D2C performance
Privacy
  • Privacy and consent
  1. Unity In-App Purchasing
  2. Direct-to-Consumer (D2C) payment providers

Currencies and exchange rates for D2C payments

Understand how Unity IAP stores per-currency prices and how your payment provider converts, presents, and settles them for Direct-to-Consumer payments.
Read time 4 minutes
Last updated a day ago

Direct-to-Consumer (D2C) pricing has two halves. Unity In-App Purchasing (IAP) holds the prices you set, one per currency, in your catalog. Your payment provider, as the merchant of record (MoR), handles everything that happens to those prices at checkout. That includes which currency it shows the player, any currency conversion, and the currency it settles your payout in.
This page explains the division of responsibilities and how per-currency prices work in your catalog. It also covers how your game selects a currency at checkout, what your provider converts, and where currency appears in orders and reporting.

Division of responsibilities

Concern

Owner

The price of each product in each currencyYou, in your IAP catalog
Which currency the catalog returnsYour game, through the
currency
and
locale
parameters
Presenting the price and taking the paymentYour payment provider, as MoR
Currency conversion and exchange ratesYour payment provider, as MoR
Supported currencies and local payment methodsYour payment provider, as MoR
Payout and settlement currencyYour payment provider, as MoR
Unity IAP doesn't convert between currencies at runtime. It returns the prices you set. If you want a product available in a currency, add a price for that currency to your catalog.

Per-currency pricing in your catalog

Each catalog listing carries a
pricing
array with one entry per currency. Each entry has the following characteristics:
  • currencyCode
    is an ISO 4217 currency code, such as
    USD
    or
    EUR
    .
  • amount
    is an integer in micros, where 1,000,000 micros is one unit of the currency. For example,
    9990000
    is 9.99.
  • The array must contain at least one entry, and one of those entries must use
    USD
    .
For the full schema, refer to Catalog schema. For webshop listings, which can carry a separate
webshopPrice
per currency, refer to Webshop catalog schema reference.
You can add currencies in the Unity Dashboard or through a CSV import:
  • In the Dashboard, select Add (+) next to Base price to add a currency, or select the calculator to convert an amount from another currency. Refer to Add a catalog listing.
  • In a CSV, each row defines one product for one language and currency. To price the same product in more currencies, repeat the row and reuse the
    CatalogItemId
    value. Refer to Create Remote Catalog.

Currency selection at checkout

Your game tells Unity IAP which currency to return when it requests the catalog. In a webshop, you pass
locale
and
currency
as URL parameters when you open the shop, so the catalog returns prices for the player's region:
https://shop.unity.com/acme/game/dungeons?sessionToken=…&projectId=…&environment=production&locale=ja-JP&currency=JPY
If you omit those parameters, the catalog falls back to the player's browser locale and prices in US dollars (USD). For more information, refer to Integrate a webshop into a Unity game and Open a webshop from your game.
To preview how prices appear across regions before you publish, use the currency switcher in the Dashboard's Preview pane. Refer to Introduction to webshops.

Currency conversion by your payment provider

Your payment provider decides which currencies and local payment methods it supports in each market. It converts between the currency it presents to the player and the currency it settles your payout in, and it sets the exchange rates it applies. Unity IAP takes no part in the conversion and doesn't receive the exchange rate.
Provider capabilities differ:
  • Stripe: Managed Payments enables Adaptive Pricing by default. Stripe converts your price into the player's local currency based on their location and handles the conversion for you. Some local payment methods only appear at checkout when you present prices in the local currency, so check the payment method availability for your target markets. To quote a rate up front instead, refer to Localize prices and the FX quotes API.
  • Coda: Coda supports local currencies and payment methods across the markets it operates in. For the currencies available to your account, contact Coda.
Note
Each payment provider sets its own transaction fees and currency conversion margins, which you negotiate directly with the provider. Unity doesn't charge a fee to use IAP with D2C payment providers. Refer to Direct-to-Consumer (D2C) payment providers.

Currency in orders and reporting

Orders record the currency of the transaction. In the order payload, each
lineItems
entry and the order
total
carry an
amountMicros
value and a
currency
code, and
total
also carries
refundedAmountMicros
. Refer to the webhook event shape.
For how revenue and refund activity appear in the Unity Dashboard, refer to D2C Performance reference and Revenue Performance reference.

Copyright © 2026 Unity Technologies
LegalPrivacy PolicyCookiesDocumentation Terms of UseDo Not Sell or Share My Personal InformationYour Privacy Choices (Cookie Settings)

"Unity", Unity logos, and other Unity trademarks are trademarks or registered trademarks of Unity Technologies or its affiliates in the U.S and elsewhere (more info here). Other names or brands are trademarks of their respective owners.

Some pages are machine-translated for convenience, and may contain inaccuracies. In the event of conflicting information, the English version is authoritative.

  • On this page
    • Division of responsibilities

    • Per-currency pricing in your catalog

    • Currency selection at checkout

    • Currency conversion by your payment provider

    • Currency in orders and reporting

  • Additional resources
  • Stripe: Adaptive Pricing
  • Stripe: Localize prices
  • Stripe: FX quotes API

Report a problem with this page