Quickstart Guide: Integrating the PlayFab Online Subsystem with the PlayFab Unreal Engine Marketplace Plugin
This quickstart guide helps you integrate the PlayFab SDK Unreal Engine (UE) Marketplace Plugin into your existing PlayFab Online Subsystem (OSS) integrated project.
The PlayFab SDK Plugin is used to perform PlayFab admin, client, and server operations such as player authentication, virtual item and currency management, and social feature creation. Used in conjunction with the PlayFab Online Subsystem, your project can access the full suite of PlayFab features for Unreal Engine projects.
When using either the PlayFab OSS or PlayFab SDK Plugin independently of each other, the first step is authenticating a user. Using both in the same project without the appropriate setup means that the PlayFab OSS and PlayFab SDK Plugin will both make a separate authentication call for the same user.
This quickstart guide helps you authenticate via the PlayFab OSS and reuse that authentication with the PlayFab SDK Plugin, for a seamless user auth experience.
Prerequisites
-
Ensure that you integrate the PlayFab OSS as a plugin in your
<game>.build.cs file. In the below example, we create a toggle option to allow integration, and set a definition to allow for #ifdef guarding.
-
Ensure that you integrate the PlayFab SDK Plugin in your
<game>.build.cs file. In the below example, we create a toggle option to allow integration, and set a definition to allow for #ifdef guarding.
-
After you update your
<game.build.cs> file (and every subsequent time you update it), be sure to regenerate your game’s Visual Studio project files by right-clicking your .uproject file and selecting Generate Visual Studio Project Files.
-
PlayFab OSS now offers a public
AuthenticateUserComplete delegate that triggers on completion of the PlayFab OSS user authentication flow. Bind to this delegate to retrieve the details of your PlayFab OSS authentication.
Steps
You can also jump to the Full Code Example.
-
Include the Correct Headers
-
Retrieve the PlayFab OSS
-
Bind to the
AuthenticateUserComplete delegate
Functions that bind to this delegate must have the same signature as the delegate. For example:
You can also bind a lambda to the delegate. For example:
-
Handle Authentication Result: In the function bound to the delegate, handle the result of the authentication. If the authentication is successful, retrieve the authenticated local user via the
platformUserIdStr from the delegate trigger. Then, construct a PlayFab LoginResult from the PlayFab OSS LocalUser.
-
Use PlayFab SDK Plugin APIs: With
LoginResult populated, you can now use the PlayFab SDk Plugin APIs however you wish. This state is considered “authenticated”.
Full Code Example
Last modified on August 3, 2026