11 min read

GhostPay v4.0.0 - Payment system rebuilt from scratch

Meet GhostPay: subscribe to GePro, donate, and track your payment in one place. Pay with crypto from your wallet, card via on-ramp, or Rewarble codes.

Hello everyone 👋

We have been working for a long time on something big: GhostPay v4.0.0. It is a full rewrite of how Ghost Land handles payments. The old donate flow is gone. The product now has a real name (GhostPay), a cleaner site, and room to grow.

Roughly 839 hours went into design and product work, and about 230 hours into building it. The site moved from donate.ghostland.at to pay.ghostland.at: same idea, new engine underneath.

👉 pay.ghostland.at


What you can do here

GhostPay helps you with three things:

  1. Subscribe or extend GePro: choose a duration (or an amount), then check out. Lifetime is part of the same flow.
  2. Donate: pick an amount within the limits shown on screen.
  3. Track a payment: you get a Payment ID (PID) to paste into the tracker. You do not need a separate GhostPay account just to look up a payment.

Prices are calculated in USD. You can still see amounts in your own currency so the numbers feel familiar.


How a typical visit looks

You land on the home page and choose GePro or Donation.

Next you set the amount. For GePro you can think in months or days or in dollars, and the site converts fairly between the two. For a donation you type what you want to give, above the minimum shown.

The Pricing page lists the full table, “price per month” style comparisons, and a small converter between money and duration. Use it to compare; you do not have to buy from that page alone.

Then you pick how to pay (see below). After that you either see a success screen with the references to save, or a clear error so you know what to try next.

If you need to check progress, open Track and enter your PID. You will see status, what you paid, how much GePro time you get when it applies, and a simple timeline (what happened and when). If something is still in progress, the page can update on its own so you are not stuck refreshing.


GePro prices (reference in USD)

DurationPrice (USD)
1 month (30 days)5.00
2 months9.00
3 months12.00
6 months23.00
1 year39.00
2 years72.00
Lifetime180.00
  • GePro: minimum 5 USD. Custom lengths or amounts that fit the grid follow the same logic as the table.
  • Donation: minimum around 0.50 USD (shown in your display currency).
  • There is also a safety cap on very large manual inputs.

Lifetime is stored as a very long duration in our systems; for you it simply means lifetime as advertised.


How you can pay (today)

There are three main paths:

  1. Crypto from your wallet (you send coins to the address we show).
  2. On-ramp: your bank card buys crypto through a partner, and that settles GePro or your donation.
  3. Alternative payment: if you want PayPal, card, or similar rails without using our on-ramp or a wallet send, pick alternative payment. That path is built around Rewarble: you buy Rewarble voucher codes (Rewarble and many resellers accept PayPal, card, and more), then you redeem those codes on GhostPay. On that path we only accept Rewarble codes, not random store gift cards.

We still do not offer a single “pay with card only” or “pay with PayPal only” button that charges your whole amount directly on our site. Card and PayPal come in through on-ramp (card → crypto) or through alternative payment (card / PayPal → Rewarble code → GhostPay).

Some options may still show coming soon depending on what we enable in production. Wallet crypto might be hidden in some builds even though the feature exists in the product.

Pay with crypto from your wallet

You choose a coin from the list that fits your amount. GhostPay shows the exact sum to send, a QR code, and a deposit address. Each crypto payment gets its own dedicated wallet (deposit address): we do not reuse one address for unrelated orders, so your payment stays tied to a single checkout.

There is a timer; send the right asset to the right place within the window. If the amount or network is wrong, the loss is on the sender side, so read the screen carefully.

While we wait for the network, the status updates for you. When it is done, GePro or the donation follows the same automatic path as our other methods.

Pay with a card (on-ramp)

You pay with your card through a partner that sells you crypto for that purchase. Who appears (MoonPay, Banxa, and others) depends on the gateway and your amount.

For GePro we show fees openly: 1 USD fixed + 1% on top of what you are buying. Donations do not use that same fee line on the summary. You will also be asked for your Ghost eShop Pro email on GePro flows so we know which account to extend. If you refresh the page mid-flight, we try to bring you back where you left off. You can also go back and pick another method without getting stuck.

Alternative payment: Rewarble codes (PayPal, card, etc.)

Use this when you want PayPal, bank card, or similar outside our on-ramp crypto flow. Buy Rewarble vouchers from Rewarble or listed resellers using whatever they support (PayPal, card, and other methods are common), then enter the codes here. Only Rewarble vouchers work (not Nintendo, Steam, etc.). The format is 16 characters, letters and numbers mixed; the long numeric PIN that some cards use is not what this form expects.

You can enter up to six codes in one go. They add up into one payment and one PID. If the total is more than you needed for GePro, we extend your subscription accordingly; if it is less, the time you get is shorter. Used codes are rejected; if Rewarble is temporarily flaky, we retry until every code has a final answer.


One payment, one record (no jargon needed)

Behind the scenes, GhostPay keeps one running record for each checkout from the moment you confirm an amount until the payment finishes or fails. That is what lets Track, your PID (GHOST-…), and the pi_… you might see in the URL all describe the same order.

