LootLocker Unreal SDK 10.4.0
Game backend SDK for Unreal Engine
Loading...
Searching...
No Matches
Purchasing

Detailed Description

Initiate and validate purchases — both real-money (IAP) and virtual-currency.

Real-money purchases integrate with first-party payment systems (Apple App Store, Google Play, Steam) to process and server-side validate IAP receipts. Virtual purchases debit a player's Wallet and grant the catalog item. Both flows produce an entitlement inspectable via Entitlements.

See the LootLocker documentation — Real-Money Purchases and Virtual Purchases.

Typedef Documentation

◆ FActivateRentalAssetResponseDelegate

typedef void(* FActivateRentalAssetResponseDelegate) (FLootLockerActivateRentalAssetResponse)

C++ response callback delegate; receives an FLootLockerActivateRentalAssetResponse result.

◆ FLootLockerAsyncPurchaseInitiatedDelegate

typedef void(* FLootLockerAsyncPurchaseInitiatedDelegate) (FLootLockerAsyncPurchaseInitiatedResponse)

C++ response callback delegate; receives an FLootLockerAsyncPurchaseInitiatedResponse result.

◆ FLootLockerAsyncPurchaseStatusDelegate

typedef void(* FLootLockerAsyncPurchaseStatusDelegate) (FLootLockerAsyncPurchaseStatusResponse)

C++ response callback delegate; receives an FLootLockerAsyncPurchaseStatusResponse result.

◆ FLootLockerBeginSteamPurchaseRedemptionDelegate

typedef void(* FLootLockerBeginSteamPurchaseRedemptionDelegate) (FLootLockerBeginSteamPurchaseRedemptionResponse)

C++ response callback delegate; receives an FLootLockerBeginSteamPurchaseRedemptionResponse result.

◆ FLootLockerCreateStripeCheckoutSessionDelegate

typedef void(* FLootLockerCreateStripeCheckoutSessionDelegate) (FLootLockerCreateStripeCheckoutSessionResponse)

C++ response callback delegate; receives an FLootLockerCreateStripeCheckoutSessionResponse result.

◆ FLootLockerQuerySteamPurchaseRedemptionStatusDelegate

typedef void(* FLootLockerQuerySteamPurchaseRedemptionStatusDelegate) (FLootLockerQuerySteamPurchaseRedemptionStatusResponse)

C++ response callback delegate; receives an FLootLockerQuerySteamPurchaseRedemptionStatusResponse result.

◆ FLootLockerRefundByEntitlementIdsDelegate

typedef void(* FLootLockerRefundByEntitlementIdsDelegate) (FLootLockerRefundByEntitlementIdsResponse)

C++ response callback delegate; receives an FLootLockerRefundByEntitlementIdsResponse result.

Enumeration Type Documentation

◆ ELootLockerAsyncPurchaseStatus

enum class ELootLockerAsyncPurchaseStatus : uint8
strong

Possible statuses for an async purchase.

Enumerator
Pending 
Active 
Failed 
TimedOut 
Cancelled 

◆ ELootLockerRefundInventoryEventAction

enum class ELootLockerRefundInventoryEventAction : uint8
strong

Possible actions for a player inventory event during a refund.

Enumerator
removed 
skipped 

◆ ELootLockerRefundNonReversibleRewardKind

enum class ELootLockerRefundNonReversibleRewardKind : uint8
strong

Possible kinds of non-reversible rewards in a refund warning.

Enumerator
progression_points 
progression_reset 

◆ ELootLockerRefundWarningDetailType

enum class ELootLockerRefundWarningDetailType : uint8
strong

Possible warning types in a refund response.

Enumerator
non_reversible_rewards 
insufficient_funds 
already_refunded 
refund_failed 

◆ ELootLockerSteamPurchaseRedemptionStatus

enum class ELootLockerSteamPurchaseRedemptionStatus : uint8
strong

Possible statuses a Steam Purchase can have.

