For the complete documentation index, see llms.txt. This page is also available as Markdown.

In-app payments

Try integrating in-app payments in Apps in Toss to easily sell digital products, permissions, and content. Shortening the purchase flow makes it easier for users to pay and can quickly increase revenue.

What is in-app payment?

In-app payment is a payment method that lets users buy paid products directly inside the app. Users can pay for the features, items, or content they need without leaving the app. In-app payment products are divided into consumable items and non-consumable items.

  • Consumable items: These are products that disappear after use. To use them again, you need to buy them again. (e.g. game items, coins, hint passes)

  • Non-consumable items: These are products that can be used continuously after a one-time purchase. (e.g. unlocking premium features, removing ads, access to specific content)


Benefits of in-app payment

  • Because users can pay right away without leaving the app, you can reduce drop-off during payment.

  • You can generate revenue right from the early stages of app launch by selling paid items or subscription products.

  • You can create a variety of payment models by combining consumable and non-consumable items.

  • You can increase sales even more by offering products that fit the intended use.

Please note

  • Refunds for in-app payments follow Apple and Google policies.

  • The selling price is the amount obtained by adding value-added tax (VAT) to the supply price.

  • While payment is in progress, pause in-app functions such as music or video playback temporarily, and make sure they automatically resume after payment is complete.


Set up in the console

1) Register business information

To integrate in-app payments, you must first register your business information. Business information must be registered before you can proceed to the next steps, which are agreeing to the terms and entering settlement information. The registration method is as follows Guideplease refer to it.

2) Enter settlement information

To receive settlement for in-app payment revenue register settlement informationYou need to. Enter your settlement information in the 'Info' tab of the workspace, then request review. Review takes an average of 2 to 3 business days.

3) Register in-app products

If product information is entered accurately, users can clearly understand what they are purchasing, and you can reduce disputes or refund issues during operation.

There is a limit to the number of products you can register. Game mini apps can have up to 80, and non-game mini apps can have up to 30.

Product type

Please choose the type that matches how the product is used. You cannot sell cash-equivalent or redeemable products, or products bundled with Toss Points.

  • Consumables: These are products that are used up when used. To use them again, you need to repurchase them. (e.g. game items, internal currency top-ups, one-time passes)

  • Non-consumables: These are products that can be used continuously after a one-time purchase. (e.g. ad removal, permanent content)

  • Auto-renewing subscription: This is charged automatically at set intervals and can be used continuously until canceled. (e.g. monthly membership, periodic content subscription)

Product name

  • The product name should clearly reflect the features and conditions the user receives.

  • Please write it to match the actual offering.

  • You cannot use exaggerated or misleading wording. For example, if the usage period is fixed, you cannot write "unlimited."

Product image

  • Please design it so users can understand the product intuitively.

  • You can include text needed for identification, such as "30-day pass" or "100 coins."

  • If you include promotional wording, be sure to also show the event period.

  • The resolution must be registered as 1024 × 1024 px.

  • You must use only images that do not have copyright issues, and the images must be obtained directly by the partner company.

  • You cannot use images that are sexual, violent, or potentially offensive.

Supply price

  • The supply price is the amount before value-added tax (VAT) is added.

  • You can set it from a minimum of 400 KRW to a maximum of 1,400,000 KRW.

  • Only amounts in units of 10 KRW can be entered.

  • If you enter the supply price, the selling price is calculated automatically. The feature that automatically calculates the supply price by entering the selling price first is not supported at this time.

Selling price

The selling price is the final amount the user actually pays. It is automatically set to the amount obtained by adding value-added tax to the supply price.

Consumable discount

You can set discount benefits for in-app products of the consumable type. In the in-app product list in the console, click the "+ Discount" button shown for consumable products to register discount information. When setting a discount, enter the discounted supply price, discount period, and discount target. Once the discount setup is complete, it cannot be edited.

There are three discount targets.

  • All users: Apply the discount regardless of payment history.

  • Users without payment history: Apply the discount to users who have never made a purchase.

  • Users with payment history: Apply the discount to users who have a purchase history.

