Skip to content

Evolution of Game Ownership: BOPA (Buy Once Play Anywhere)

This past Tuesday on 10/29, EA and Valve announced a partnership to distribute EA games on Steam in addition to EA's own distribution store: Origin.

Ubisoft has also been doing this - distributing their PC games not only on Ubisoft's own Uplay store, but also on Steam and Epic Games stores.

Does this mean that EA is moving away from distributing their PC games through Origin? I have no idea - but I think it's highly unlikely. I think this is a smart move to maximize reach and unify their player base, making their games available to as many players as possible.

EA and Ubisoft are hardly the only publishers that are diversifying their distribution strategy - Bethesda, Paradox, and a growing number of publishers are doing this as well.

If you are curious about why publishers are doing this, and why now - check out the article that my colleague Kevin Robertson wrote, regarding the inevitability of the diversification of launchers and storefront.

As Tim Sweeney tweeted, the multi-store future is here now.

Another fascinating point from the EA-Valve partnership is the announcement of Cross-Platform Play between Steam and Origin players:

Multiplayer games - like Apex Legends™, FIFA 20, and Battlefield™ V - will become available next year, and players on both Origin™ and Steam will have the ability to play together.

The message is clear:

The Platform you use to purchase or play the game becomes less relevant, it's the Player Experience that takes center stage now.

So where do we go from here? I believe it's the beginning of the end for Platform Exclusivity, and a shift to Cross-Platform Player-Centric Content Ownership.

Simply put, in a Player-Centric world, it should not matter which platform they purchase a piece of content from, or where they run the game from. Players should have the freedom and power to choose how and where they play their games, enjoying a consistent Player Experience that you, as game developers and publishers, craft for them.

Enter BOPA (Buy Once Play Anywhere).

To enable BOPA for your players, you need these 3 elements:

  1. Ability to identify your players via Unified identity
  2. Unified Entitlement system
  3. Cross store keyless entitlement granting

Identify your Players via Unified Identity across all Platforms

The first crucial piece for any Cross-Platform capabilities is to identify your players. Simply put, your game needs to know that whenever I log in with my Xbox account (Gamertag “Chuck Norris”) or from my PSN account (Gamertag “Raygolas”), they both map to the same user in your game platform.

For that, you need a unifying Identity and Account Management (IAM) system that can store account linking information to various Gaming Platforms, such as Xbox Live, PSN, Steam, Epic Game Store to name a few…

When a player logs into your game, it will initiate account linking to establish a connection between your IAM and the platform where your game is via a Service-to-Service API call. Each store-platform generally provides a set of backend APIs you can use, from authenticating users to performing various functions on behalf of the player.

After you authenticate with the platform where your player originated, you can now identify the player with your own unique ID.

How to Make Cross-Platform Game - Buy Once Play Anywhere

Big publishers like Ubisoft have been doing this with all their games that get distributed in multiple stores.

How to Make Cross-Platform Game - Buy Once Play Anywhere
Image Credit: Ubisoft
Image Credit: Ubisoft account linking in Steam and Epic Store

Unified Entitlement System

Every store-platform has an entitlement system - a way to track who owns what in their ecosystem. When you purchase content in Steam, or Epic, or Xbox, it will mark that you own that piece of content - be it a Game, or DLC, or Free Demo, or anything at all.

Universal Identity and Universal Entitlement systems aren't available yet. That leads to situations where purchasing a piece of DLC in one store does not automatically carry over entitlement in a different store-platform.

If you have your own store, you will need your own Entitlement system to track of all the content that a player owns. By having a central entitlement service you can synchronize your players' game ownership to other stores too, policy permitting.

Cross Store Keyless Entitlement Granting to enable BOPA

Having the power of Unified Identity (knowing your players and which platforms they came from), as well as a tracking mechanism for Entitlements, you gain the superpower of BOPA.

Most platforms provide Server-to-Server API to let trusted Publishers call to interact with their Entitlement System. Unfortunately, not everyone can call the entitlement APIs to avoid abuse, so the first thing you need to do is discuss this with your Developer Account Manager of the store you are publishing to.

We will focus on Steam for this article since they made the documentation available publicly. However, Epic store also supports this functionality - as Tim pointed out in his tweet regarding keyless integration with Humble Bundle.

In Steam, ISteamUser::GrantPackage is the API that allows you, as publisher, to call Steam and say “please trust me (here's my publisher key), and grant this Steam user entitlement to this package”

This mechanism is also called Keyless Entitlement, since it does not involve minting a Steam Key for user to redeem manually.

But there are stores out there that let you purchase Steam Key, and send you the key on email. What's wrong with that?

  1. For users: it's a few extra steps that you are asking your players to do. Get email, copy the key, log in to Steam, do 2FA, paste the key in.
  2. For publishers: you still need to build systems to send emails of the key and enable your support teams to troubleshoot players' issues. Fraud is also possible; some people might turn around and resell the key in different markets that sell your game at a higher price point.

Let's go over 2 scenarios of BOPA

Scenario 1: Buy in your Store, have it automatically show up in Player's Steam Library

In this scenario, your players will browse and purchase your game from your Store. Upon purchase completion, have your Unified Entitlement System grant the Entitlement for the user's Linked Steam account.

This gives players complete freedom to play your game from your own Launcher, or from Steam. Regardless of where they play it from, you can provide seamless experience in your Game via Cross-Platform progression (continue where they left off in the game) or even Cross-Platform play (play with all their friends, regardless of which platforms they are in).

How to Make Cross-Platform Game - Buy Once Play Anywhere
Sample swimlanes between services interactions to enable BOPA to Steam from your Platform

Scenario 2: Buy in your Steam, have it automatically show up in Player's Game Library in your Platform

This is the more straightforward path, as all your games will be hitting your Online System via a Steam authentication code. Once you've authenticated your player, you can check your Entitlement system to see if the player owns this Game. If not, you can choose to grant her the entitlement in your system, allowing her to play your game through your Launcher.

How to Make Cross-Platform Game - Buy Once Play Anywhere
Sample swimlanes between services interactions to enable BOPA from Steam to your Platform


As Platforms begin to fade to the background, and Player-centric experiences take center stage, the player gets the freedom to choose how and where they want to play their games.

As game creators, you'd want your game to reach as many players as possible, and that means releasing your game through many distribution channels, including your own.

You also want to hide all the complexities and discrepancies of different platform offerings by controlling the Player Experience via your own Online Systems.

Investing in building systems to allow BOPA will provide freedom to your players to experience your game, regardless of which platform they come from.

If you'd like to see more insights into building a Unified Identity or Entitlement System, let us know at and we'll make sure to write more articles about those in the future.

How can we help?

We can help you own your own Cross-Platform Gaming Backend, powered by our white-labeled Online Platform. Learn more by visiting our product page.

Find a Backend Solution for Your Game!

Reach out to the AccelByte team to learn more.