Enumerator
Init 
Approved 
Succeeded 
Failed 
Refunded 
PartialRefund 
ChargedBack 
RefundedSuspectedFraud 
RefundedFriendlyFraud 

Function Documentation

◆ ActivateRentalAsset()

static FString ULootLockerSDKManager::ActivateRentalAsset ( int  AssetInstanceId,
const FActivateRentalAssetResponseDelegate OnCompletedRequest,
const FString &  ForPlayerWithUlid = "" 
)
static

Activate a purchased rental asset so it becomes available to the player.

Parameters
AssetInstanceIdAsset instance id
OnCompletedRequestDelegate for handling the server response
ForPlayerWithUlidOptional: Execute for the specified player ULID (default player if empty)
Returns
A unique id for this request, use this to match callbacks to requests when you have multiple simultaneous requests outbound

◆ BeginSteamPurchaseRedemption()

static FString ULootLockerSDKManager::BeginSteamPurchaseRedemption ( const FString &  SteamId,
const FString &  Currency,
const FString &  Language,
const FString &  CatalogItemId,
const FLootLockerBeginSteamPurchaseRedemptionDelegate OnCompletedRequest,
const FString &  ForPlayerWithUlid = "" 
)
static

Begin a Steam purchase (player) that can later be finalized and redeemed.

Use QuerySteamPurchaseRedemptionStatus for status; finalize with FinalizeSteamPurchaseRedemption when Approved.

Parameters
SteamIdSteam user id
CurrencyCurrency code
LanguageLanguage code
CatalogItemIdCatalog item id
OnCompletedRequestDelegate for handling the server response
ForPlayerWithUlidOptional: Execute for the specified player ULID (default player if empty)
Returns
A unique id for this request, use this to match callbacks to requests when you have multiple simultaneous requests outbound

◆ BeginSteamPurchaseRedemptionForClass()

static FString ULootLockerSDKManager::BeginSteamPurchaseRedemptionForClass ( const int  ClassId,
const FString &  SteamId,
const FString &  Currency,
const FString &  Language,
const FString &  CatalogItemId,
const FLootLockerBeginSteamPurchaseRedemptionDelegate OnCompletedRequest,
const FString &  ForPlayerWithUlid = "" 
)
static

Begin a Steam purchase (class) to later finalize and redeem to that class.

Use QuerySteamPurchaseRedemptionStatus for status; finalize with FinalizeSteamPurchaseRedemption when Approved.

Parameters
ClassIdClass id
SteamIdSteam user id
CurrencyCurrency code
LanguageLanguage code
CatalogItemIdCatalog item id
OnCompletedRequestDelegate for handling the server response
ForPlayerWithUlidOptional: Execute for the specified player ULID (default player if empty)
Returns
A unique id for this request, use this to match callbacks to requests when you have multiple simultaneous requests outbound

◆ CancelAsyncPurchasePolling()

static void ULootLockerSDKManager::CancelAsyncPurchasePolling ( const FString &  ProcessID)
static

Cancel an ongoing async purchase polling process.

Parameters
ProcessIDThe process id returned by StartAsyncPurchasePolling

◆ CreateStripeCheckoutSession()

static FString ULootLockerSDKManager::CreateStripeCheckoutSession ( const FString &  CatalogItemId,
const FLootLockerCreateStripeCheckoutSessionDelegate OnCompletedRequest,
const FString &  ForPlayerWithUlid = "" 
)
static

Create a Stripe Checkout session for a catalog item.

This initiates a Stripe-hosted checkout flow. The response contains a checkout_link — open it in a browser or webview so the player can complete the payment on Stripe's hosted checkout page. The response also contains an entitlement_id which can be used to track the purchase progress via the entitlements endpoint.

Stripe in-app purchases must be configured in the LootLocker dashboard for this to work.

Parameters
CatalogItemIdThe ULID of the catalog item to purchase
OnCompletedRequestDelegate for handling the server response
ForPlayerWithUlidOptional: Execute for the specified player ULID (default player if empty)
Returns
A unique id for this request, use this to match callbacks to requests when you have multiple simultaneous requests outbound

