Skip to main content

Game-currency data types

This page contains the current public game-currency contract. Player-wallet top-up types are documented beside complete exchanges in Player balance top-up.

Game-currency types​

GameCurrencyOffer​

FieldTypeDescription
idID!Offer identifier
skuString!Offer code
nameString!Localized name
descriptionString!Localized description
shortNameString!Short currency name
iconReferenceString!Artwork reference
messageString!Delivery message
deliveryTypeGameCurrencyDeliveryType!Delivery type
unitsPerPurchaseInt!Units in one package
unitPriceGameCurrencyMoney!Package price

GameCurrencyMoney​

FieldTypeDescription
unitsString!Atomic integer value
codeString!Currency code
scaleInt!Precision
decimalString!Ready-to-display decimal value

A zero-total purchase is confirmed without payment: paymentId is null and paymentStatus is NOT_REQUIRED. The order progresses through CONFIRMED, FULFILLING and FULFILLED; confirmation does not yet mean delivery is complete.

GameCurrencyQuote​

FieldTypeDescription
idID!Calculation identifier
offerGameCurrencyOffer!Offer snapshot
quantityInt!Package count
deliveredUnitsInt!Total delivery
unitAmountGameCurrencyMoney!Package price
subtotalGameCurrencyMoney!Amount before discounts
adjustments[GameCurrencyPriceAdjustment!]!Price adjustments
totalGameCurrencyMoney!Amount to pay
hasSavingsBoolean!Whether a discount applies
deliveryGameCurrencyDeliveryTarget!Recipient
expiresAtDateTime!Expiration

GameCurrencyPriceAdjustment​

FieldTypeDescription
codeString!Adjustment code
kindGameCurrencyPriceAdjustmentKind!DISCOUNT or SURCHARGE
sourceGameCurrencyPriceAdjustmentSource!Rule source
amountGameCurrencyMoney!Adjustment amount

GameCurrencyDeliveryTarget​

FieldTypeDescription
typeGameCurrencyDeliveryTargetType!CHARACTER or GAME_ACCOUNT
accountNameStringGame account or null for guest character delivery
characterNameStringCharacter or null

GameCurrencyPurchase​

FieldTypeDescription
orderIdID!Order
quoteIdID!Used calculation
orderStatusGameCurrencyOrderStatus!Order state
paymentIdIDWallet payment
paymentStatusGameCurrencyPaymentStatus!Debit state
totalGameCurrencyMoney!Order total
createdAtDateTime!Creation time

StorefrontMoney​

FieldTypeDescription
unitsString!Atomic integer value
decimalString!Ready-to-display decimal value
currencyCodeString!Currency code
currencyScaleInt!Currency precision

StorefrontExternalPaymentPreparation​

FieldTypeDescription
orderIdID!Order awaiting external payment
quoteIdID!Purchase calculation
orderStatusStorefrontOrderStatus!Order state
intentStorefrontExternalPaymentIntent!Payment intent
methods[StorefrontExternalPaymentMethod!]!Eligible methods and calculations

StorefrontExternalPaymentMethod​

FieldTypeDescription
idID!Method-profile identifier
codeString!Method code
nameString!Display name
iconAssetIdStringRegistered icon or null
paymentQuoteStorefrontExternalPaymentQuote!Amount, fee, and expiration

StorefrontExternalPaymentQuote​

FieldTypeDescription
idID!Selected-method calculation
paymentAmountStorefrontMoney!Amount in payment currency
destinationAmountStorefrontMoney!Order amount
payerFeeStorefrontMoney!Payer fee
expiresAtDateTime!Expiration

StorefrontExternalPaymentExecution​

FieldTypeDescription
orderIdID!Order
quoteIdID!Purchase calculation
orderStatusStorefrontOrderStatus!Order state
intentStorefrontExternalPaymentIntent!Intent state
attemptStorefrontExternalPaymentAttempt!Current attempt
actionStorefrontExternalPaymentActionClient action or null

StorefrontExternalPaymentIntent and StorefrontExternalPaymentAttempt contain an id, typed status, and expiresAt. StorefrontExternalPaymentAction contains kind, expiresAt, and exactly one applicable representation: redirect, formPost, qrCode, deepLink, or wait.

Game-currency enums​

EnumValues
GameCurrencyDeliveryTypeCHARACTER_ITEM, ACCOUNT_POINTS
GameCurrencyDeliveryTargetTypeCHARACTER, GAME_ACCOUNT
GameCurrencyPriceAdjustmentKindDISCOUNT, SURCHARGE
GameCurrencyPriceAdjustmentSourceCATALOG_SALE, REFERRAL, VIP, CAMPAIGN
GameCurrencyOrderStatusCONFIRMED, PENDING_PAYMENT, PAID, FULFILLING, FULFILLED, CANCELLED
GameCurrencyPaymentStatusNOT_REQUIRED, DEBIT_PENDING, PAID, REVERSAL_PENDING, REVERSED, REQUIRES_REVIEW
StorefrontOrderStatusCONFIRMED, PENDING_PAYMENT, PAID, FULFILLING, FULFILLED, CANCELLED
StorefrontExternalPaymentIntentStatusOPEN, PROCESSING, SETTLED, CANCELLED, EXPIRED
StorefrontExternalPaymentAttemptStatusCREATED, REQUIRES_CUSTOMER_ACTION, PENDING_PROVIDER, AUTHORIZED, CAPTURED, DECLINED, CANCELLED, EXPIRED, REVIEW_REQUIRED
StorefrontExternalPaymentActionKindREDIRECT, FORM_POST, QR_CODE, DEEP_LINK, WAIT

PrepareGameCurrencyPurchaseInput​

FieldTypeRequiredDescription
requestIdID!yesUUIDv7 preparation key
offerIdID!yesOffer
quantityInt!yesFrom 1 to 1,000,000
accountNameString!yesAccount owned by the player
characterNameStringnoRequired for character delivery

PurchaseGameCurrencyInput​

FieldTypeRequiredDescription
orderRequestIdID!yesUUIDv7 order key
paymentRequestIdID!yesUUIDv7 debit key
quoteIdID!yesActive calculation

PrepareGuestGameCurrencyPurchaseInput​

FieldTypeRequiredDescription
gameServerIdInt!yesSelected game server
requestIdID!yesCalculation UUIDv7
offerIdID!yesGuest CHARACTER_ITEM offer
quantityInt!yesPackage count from 1 to 1,000,000
characterNameString!yesRecipient character
payerEmailString!yesPayer email

PrepareGuestGameCurrencyCheckoutInput​

FieldTypeRequiredDescription
gameServerIdInt!yesCalculation game server
orderRequestIdID!yesOrder UUIDv7
paymentRequestIdID!yesPayment-preparation UUIDv7
quoteIdID!yesPurchase calculation
characterNameString!yesThe same character
payerEmailString!yesThe same email
payerCountryStringnoTwo-letter country code

ExecuteGuestGameCurrencyCheckoutInput​

FieldTypeRequiredDescription
gameServerIdInt!yesOrder game server
requestIdID!yesStart or retry UUIDv7
orderIdID!yesPrepared order
quoteIdID!yesPurchase calculation
characterNameString!yesVerified character
payerEmailString!yesPayer email
methodProfileIdID!yesSelected method
paymentQuoteIdID!yesActive method calculation