このページはまだ日本語に翻訳されていません。英語の原文を表示します。

Credits and payment

One credit equals one Korean won; minimum top-up 10,000 KRW

MyIP OpenRouter runs on prepaid credits. There is no monthly base fee, no subscription, and no minimum commitment. You top up a balance, and every API request draws down exactly what it costs.

One credit is one Korean won

There is no conversion between credits and won. Top up 10,000 KRW and your balance becomes exactly 10000; a request that costs 0.21 credits has cost you 0.21 won. Every monetary number in the dashboard and in API responses is in Korean won (KRW), never in US dollars.

The response header X-MyIP-Currency: KRW restates this on every request, and the pricing object returned by GET /api/v1/models carries "currency": "KRW".

1,000 KRW signup bonus

New accounts receive a one-time bonus entry of 1,000 KRW in the credit ledger. You can call the API immediately without entering any payment details. The bonus is granted once per account and is not re-issued if you close and re-open an account.

On local GPU models, 1,000 KRW covers thousands of short conversations. See How costs are calculated for the arithmetic.

Topping up

Go to /settings/credits, choose an amount, and pay. Payment runs through the TossPayments payment widget, which supports cards, Korean simple-pay wallets, bank transfer, and virtual accounts.

ItemValue
Minimum top-up10,000 KRW
Maximum per charge1,000,000 KRW
Quick-select buttons10,000 / 30,000 / 50,000 / 100,000 KRW
Custom amountWhole won only
VATIncluded in the amount (10%)

The minimum is enforced on the server. Calling POST /api/payments/orders directly with an amount of 9,999 returns a 400 error.

VAT

Top-up amounts are VAT-inclusive. Paying 10,000 KRW splits internally as:

supply amount = 10,000 ÷ 1.1 = 9,090.909091 KRW
VAT           = 10,000 - 9,090.909091 = 909.090909 KRW

Both figures are stored with the payment record and shown on the receipt page.

If you paid by virtual account

With a virtual account, credits are not issued when the payment window closes. The payment sits in a waiting for deposit state until the transfer actually arrives, and the credit entry is written then. Deposit confirmation is handled automatically by the TossPayments webhook, so there is nothing for you to do.

Receipts

Each payment row in your transaction history offers two things:

  • Card sales slip — the receipt_url issued by TossPayments.
  • Payment detail/settings/credits/receipt/{orderId} shows the amount paid, supply amount, VAT, payment method, approval time, and order number.

Checking your balance

The dashboard at /settings/credits shows your current balance and transaction history. The API exposes the same numbers.

bash
curl https://openrouter.myip.co.kr/api/v1/credits \
  -H "Authorization: Bearer $MYIP_API_KEY"
json
{
  "data": {
    "total_credits": 11000,
    "total_usage": 42.317
  }
}

total_credits is the sum of everything ever added (top-ups plus bonuses); total_usage is the sum of everything ever deducted. Your balance is the difference. Both are in KRW and accurate to six decimal places.

Non-streaming responses also carry the post-settlement balance directly in the headers:

X-MyIP-Cost-KRW: 3.001050
X-MyIP-Credit-Balance: 10996.998950
X-MyIP-Currency: KRW

How credits are spent

When a request finishes, we compute its cost and append one deduct row to your credit ledger. The ledger is append-only — rows are never updated or deleted — and each row records the resulting balance, so a past charge can always be reproduced even after prices change.

  • Failed requests (upstream errors) are not billed.
  • A request with zero prompt tokens and zero completion tokens is not billed.
  • Cancelling a stream mid-flight still bills the tokens generated up to that point; the upstream compute was already spent.

The full formula lives in How costs are calculated.

When the balance runs out

SituationResult
Balance drops to zero or belowThat account's API keys are suspended automatically (suspended_no_credit)
Request with a suspended key402 insufficient_credits
Successful top-upAutomatically suspended keys are reactivated automatically

Several concurrent streaming requests can push the balance briefly negative. To absorb that, we allow an overdraft of up to 5,000 KRW. Below that floor, new requests are rejected with 402. See Limits and 402 for the exact behaviour.

Refunds

  • Use the refund enquiry mailto link on /settings/credits. An administrator reviews and executes the refund.
  • Unconsumed credits are refundable in full within 7 days of the payment.
  • Credits you have already spent are not refundable.
  • The refund is cancelled against the original payment method, and the refunded amount is deducted from your credit balance at the same time. If your balance is smaller than the refund amount, the refund is declined.

The precise terms are in our Terms of Service.

Do credits expire?

No. Topped-up credits do not expire. We never reclaim a balance for being old.

Common snags

  • Tried to top up less than 10,000 KRW — that is the minimum, and the server enforces it.
  • Tried to top up more than 1,000,000 KRW at once — that is the per-charge cap. Split it into several payments.
  • Payment went through but the balance did not change — with a virtual account, the transfer has not arrived yet. With a card or wallet, check again in a few minutes; a reconciliation job compares payment approvals against the ledger every five minutes and repairs most gaps on its own. If it persists, contact us.
  • Topped up but the key is still blocked — a key suspended by an administrator (suspended_admin, 403 key_suspended) does not unblock on top-up. Only keys auto-suspended for zero balance are restored automatically.

最終更新 2026/09/05