◆ FinalizeSteamPurchaseRedemption()

static FString ULootLockerSDKManager::FinalizeSteamPurchaseRedemption ( const FString &  EntitlementId,
const FLootLockerDefaultDelegate OnCompletedRequest,
const FString &  ForPlayerWithUlid = "" 
)
static

Finalize an Approved Steam purchase and redeem associated catalog items.

Parameters
EntitlementIdEntitlement id (must be Approved)
OnCompletedRequestDelegate for handling the server response
ForPlayerWithUlidOptional: Execute for the specified player ULID (default player if empty)
Returns
A unique id for this request, use this to match callbacks to requests when you have multiple simultaneous requests outbound

◆ GetAsyncPurchaseStatus()

static FString ULootLockerSDKManager::GetAsyncPurchaseStatus ( const FString &  EntitlementId,
const FLootLockerAsyncPurchaseStatusDelegate OnCompletedRequest,
const FString &  ForPlayerWithUlid = "" 
)
static

Get the current status of an async purchase.

Parameters
EntitlementIdThe entitlement id returned when initiating the async purchase
OnCompletedRequestDelegate for handling the server response
ForPlayerWithUlidOptional: Execute for the specified player ULID (default player if empty)
Returns
A unique id for this request, use this to match callbacks to requests when you have multiple simultaneous requests outbound

◆ InitiateAsyncPurchaseCatalogItems()

static FString ULootLockerSDKManager::InitiateAsyncPurchaseCatalogItems ( const FString &  WalletId,
const TArray< FLootLockerCatalogItemAndQuantityPair > &  Items,
const FLootLockerAsyncPurchaseInitiatedDelegate OnCompletedRequest,
const FString &  ForPlayerWithUlid = "" 
)
static

Initiate an async purchase of one or more catalog items using a specified wallet.

Parameters
WalletIdThe id of the wallet to use for the purchase
ItemsThe catalog items with quantities to purchase
OnCompletedRequestDelegate for handling the server response
ForPlayerWithUlidOptional: Execute for the specified player ULID (default player if empty)
Returns
A unique id for this request, use this to match callbacks to requests when you have multiple simultaneous requests outbound

◆ LootLockerPurchaseCatalogItems()

static FString ULootLockerSDKManager::LootLockerPurchaseCatalogItems ( const FString &  WalletId,
const TArray< FLootLockerCatalogItemAndQuantityPair ItemsToPurchase,
const FLootLockerDefaultDelegate OnCompletedRequest,
const FString &  ForPlayerWithUlid = "" 
)
static

Purchase multiple catalog items (with quantities) using a wallet.

Parameters
WalletIdWallet id to debit
ItemsToPurchaseItems and quantities to purchase
OnCompletedRequestDelegate for handling the server response
ForPlayerWithUlidOptional: Execute for the specified player ULID (default player if empty)
Returns
A unique id for this request, use this to match callbacks to requests when you have multiple simultaneous requests outbound

◆ LootLockerPurchaseSingleCatalogItem()

static FString ULootLockerSDKManager::LootLockerPurchaseSingleCatalogItem ( const FString &  WalletId,
const FString &  CatalogItemListingId,
const FLootLockerDefaultDelegate OnCompletedRequest,
const FString &  ForPlayerWithUlid = "" 
)
static

Purchase a single catalog item using a wallet.

Parameters
WalletIdWallet id to debit
CatalogItemListingIdCatalog item listing id to purchase
OnCompletedRequestDelegate for handling the server response
ForPlayerWithUlidOptional: Execute for the specified player ULID (default player if empty)
Returns
A unique id for this request, use this to match callbacks to requests when you have multiple simultaneous requests outbound

◆ QuerySteamPurchaseRedemptionStatus()

