Steamworks onboarding
Connect Steamworks to Coal
Invite Coal, grant access to one game, and connect wishlist reporting. You never need to share your Steam password.
Before you begin
Have these ready
Steamworks administrator access
A Steamworks account that can manage users and groups and personally holds View Marketing Traffic Data and View Financial Info.
Steam mobile app
Signed in as the same administrator you will use in Steamworks.
Three phases
Set up Steamworks
The work is three phases. Steam may pause during the invitation handshake, but you should not repeat or restart it while Coal is accepting.
01 Create scoped game access Phase 1 · About 2 minutes
Create a regular Steamworks group that limits Coal’s user access to one game. The group defines the game scope; you will grant permissions to Coal after Steam approves the invitation.
- Open the Steamworks dashboard ↗ and confirm the correct organization is shown in the top-right corner.
- Open Users & Permissions → Manage Groups.
- In the Create Group panel, click Create New Group. Do not click Create New Financial API Group.
- Name it
Coal — Your Gameand click Create group. - Open the new group and choose Add an application to this group.
- Type the game name or App ID, then click the exact game in Steam’s autocomplete results. The application is not added until you click that result row.
- Confirm that only the game you are connecting appears under Application List.
This regular group contains one application. Steam assigns permissions to each member separately, so the Coal user and its two rights are added in phase 2.
Done when: the new group shows your game under Application List. It is normal for the group to have zero users right now.
From the Steamworks dashboard, open Users & Permissions and choose Manage Groups.
Edited desktop captureCreate a regular Coal group and add the one game you are connecting.
Edited draft · failed attempts removed02 Connect the Coal user Phase 2 · About 4 minutes plus Steam’s wait
Send the partner invitation
Invite Coal without broad partner-wide access.
- Open Users & Permissions → Manage Users and click Invite User.
- Enter Coal as the full name and
mikkelheart@gmail.comin both email fields. - Leave every Partner wide permission and every permission in the Everyone group unchecked.
- Click Invite User.
Steam creates a mobile confirmation for the administrator who submitted the form.
Done when: Steam tells you to finish the invitation in the Steam mobile app.
Open Manage Users, invite mikkelheart@gmail.com, leave all broad permissions unchecked, and submit.
Edited draft · existing members cropped outConfirm the invitation on your phone
Use the same administrator account as the browser.
- Open the Steam mobile app menu and choose Confirmations.
- Open the Partner User Invite labelled Finish Inviting: Coal.
- Check that the email is mikkelheart@gmail.com, then tap OK.
Switch the mobile authenticator to the Steam account that submitted the invite. Steam lets the active profile and authenticator account differ.
Done when: the confirmation disappears and the invitation appears in Steamworks after a refresh.
1. Open Finish Inviting: Coal
2. Check the email and tap OKOpen the pending invite, verify that it is for Coal at mikkelheart@gmail.com, and tap OK.
Steam mobile appWait for Coal, then approve the user
Coal accepts automatically; the Steamworks administrator gives the final approval.
Refresh Manage Users and click Show invites awaiting invitee…. While Coal is accepting, the invitation appears under Invites Awaiting Invitee. Do not send another invitation.
- Refresh until Coal moves to Invites Awaiting Confirmation.
- Open Coal’s pending invitation and approve the verified
mikkelheartSteam identity. - Complete a second mobile confirmation only when Steam presents one.
Done when: Steam displays Invite Approved.
Compare Steam’s Awaiting Invitee and Awaiting Confirmation states without exposing the organization member list.
Edited draft · member list excludedApprove the accepted invitation and confirm Steam’s Invite Approved result.
Edited draft · member list excludedAdd Coal to the group and set its rights
Group membership and permissions are two separate Steamworks actions.
The administrator must personally hold View Marketing Traffic Data and View Financial Info in Everyone before Steam will let that administrator delegate them.
- On the Invite Approved dialog, click Add to Groups and add
mikkelhearttoCoal — Your Game. - If you already closed the dialog, open Manage Groups → Coal — Your Game → Add User and add
mikkelheart. - Open
mikkelheartin that group and choose the action to update group permissions. - Check only View Marketing Traffic Data and View Financial Info, then click Update Rights.
Actual Authority, Manage Users, publisher-wide View Financials, editing or publishing permissions, Steam keys, pricing permissions, Economy, or Microtransactions.
Done when: the group’s Member List shows Coal with exactly those two permissions.
Add Coal to the scoped group first. Then open the member’s group permissions and enable View Marketing Traffic Data and View Financial Info.
Edited draft · successful save captured03 Connect wishlist reporting Phase 3 · About 3 minutes
Create the Financial API key
This key is partner-wide and separate from the scoped game group.
- Open Users & Permissions → Manage Groups and click Create New Financial API Group.
- Name the group
Coal, create it, and click Create WebAPI Key. - Open Manage WebAPI Key. Enable Financial and leave General as Steam configured it.
- Leave Economy and Microtransactions unchecked, save the changes, and securely copy the key.
A Financial API Group contains no users or applications. Use this dedicated Coal key for every game connected from this Steamworks partner and paste it only into Coal.
Done when: Financial is enabled and the key is copied.
Create the Coal Financial API Group, then confirm General and Financial are enabled. The key is covered throughout.
Edited walkthrough · key hiddenSelect the game and verify the key in Coal
Coal detects the games granted to its Steam user.
- Return to the Coal onboarding page and wait for the approved Steamworks connection.
- Select your game from the detected-game dropdown. Do not type a Steam App ID.
- Paste the Financial API key and click Verify & save key.
Your selected game, a verified Financial API key, and the first wishlist import starting automatically.
Steam permission changes can take a short while to propagate. If the game does not appear, wait one minute, refresh Coal, and check once more.
Done when: Coal shows the selected game and a verified Financial API key.
Show the connected Steamworks state, select the detected game, paste a redacted key, verify it, and show imports starting.
Coal video · 30–45 secondsTroubleshooting
If Steam looks stuck
No confirmation appears in the Steam mobile app
Check that the phone is signed in to the same Steam account that submitted the invitation. Refresh Manage Users in the browser. If the invitation does not appear under either invitation heading, reopen the Invite User form and submit it once.
The invitation stays under “Awaiting Invitee”
The invitation was sent, but Coal has not accepted it yet. Leave it in place and refresh after a few minutes. Sending duplicates makes the state harder to diagnose.
The invitation moved to “Awaiting Confirmation”
That is good news: Coal accepted it. A Steamworks administrator on your team now needs to give final approval in Manage Users.
Your game does not appear in Coal
Confirm that Coal is in the scoped group, that the group contains the right game, and that both View Marketing Traffic Data and View Financial Info are enabled for Coal. Steam may need a short wait before the change becomes visible.
The Financial API key does not verify
Confirm that the key comes from a Financial API Group in the same Steamworks partner account as the game and that Financial is enabled under Manage WebAPI Key. A missing Steam reporting date can also mean the wrong app is being checked or Steam has not exposed wishlist reporting for the title yet. If the setup matches this guide, contact Coal instead of repeatedly creating new keys.