Please note

  • Users who have already purchased the discounted product cannot receive an additional discount, even if they are in the discount target.

  • Refunded payments are also included in purchase history.

  • Discounted products can also be purchased with the existing in-app payment SDK. No separate SDK integration changes are needed.

Settings exclusive to auto-renewing subscriptions

If you select the auto-renewing subscription type, you can configure the following additional items.

  • Auto-renewal cycle: Choose the interval at which payments repeat. (Weekly: auto-pay every 7 days / Monthly: auto-pay every 30 days / Yearly: auto-pay every 365 days)

  • Free trial: Users can enjoy subscription benefits without payment for a set period. When the free trial ends, paid billing starts automatically. Choose a period of 3 days, 1 week, 2 weeks, or 1 month.

  • New subscription discount: Offer a discounted price for a certain period to users starting a subscription for the first time. When you enter the discount period and discounted supply price, the discounted selling price is calculated automatically.

  • Resubscription discount: Offer a discounted price for users who previously canceled a subscription when they resubscribe. When you enter the discount period and discounted supply price, the discounted selling price is calculated automatically.

4) Register payment notification URL

You can register a URL to receive notifications when payment status changes, such as subscription renewals or cancellations. If you register a URL, an HTTP request will be sent to that URL when the status changes.

  • Payment notification URL: Please enter the server URL that will receive payment status change notifications.

  • Basic Auth header: You can optionally enter a Basic Auth header value. If entered, it will be included in the HTTP header of the notification request as shown below.

5) Check payment and refund history

Payment history

This is the history of products purchased by users in the mini app.

  • Payment complete: This means that the purchased product has been fully delivered to the user.

  • Payment completed: The payment has been made, but the purchased product has not yet been delivered.

Refund history

This is the history of refund requests made by users. You can review the reason for the refund request and reject or approve it. Users who paid with in-app payment can request a refund in the Toss app by tapping the 'Request refund' button.

Refund statuses are as follows.

  • Refund request approved: The partner company approved the refund request. Once approved, the app market review is requested.

  • Refund request rejected: The partner company rejected the refund request, or the app market rejected the refund.

  • Refund complete: The refund has been completed by the app market.

Refund policy by market

Refunds for in-app payments are handled differently depending on the user's operating system (OS) and market policies.

Android
  • Users request refunds directly in the Toss app.

  • The partner company can review the request and approve or reject it in the 'Refund history' menu of the Apps in Toss console.

  • However, the final approval or rejection is determined by Google Play.

  • The refund result is sent to the user as a push notification, and the user can also check it on the order detail screen. The same notification is sent even if the partner company or Google Play rejects the refund.

  • Please review both your internal policy and Google Play policy before handling refund requests.

iOS
  • Refunds for iOS users are managed entirely by Apple. Apple directly determines and approves all refunds.

  • The partner company cannot approve or reject refunds. This is because Apple does not provide the refund request function externally.

  • The partner company can only check the status through the payment status inquiry API.


Integrate development

Product list lookup, one-time payment request, etc. Development integration methodcan be checked.

Payment status lookup Development integration methodcan be checked.


Check performance

You can check the performance metrics of in-app payments that have been developed and integrated on one screen. Analyze revenue flow and user payment behavior together to improve product composition and operational strategy. Data will be updated sequentially starting after 8:00 AM on D+1.

  • Revenue metrics: total payment amount, total revenue, average revenue per payer, revenue per paying user

  • User metrics: number of active users, number of paying users, number of new paying users, number of repaying users, payment rate, final conversion rate


Frequently asked questions

What is the in-app payment fee?

The in-app payment fee is 15% app market fee (subject to change depending on future revenue) + 5% Toss fee.

For details, please check Settlement Guide > In-app payment.

I want to test in-app payments.

You can test in-app payments in the sandbox. Please check the guide.

What should I do if a user wants a refund?

For iOS users, please direct them to Apple Customer Support. (Apple has all the authority.)

For Android users, please guide them to submit a refund request within the Toss app, as shown in the guide.