static FString ULootLockerSDKManager::QuerySteamPurchaseRedemptionStatus ( const FString &  EntitlementId,
const FLootLockerQuerySteamPurchaseRedemptionStatusDelegate OnCompletedRequest,
const FString &  ForPlayerWithUlid = "" 
)
static

Query Steam purchase status for an entitlement (poll until Approved before finalizing).

Parameters
EntitlementIdEntitlement id
OnCompletedRequestDelegate for handling the server response
ForPlayerWithUlidOptional: Execute for the specified player ULID (default player if empty)
Returns
A unique id for this request, use this to match callbacks to requests when you have multiple simultaneous requests outbound

◆ RedeemAppleAppStorePurchaseForClass()

static FString ULootLockerSDKManager::RedeemAppleAppStorePurchaseForClass ( const int  ClassId,
const FString &  TransactionId,
const FLootLockerDefaultDelegate OnCompletedRequest,
bool  Sandboxed = false,
const FString &  ForPlayerWithUlid = "" 
)
static

Redeem an Apple App Store transaction for a class.

Parameters
ClassIdClass id to receive items
TransactionIdApple transaction id
SandboxedOptional: Redeem against sandbox store (default false)
OnCompletedRequestDelegate for handling the server response
ForPlayerWithUlidOptional: Execute for the specified player ULID (default player if empty)
Returns
A unique id for this request, use this to match callbacks to requests when you have multiple simultaneous requests outbound

◆ RedeemAppleAppStorePurchaseForPlayer()

static FString ULootLockerSDKManager::RedeemAppleAppStorePurchaseForPlayer ( const FString &  TransactionId,
const FLootLockerDefaultDelegate OnCompletedRequest,
bool  Sandboxed = false,
const FString &  ForPlayerWithUlid = "" 
)
static

Redeem an Apple App Store transaction for the player.

Parameters
TransactionIdApple transaction id
SandboxedOptional: Redeem against sandbox store (default false)
OnCompletedRequestDelegate for handling the server response
ForPlayerWithUlidOptional: Execute for the specified player ULID (default player if empty)
Returns
A unique id for this request, use this to match callbacks to requests when you have multiple simultaneous requests outbound

◆ RedeemEpicStorePurchase()

static FString ULootLockerSDKManager::RedeemEpicStorePurchase ( const FString &  AccountId,
const FString &  BearerToken,
const TArray< FString > &  EntitlementIds,
const FString &  SandboxId,
const FLootLockerDefaultDelegate OnCompletedRequest,
const FString &  ForPlayerWithUlid = "" 
)
static

Redeem Epic Games Store entitlements for the player.

Parameters
AccountIdEpic account id
BearerTokenEpic bearer/auth token (server auth ticket)
EntitlementIdsEntitlement ids to redeem
SandboxIdEpic sandbox id
OnCompletedRequestDelegate for handling the server response
ForPlayerWithUlidOptional: Execute for the specified player ULID (default player if empty)
Returns
A unique id for this request, use this to match callbacks to requests when you have multiple simultaneous requests outbound

◆ RedeemEpicStorePurchaseForCharacter()

static FString ULootLockerSDKManager::RedeemEpicStorePurchaseForCharacter ( const FString &  CharacterId,
const FString &  AccountId,
const FString &  BearerToken,
const TArray< FString > &  EntitlementIds,
const FString &  SandboxId,
const FLootLockerDefaultDelegate OnCompletedRequest,
const FString &  ForPlayerWithUlid = "" 
)
static

Redeem Epic Games Store entitlements for a character.

Parameters
CharacterIdCharacter ULID
AccountIdEpic account id
BearerTokenEpic bearer/auth token
EntitlementIdsEntitlement ids to redeem
SandboxIdEpic sandbox id (use for sandbox purchases)
OnCompletedRequestDelegate for handling the server response
ForPlayerWithUlidOptional: Execute for the specified player ULID (default player if empty)
Returns
A unique id for this request, use this to match callbacks to requests when you have multiple simultaneous requests outbound