If you switch payment method halfway, we may start a fresh record so nothing from the old channel leaks into the new one. When a GePro payment succeeds, adding time to your account runs automatically; you should not need to open a ticket just because the money arrived.


Why GhostPay exists (project goals)

This rewrite was not only a new UI. We had a few concrete goals:

  1. Speed for you. Make the experience near-instant so you are not waiting hours for GePro to update after paying. Confirmation, subscription extension, and Track should reflect reality in seconds, not the next day.

  2. Treasury automation. Run the internal settlement pipeline end-to-end with less manual shuffling of funds, stronger obfuscation, and flows that are harder to trace on-chain than with the old stack.

  3. Less grind for the team. Move payment and treasury work off admins’ plates so they can focus on other projects and code instead of hand-holding every inbound payment.

  4. A platform for later. GhostPay is built so we can embed checkout natively on other websites, in homebrew, or in partner flows when we are ready, without bolting another one-off stack on top.


Under the hood (technical)

If you like implementation detail, here is how GhostPay is put together.

Stack. The public site is a Nuxt 3 front end backed by a dedicated API and database. Shared types and payment logic live in internal packages; on-ramp, GePro, and other provider integrations sit in a separate layer so we can add or change partners without rewriting the core checkout flow.

Payment intents. Each checkout is a payment intent: a stored record with amount, currency, flow (GePro vs donation), status, chosen method when set, and provider-specific metadata. The browser never invents ids: the API issues the internal pi_… handle and the public PID (GHOST-…). Webhooks and provider callbacks all tie back to that same intent, which is why Track can show one coherent timeline.

Settlement pipeline after funds are in. Whatever rail you used (wallet crypto, on-ramp, Rewarble, or any other method we expose), incoming value is fully automated into a treasury leg: balances are routed to our crypto wallets, then processed through cross-network swaps so assets can move between chains as needed, then through mixing to break simple traceability. We add more technical steps on top, in particular splitting flows across several wallets and structuring patterns: spreading value across many outputs so no single hop tells the whole story. This replaces the flatter “one hot wallet” model we relied on before and cuts down manual balance babysitting.

No further detail. For security reasons, we will not document the exact order of operations, tools, wallet graphs, or timings of this settlement layer. What you read above is the intentional level of transparency; anything more specific stays off public channels.

Automation end-to-end. From confirmation to GePro extension, the path is fully automated: detection, intent finalisation, webhook to the GePro services, and subscription writes happen in the same pipeline. In practice, GePro time is applied within seconds of a successful payment, not after an overnight queue or a manual staff step. Donations and Rewarble-settled GePro follow the same idea: validate, close the intent, trigger downstream jobs, update Track without someone clicking approve in a dashboard.

You do not need to understand any of this to pay; it is there so technical readers know the rewrite is not only a new skin but a new backend and treasury model.


Languages and currencies

The interface is available in more than 40 languages and regional variants (English US/UK, French, German, Spanish in several regions, Portuguese including Brazil, Japanese, Korean, Chinese simplified and traditional, Russian, Arabic, Hindi, Bengali, Thai, Vietnamese, Turkish, Polish, Ukrainian, and many more).

By default, language and display currency follow your browser (the language and locale signals the site can read). If we cannot match a locale exactly, we fall back sensibly (often English). You can always override language and display currency in the site settings if you want something different.

We keep the books in USD, but we show you rates in EUR, GBP, JPY, BRL, and a long list of others. Automatic display currency stays aligned with the active interface language once you have chosen it. A few rare locale defaults may use a currency outside the short picker list; the goal is always the same: you see a familiar number even though the real reference is USD.


After you pay

You should not have to “do admin work” on our side once you have sent the right amount, finished the partner checkout, or submitted valid Rewarble codes. The site moves the payment through pending, processing, and done (or failed) and, for GePro, notifies the subscription service without you filing another form. GePro subscriptions usually update within seconds after a successful payment.

The Track page is there if you want peace of mind: timeline, optional refresh while something is still moving, and often a way to continue an in-flight payment if the flow allows it.


What we are working on next

GhostPay is a big milestone, not the end of the roadmap. More is planned soon, including:

  • 3dserver: work in progress; it still needs to be finished and aligned with the rest of the stack.
  • Pro API: for people who want mass downloads and scripted access, with proper auth and limits.
  • Chunk system overhaul: redesign how we slice and serve large content so we can add more automation and stronger security on the delivery side.

We will announce each piece when it is ready.


In short

GhostPay v4.0.0 is our new checkout at pay.ghostland.at: built to be fast for users, automated for treasury settlement and lighter for admins, and ready for future embeds on other sites and homebrew. It bundles GePro and donations in one funnel, wallet crypto (dedicated deposit address per payment), card through on-ramp, Rewarble, PID tracking, many languages and currencies (browser defaults, settings to override), and GePro updates in seconds. Up next: 3dserver, Pro API for mass download, and a chunk system refit for automation and security.

Thank you for supporting Ghost Land. If something feels confusing on the site, tell us; we use that feedback.

  • Your Ghost Land Team