How to pay for the OpenAI API from Russia: why it fails and what to do
Paying an OpenAI account directly from Russia is not available. A working replacement: a gateway balance and the same OpenAI SDK code with two lines changed.
5 min · · payments · API keys
The question "how to pay for the OpenAI API from Russia" comes up for people who have already written code on the OpenAI SDK and hit a refusal at the top-up stage. We will look at why this happens and show a working path: a gateway balance paid by SBP, a MasterCard card or crypto, and the same code with two lines changed.
Why the payment fails
The cause is not your card or your bank. OpenAI does not work with Russia as a country: the service is not provided to users from Russia, and payment methods tied to it are not accepted. For details and the current list of supported countries, see OpenAI's own terms, which can change.
Two practical conclusions follow:
- repeating the payment, changing cards and trying "once more" is pointless;
- looking for ways around the service's terms is unnecessary and risky: accounts bought from third parties and "shared keys" are easily lost together with your money and data.
The working path is different: do not pay OpenAI directly, use a gateway that gives access to models through the same API format. Access from Russia goes through the gateway, with payment via SBP, a MasterCard card or crypto.
ChatGPT and the API are different things
The two products are often confused.
- ChatGPT is a chat with a subscription. The subscription does not give you a key for programs.
- The API is access from code, paid separately per token. An API key and a chat subscription are unrelated.
If you search "chatgpt api how to pay", you need the second model: a balance from which each request's fee is deducted. That is how the gateway works: one dollar balance, you pay only for tokens spent, no subscription.
How to top up the balance
Top-ups start from $1. Three methods are available:
| Method | Fee | Notes |
|---|---|---|
| SBP | 8.5% on top on the payment page | rubles at the market rate at the moment of payment, the balance receives the requested dollar amount |
| Cryptocurrency | see the payment page | USDT and others |
| MasterCard cards | about 13% | amounts $2-$594 |
An SBP example. You want to add $5: the payment page adds 8.5%, so 5 × 1.085 = $5.425 in equivalent at the rate at the moment of payment. Exactly $5 arrives on the balance. With MasterCard the fee is about 13%, so for the same $5 roughly 5 × 1.13 ≈ $5.65.
A step-by-step SBP guide is in the post on paying via SBP, cards in the post on MasterCard.
Steps
- Register at zukko.pro and open the dashboard.
- Top up the balance with one of the methods above.
- Create a key in the API keys section. The full
fetch_...key is shown once, save it immediately. - Change two things in your code:
base_urland the key.
The quick start is described in the docs.
The same code on the OpenAI SDK
Before (direct access):
from openai import OpenAI
client = OpenAI(api_key="sk-...")After:
from openai import OpenAI
client = OpenAI(
base_url="https://api.zukko.pro/v1",
api_key="fetch_your_key",
)
response = client.chat.completions.create(
model="gpt-6.1-sol",
messages=[{"role": "user", "content": "Hi! Answer in one sentence."}],
)
print(response.choices[0].message.content)
print(response.usage)Nothing else needs changing: chat.completions, streaming and usage work the same. If you would rather not edit code, environment variables are enough:
export OPENAI_BASE_URL=https://api.zukko.pro/v1
export OPENAI_API_KEY=fetch_your_keyThe address must end in /v1. Without it you get 404.
The gateway supports the OpenAI format (POST /v1/chat/completions, GET /v1/models, POST /v1/responses) and the Anthropic format (POST /v1/messages). If you need not ordinary text generation but a specific feature that is not in this list of endpoints, test it with a trial request before migrating the project.
Which models are available
The list changes; the current one is always returned by GET https://api.zukko.pro/v1/models. As of 18 October 2026, for example, prices in dollars per 1M tokens:
| Model | Input / output | Context |
|---|---|---|
gpt-6.1-sol | 0.27 / 1.32 | 1M |
gpt-6-sol | 0.13 / 0.63 | 1M |
gpt-6-astra | 0.62 / 3.05 | 1M |
gpt-6-luna | 0.04 / 0.21 | 1M |
These are only GPT models; the same key also gives access to Claude, Gemini, DeepSeek, Qwen and others. Changing the model means changing the model string.
Let us estimate a request: 1000 input tokens and 300 output tokens on gpt-6.1-sol:
1000 × 0.27 / 1,000,000 + 300 × 1.32 / 1,000,000 = 0.00027 + 0.000396 = $0.000666.
A thousand such requests cost about $0.67 (not counting the top-up fee).
If something goes wrong
- 401: wrong key, or you left the old
sk-...in place. - 402: not enough balance, top up.
- 404: no
/v1in the address or a wrong model name (model_not_found). - 403,
model_not_allowed_for_key: the model is not allowed for this key. - 429: the key's limit is exhausted or the model provider's own limit.
If a payment is "stuck", do not pay again: check the top-up history in the dashboard first. Moving a project from the direct API is described in the post migrating from the OpenAI API.
FAQ
Can I pay for the OpenAI API directly from Russia?
Paying an OpenAI account directly from Russia is not available; that comes from the service's own policy. A working option: top up the gateway balance via SBP, MasterCard or crypto.
How do I top up a balance for the ChatGPT API?
The API needs not a ChatGPT account but a balance at the provider. In the gateway it is a single dollar balance: top-up from $1, the key is created in the dashboard.
Do I need to rewrite my code?
No. base_url and the key change, the rest of the OpenAI SDK code stays the same. Take model names from GET /v1/models.
How much does it cost to start?
The minimum top-up is $1. By the estimate above, on gpt-6.1-sol that is about 1500 requests of 1000 input and 300 output tokens (1 / 0.000666), not counting the top-up fee.
zukko
Pay 25×
less
for Claude Code & ChatGPT
One fetch_* key and base URL api.zukko.pro — for Cursor, Claude Code, Codex, and any SDK.
Related articles
- How to pay for the DeepSeek API from Russia: options and stepsTwo ways to pay for the DeepSeek API from Russia: directly at the provider and through a gateway. Amounts, fees with calculations and a step-by-step guide to the first request.
- Buying an AI API key: what you actually buy and what you riskListings that say "buy a ChatGPT API key" sell different things. We explain the difference between someone else's key and your own key with a balance, and give a checklist.
- Paying for OpenRouter from Russia: why it is hard and what the options areWhy topping up OpenRouter from Russia usually fails and what to do: check payment methods with the service or move to a gateway with SBP and crypto. What to change in code.
- OpenAI API Keys in the Open: Why You Should Not Use ThemWhere free keys on GitHub come from, why using them is dangerous for you and for the owner, and how to protect your own key from the same leak.