◆ RedeemGooglePlayStorePurchaseForClass()

static FString ULootLockerSDKManager::RedeemGooglePlayStorePurchaseForClass ( const int  ClassId,
const FString &  ProductId,
const FString &  PurchaseToken,
const FLootLockerDefaultDelegate OnCompletedRequest,
const FString &  ForPlayerWithUlid = "" 
)
static

Redeem a Google Play Store purchase for a class.

Parameters
ClassIdClass id
ProductIdProduct id
PurchaseTokenGoogle Play purchase token
OnCompletedRequestDelegate for handling the server response
ForPlayerWithUlidOptional: Execute for the specified player ULID (default player if empty)
Returns
A unique id for this request, use this to match callbacks to requests when you have multiple simultaneous requests outbound

◆ RedeemGooglePlayStorePurchaseForPlayer()

static FString ULootLockerSDKManager::RedeemGooglePlayStorePurchaseForPlayer ( const FString &  ProductId,
const FString &  PurchaseToken,
const FLootLockerDefaultDelegate OnCompletedRequest,
const FString &  ForPlayerWithUlid = "" 
)
static

Redeem a Google Play Store purchase for the player.

Parameters
ProductIdProduct id
PurchaseTokenGoogle Play purchase token
OnCompletedRequestDelegate for handling the server response
ForPlayerWithUlidOptional: Execute for the specified player ULID (default player if empty)
Returns
A unique id for this request, use this to match callbacks to requests when you have multiple simultaneous requests outbound

◆ RefundByEntitlementIds()

static FString ULootLockerSDKManager::RefundByEntitlementIds ( const TArray< FString > &  EntitlementIds,
const FLootLockerRefundByEntitlementIdsDelegate OnCompletedRequest,
const FString &  ForPlayerWithUlid = "" 
)
static

Refund one or more entitlements by their IDs.

Submits a refund request for the specified entitlement IDs. Assets associated with the entitlements will be removed from the player's inventory where possible, the original purchase currency will be credited back, and any currency rewards tied to the entitlement will be clawed back. The response includes details on what was reversed and any warnings for items that could not be fully reversed.

Parameters
EntitlementIdsThe IDs of the entitlements to refund
OnCompletedRequestDelegate for handling the server response
ForPlayerWithUlidOptional: Execute for the specified player ULID (default player if empty)
Returns
A unique id for this request, use this to match callbacks to requests when you have multiple simultaneous requests outbound

◆ RetryAsyncPurchase()

static FString ULootLockerSDKManager::RetryAsyncPurchase ( const FString &  EntitlementId,
const FString &  WalletId,
const TArray< FLootLockerCatalogItemAndQuantityPair > &  Items,
const FLootLockerAsyncPurchaseInitiatedDelegate OnCompletedRequest,
const FString &  ForPlayerWithUlid = "" 
)
static

Retry a failed async purchase.

Parameters
EntitlementIdThe entitlement id of the failed purchase
WalletIdThe id of the wallet to use for the retry
ItemsThe catalog items with quantities from the original purchase
OnCompletedRequestDelegate for handling the server response
ForPlayerWithUlidOptional: Execute for the specified player ULID (default player if empty)
Returns
A unique id for this request, use this to match callbacks to requests when you have multiple simultaneous requests outbound

◆ StartAsyncPurchasePolling()

static FString ULootLockerSDKManager::StartAsyncPurchasePolling ( const FString &  WalletId,
const TArray< FLootLockerCatalogItemAndQuantityPair > &  Items,
const FLootLockerAsyncPurchaseStatusDelegate OnStatusUpdate,
const FLootLockerAsyncPurchaseStatusDelegate OnComplete,
float  PollingIntervalSeconds = 1.0f,
float  TimeoutAfterMinutes = 5.0f,
const FString &  ForPlayerWithUlid = "" 
)
static

Initiate an async purchase and automatically poll for its result.

While pending, OnStatusUpdate is called on each poll. When the purchase reaches a terminal state (active or failed, or timeout), OnComplete is called.

Parameters
WalletIdThe id of the wallet to use for the purchase
ItemsThe catalog items with quantities to purchase
OnStatusUpdateDelegate called on each poll while the purchase is pending
OnCompleteDelegate called when the purchase reaches a terminal state
PollingIntervalSecondsHow often to poll in seconds (minimum 1)
TimeoutAfterMinutesHow many minutes before the process times out
ForPlayerWithUlidOptional: Execute for the specified player ULID (default player if empty)
Returns
A process id string that can be passed to CancelAsyncPurchasePolling

Data Structures

struct  FLootLockerAsyncPurchaseProcess
 
struct  FLootLockerCreateStripeCheckoutSessionRequest
 Request to create a Stripe Checkout session for a catalog item. More...
 
struct  FLootLockerCreateStripeCheckoutSessionResponse
 Response from creating a Stripe Checkout session. More...
 

Typedefs

typedef void(* FLootLockerAsyncPurchaseInitiatedDelegate) (FLootLockerAsyncPurchaseInitiatedResponse)
 C++ response callback delegate; receives an FLootLockerAsyncPurchaseInitiatedResponse result.
 
typedef void(* FLootLockerAsyncPurchaseStatusDelegate) (FLootLockerAsyncPurchaseStatusResponse)
 C++ response callback delegate; receives an FLootLockerAsyncPurchaseStatusResponse result.
 
typedef void(* FActivateRentalAssetResponseDelegate) (FLootLockerActivateRentalAssetResponse)
 C++ response callback delegate; receives an FLootLockerActivateRentalAssetResponse result.
 
typedef void(* FLootLockerBeginSteamPurchaseRedemptionDelegate) (FLootLockerBeginSteamPurchaseRedemptionResponse)
 C++ response callback delegate; receives an FLootLockerBeginSteamPurchaseRedemptionResponse result.
 
typedef void(* FLootLockerQuerySteamPurchaseRedemptionStatusDelegate) (FLootLockerQuerySteamPurchaseRedemptionStatusResponse)
 C++ response callback delegate; receives an FLootLockerQuerySteamPurchaseRedemptionStatusResponse result.
 
typedef void(* FLootLockerRefundByEntitlementIdsDelegate) (FLootLockerRefundByEntitlementIdsResponse)
 C++ response callback delegate; receives an FLootLockerRefundByEntitlementIdsResponse result.
 
typedef void(* FLootLockerCreateStripeCheckoutSessionDelegate) (FLootLockerCreateStripeCheckoutSessionResponse)
 C++ response callback delegate; receives an FLootLockerCreateStripeCheckoutSessionResponse result.
 

Enumerations

enum class  ELootLockerSteamPurchaseRedemptionStatus : uint8 {
  ELootLockerSteamPurchaseRedemptionStatus::Init = 0 , ELootLockerSteamPurchaseRedemptionStatus::Approved = 1 , ELootLockerSteamPurchaseRedemptionStatus::Succeeded = 2 , ELootLockerSteamPurchaseRedemptionStatus::Failed = 3 ,
  ELootLockerSteamPurchaseRedemptionStatus::Refunded = 4 , ELootLockerSteamPurchaseRedemptionStatus::PartialRefund = 5 , ELootLockerSteamPurchaseRedemptionStatus::ChargedBack = 6 , ELootLockerSteamPurchaseRedemptionStatus::RefundedSuspectedFraud = 7 ,
  ELootLockerSteamPurchaseRedemptionStatus::RefundedFriendlyFraud = 8
}
 Possible statuses a Steam Purchase can have. More...
 
enum class  ELootLockerRefundInventoryEventAction : uint8 { ELootLockerRefundInventoryEventAction::removed = 0 , ELootLockerRefundInventoryEventAction::skipped = 1 }
 Possible actions for a player inventory event during a refund. More...
 
enum class  ELootLockerRefundNonReversibleRewardKind : uint8 { ELootLockerRefundNonReversibleRewardKind::progression_points = 0 , ELootLockerRefundNonReversibleRewardKind::progression_reset = 1 }
 Possible kinds of non-reversible rewards in a refund warning. More...
 
enum class  ELootLockerRefundWarningDetailType : uint8 { ELootLockerRefundWarningDetailType::non_reversible_rewards = 0 , ELootLockerRefundWarningDetailType::insufficient_funds = 1 , ELootLockerRefundWarningDetailType::already_refunded = 2 , ELootLockerRefundWarningDetailType::refund_failed = 3 }
 Possible warning types in a refund response. More...
 
enum class  ELootLockerAsyncPurchaseStatus : uint8 {
  ELootLockerAsyncPurchaseStatus::Pending = 0 , ELootLockerAsyncPurchaseStatus::Active = 1 , ELootLockerAsyncPurchaseStatus::Failed = 2 , ELootLockerAsyncPurchaseStatus::TimedOut = 3 ,
  ELootLockerAsyncPurchaseStatus::Cancelled = 4
}
 Possible statuses for an async purchase. More...
 

Functions

static FString ULootLockerSDKManager::ActivateRentalAsset (int AssetInstanceId, const FActivateRentalAssetResponseDelegate &OnCompletedRequest, const FString &ForPlayerWithUlid="")
 Activate a purchased rental asset so it becomes available to the player.
 
static FString ULootLockerSDKManager::LootLockerPurchaseSingleCatalogItem (const FString &WalletId, const FString &CatalogItemListingId, const FLootLockerDefaultDelegate &OnCompletedRequest, const FString &ForPlayerWithUlid="")
 Purchase a single catalog item using a wallet.
 
static FString ULootLockerSDKManager::LootLockerPurchaseCatalogItems (const FString &WalletId, const TArray< FLootLockerCatalogItemAndQuantityPair > ItemsToPurchase, const FLootLockerDefaultDelegate &OnCompletedRequest, const FString &ForPlayerWithUlid="")
 Purchase multiple catalog items (with quantities) using a wallet.
 
static FString ULootLockerSDKManager::RedeemAppleAppStorePurchaseForPlayer (const FString &TransactionId, const FLootLockerDefaultDelegate &OnCompletedRequest, bool Sandboxed=false, const FString &ForPlayerWithUlid="")
 Redeem an Apple App Store transaction for the player.
 
static FString ULootLockerSDKManager::RedeemAppleAppStorePurchaseForClass (const int ClassId, const FString &TransactionId, const FLootLockerDefaultDelegate &OnCompletedRequest, bool Sandboxed=false, const FString &ForPlayerWithUlid="")
 Redeem an Apple App Store transaction for a class.
 
static FString ULootLockerSDKManager::RedeemGooglePlayStorePurchaseForPlayer (const FString &ProductId, const FString &PurchaseToken, const FLootLockerDefaultDelegate &OnCompletedRequest, const FString &ForPlayerWithUlid="")
 Redeem a Google Play Store purchase for the player.
 
static FString ULootLockerSDKManager::RedeemGooglePlayStorePurchaseForClass (const int ClassId, const FString &ProductId, const FString &PurchaseToken, const FLootLockerDefaultDelegate &OnCompletedRequest, const FString &ForPlayerWithUlid="")
 Redeem a Google Play Store purchase for a class.
 
static FString ULootLockerSDKManager::RedeemEpicStorePurchase (const FString &AccountId, const FString &BearerToken, const TArray< FString > &EntitlementIds, const FString &SandboxId, const FLootLockerDefaultDelegate &OnCompletedRequest, const FString &ForPlayerWithUlid="")
 Redeem Epic Games Store entitlements for the player.
 
static FString ULootLockerSDKManager::RedeemEpicStorePurchaseForCharacter (const FString &CharacterId, const FString &AccountId, const FString &BearerToken, const TArray< FString > &EntitlementIds, const FString &SandboxId, const FLootLockerDefaultDelegate &OnCompletedRequest, const FString &ForPlayerWithUlid="")
 Redeem Epic Games Store entitlements for a character.
 
static FString ULootLockerSDKManager::BeginSteamPurchaseRedemption (const FString &SteamId, const FString &Currency, const FString &Language, const FString &CatalogItemId, const FLootLockerBeginSteamPurchaseRedemptionDelegate &OnCompletedRequest, const FString &ForPlayerWithUlid="")
 Begin a Steam purchase (player) that can later be finalized and redeemed.
 
static FString ULootLockerSDKManager::BeginSteamPurchaseRedemptionForClass (const int ClassId, const FString &SteamId, const FString &Currency, const FString &Language, const FString &CatalogItemId, const FLootLockerBeginSteamPurchaseRedemptionDelegate &OnCompletedRequest, const FString &ForPlayerWithUlid="")
 Begin a Steam purchase (class) to later finalize and redeem to that class.
 
static FString ULootLockerSDKManager::QuerySteamPurchaseRedemptionStatus (const FString &EntitlementId, const FLootLockerQuerySteamPurchaseRedemptionStatusDelegate &OnCompletedRequest, const FString &ForPlayerWithUlid="")
 Query Steam purchase status for an entitlement (poll until Approved before finalizing).
 
static FString ULootLockerSDKManager::FinalizeSteamPurchaseRedemption (const FString &EntitlementId, const FLootLockerDefaultDelegate &OnCompletedRequest, const FString &ForPlayerWithUlid="")
 Finalize an Approved Steam purchase and redeem associated catalog items.
 
static FString ULootLockerSDKManager::InitiateAsyncPurchaseCatalogItems (const FString &WalletId, const TArray< FLootLockerCatalogItemAndQuantityPair > &Items, const FLootLockerAsyncPurchaseInitiatedDelegate &OnCompletedRequest, const FString &ForPlayerWithUlid="")
 Initiate an async purchase of one or more catalog items using a specified wallet.
 
static FString ULootLockerSDKManager::GetAsyncPurchaseStatus (const FString &EntitlementId, const FLootLockerAsyncPurchaseStatusDelegate &OnCompletedRequest, const FString &ForPlayerWithUlid="")
 Get the current status of an async purchase.
 
static FString ULootLockerSDKManager::RetryAsyncPurchase (const FString &EntitlementId, const FString &WalletId, const TArray< FLootLockerCatalogItemAndQuantityPair > &Items, const FLootLockerAsyncPurchaseInitiatedDelegate &OnCompletedRequest, const FString &ForPlayerWithUlid="")
 Retry a failed async purchase.
 
static FString ULootLockerSDKManager::StartAsyncPurchasePolling (const FString &WalletId, const TArray< FLootLockerCatalogItemAndQuantityPair > &Items, const FLootLockerAsyncPurchaseStatusDelegate &OnStatusUpdate, const FLootLockerAsyncPurchaseStatusDelegate &OnComplete, float PollingIntervalSeconds=1.0f, float TimeoutAfterMinutes=5.0f, const FString &ForPlayerWithUlid="")
 Initiate an async purchase and automatically poll for its result.
 
static void ULootLockerSDKManager::CancelAsyncPurchasePolling (const FString &ProcessID)
 Cancel an ongoing async purchase polling process.
 
static FString ULootLockerSDKManager::RefundByEntitlementIds (const TArray< FString > &EntitlementIds, const FLootLockerRefundByEntitlementIdsDelegate &OnCompletedRequest, const FString &ForPlayerWithUlid="")
 Refund one or more entitlements by their IDs.
 
static FString ULootLockerSDKManager::CreateStripeCheckoutSession (const FString &CatalogItemId, const FLootLockerCreateStripeCheckoutSessionDelegate &OnCompletedRequest, const FString &ForPlayerWithUlid="")
 Create a Stripe Checkout session for a catalog item.