[/list] [/list] [/list] [b]Example Response:[/b] [code=json] { "response": { "result": "OK", "params": { "count": 4, "orders": [ { "orderid": "1233", "transid": "1234567890123456788", "steamid": "76561197972751825", "status": "PartialRefund", "currency": "USD", "time": "2024-01-23T18:30:00Z", "country": "US", "usstate": "WA", "timecreated": "2024-01-23T18:15:00Z", "items": [ { "itemid": 100, "qty": 1, "amount": 99, "vat": 9, "itemstatus": "Refunded" }, { "itemid": 101, "qty": 1, "amount": 1299, "vat": 116, "itemstatus": "Succeeded" } ] }, { "orderid": "1234", "transid": "1234567890123456789", "steamid": "76561197972751825", "status": "Failed", "currency": "USD", "time": "2024-01-23T18:40:30Z", "country": "US", "usstate": "WA", "timecreated": "2024-01-23T18:39:00Z", "items": [ { "itemid": 100, "qty": 1, "amount": 99, "vat": 9, "itemstatus": "Failed" } ] }, { "orderid": "1235", "transid": "1234567890123456790", "steamid": "76561197972751825", "status": "Succeeded", "currency": "USD", "time": "2024-01-23T18:40:40Z", "country": "US", "usstate": "WA", "timecreated": "2024-01-23T18:39:30Z", "items": [ { "itemid": 101, "qty": 1, "amount": 1299, "vat": 116, "itemstatus": "Succeeded" } ] }, { "orderid": "1236", "transid": "1234567890123456791", "steamid": "76561197972751825", "status": "Chargedback", "currency": "USD", "time": "2024-01-23T19:55:00Z", "country": "US", "usstate": "WA", "timecreated": "2024-01-23T18:40:00Z", "items": [ { "itemid": 102, "qty": 1, "amount": 999, "vat": 89, "itemstatus": "Chargedback" } ] } ] } } } [/code] [section=GetUserAgreementInfo]GetUserAgreementInfo[/section] [code=http]GET https://partner.steam-api.com/ISteamMicroTxn/GetUserAgreementInfo/v2/[/code] [table] [tr][th]Name[/th][th]Type[/th][th]Required[/th][th]Description[/th][/tr] [tr] [td][b]key[/b][/td][td]string[/td] [td]✔[/td] [td]Steamworks Web API [url=https://partner.steamgames.com/doc/webapi_overview/auth#publisher-keys]publisher key[/url] with [b]Microtransaction[/b] permissions.…
[/list] [/list] [/list] [b]Example Response:[/b] [code=xml] <response> <result>OK</result> <params> <state>WA</state> <country>US</country> <currency>USD</currency> </params> </response> [/code] [section=InitTxn]InitTxn[/section] [code=http]POST https://partner.steam-api.com/ISteamMicroTxn/InitTxn/v3/[/code] [table] [tr][th]Name[/th][th]Type[/th][th]Required[/th][th]Description[/th][/tr] [tr] [td][b]key[/b][/td][td]string[/td] [td]✔[/td] [td]Steamworks Web API [url=https://partner.steamgames.com/doc/webapi_overview/auth#publisher-keys]publisher key[/url] with [b]Microtransaction[/b] permissions.…
Why do I need to obtain an Individual Taxpayer Identification Number (ITIN)?[/h4] [b]A.[/b] Generally, a foreign person is subject to U.S. tax on its U.S. source income. Most types of U.S. source income received by a foreign person are subject to a U.S. tax rate of 30%. …
Does applying for a TIN require me to file a U.S. tax return?[/h4] [b]A.[/b] Applying for an ITIN for purposes to exercise the benefits under the tax treaty does not require you to file a U.S. tax return. [*][h4]Q. …
For Non-U.S. partners (W8), a U.S. TIN or a foreign TIN is required to claim treaty benefits. [*][h4]Q. Why am I seeing a non-Valve URL upon clicking the link to start the tax interview?…
Why do I need to obtain an Individual Taxpayer Identification Number (ITIN)?[/h4] A. Generally, a foreign person is subject to U.S. tax on its U.S. source income. Most types of U.S. source income received by a foreign person are subject to a U.S. tax rate of 30%. …
[u]Steam Bundles[/u] Steam keys cannot be generated for Steam bundles. You will need to generate keys for the individual apps in the bundle. …
However, the maximum number of Release State Override (beta) keys you can request for this purpose is generally 2,500 total. [u]You should not promise more than 2,500 [b]Release State Override (beta) keys[/b] for your game during your crowdfunding campaign[/u]. …
If you've came here by accident and are looking for additional information about the program, please click [url=https://partner.steamgames.com/doc/sitelicense]here[/url] to get to the program's info page. [callout] [list] [h3][b]Recommended Setup[/b][/h3] [*][b][u]PC Cafés - Patrons log in with their personal Steam account for the full Steam experience[/u][/b] This setup lets users experience Steam at your location in exactly the same way as they would at home. …
[/list] [h4][url=https://partner.steamgames.com/doc/sitelicense/licensees/gettingstarted/licensemodelpc]Setup instructions for the PC Café model can be found here.[/url][/h4] [/list][/callout] [callout] [list] [*][u][b]VR Arcades Only - Dedicated Steam Account per VR station[/b][/u] This model allows VR arcades to create a dedicated Steam account for each station. …
You will generate this token at https://steamcommunity.com/broadcast/upload, and enter it into the software you plan to use to stream your game to Steam. [callout][u]Important[/u]: Treat your token like a password, and Never share it, as anyone who has it can stream as you. If you believe your key is compromised, you can invalidate it and generate a new one on this page. …
Add the account you intend to Stream with: [docimg=stream13.png]stream13.png[/docimg] [u]Important:[/u] The Steam account setting up the stream and the account that is streaming must be friends in order for it to be visible on this page. …
Of course, a date that’s more precise is also fine (e.g. June, 2025 or June 1st, 2025).[/list] [u]A Season Pass must include at least one released DLC when it is made available for purchase*[/u] *with the exception of Season Passes included in a Pre-Purchase of a deluxe edition. …
Later, when the DLC is available for purchase, you should update this in the Season Pass Roadmap. [u]Note: You will need Valve's assistance to release a DLC without a store page. Please reach out to us directly.[/u] [b]Q. Can I release DLC in a Season Pass ahead of schedule?…
[section]HTML Supported[/section] This is the list of support HTML that we convert to their equivalent bbcode [list] [*]<a href="[i]url[/i]">[i]text[/i]</a> turns into URLs [*]<img src="[i]url[/i]"> turns into an image [*]<b></b>, <strong></strong> turns into bold [*]<i></i>, <em></em> turns into italics [*]<u></u>, <span></span> turns into underline [*]<p>, <br> turns into new lines [*]<h1> ... <h6> turns into headline [*]<ul>, <ol> turns into an unordered list [*]<li> turns into list items [*]<table> turns into table start [*]<th> turns into table header row [*]<tr> turns into table row [*]<td> turns into table column [/list] [subsection]HTML Ignored[/subsection] <html>, <head>, <doctype>, <thead>, <tbody>, <title>, <div>, <hr> and any tag not in the previous list. …
The default stream usually looks something like: [code] 00000009 my_exe_name.exe:05 > IClientUser::GetSteamID( ) = [U:2:172006], 00000009 my_exe_name.exe:05 > IClientUser::BLoggedOn( ) = 1, 00000009 my_exe_name.exe:05 > IClientNetworking::IsP2PPacketAvailable( 0, ) = 0, 0, 00000009 my_exe_name.exe:05 > IClientNetworking::IsP2PPacketAvailable( 1, ) = 0, 0, 00000009 my_exe_name.exe:05 > IClientFriends::GetPersonaName( ) = "user", 00000009 my_exe_name.exe:05 > IClientUser::GetSteamID( ) = [U:2:123456], [/code] [subsection]Monitoring a specific interface[/subsection] If you are trying to track a specific issue, filter the log_ipc to the specific interface. ex: [code-inline]log_ipc IClientUser[/code-inline] Example output: [code] 00000009 my_exe_name.exe:05 > IClientUser::GetSteamID( ) = [U:2:172006], 00000009 my_exe_name.exe:05 > IClientUser::BLoggedOn( ) = 1, 00000009 my_exe_name.exe:05 > IClientUser::GetSteamID( ) = [U:2:123456], [/code] [subsection]IPC Report[/subsection] A rollup report is available to the log_ipc command in the Steam client. …
Steam and the Steam logo are trademarks and/or registered trademarks of Valve Corporation in the U.S. and/or other countries. ©2026 Valve Corporation. Steamworks and the Steamworks logo are trademarks and/or registered trademarks of Valve Corporation in the U.S. and/or other countries. …
Steam et le logo Steam sont des marques déposées et/ou des marques enregistrées par Valve Corporation aux É.U. et/ou dans d'autres pays. ©2026 Valve Corporation. Steamworks et le logo Steamworks sont des marques déposées et/ou des marques enregistrées par Valve Corporation aux É.U. et/ou dans d'autres pays. …
Steam's process takes into account customer feedback, input from Valve's content review teams and the content survey that the developer has filled in for the game. [u]Your game cannot receive a content review rating from Valve if you have not filled in the game's content survey.[/u] Therefore, to ensure that a game is available for sale in Indonesia, you need to truthfully complete Steam's built-in content questionnaire and submit the results. …
Valve's process takes into account customer feedback, input from Valve's content review teams and the content survey that the developer has filled in for the game. [u]Your game cannot receive a content review rating from Valve if you have not filled in the game's content survey.[/u] Therefore, to ensure that a game is available for sale in Germany, you need to truthfully complete Steam's built-in content questionnaire and submit the results. …
[b]Example:[/b] [code=cpp]int main() { if ( SteamAPI_RestartAppIfNecessary( k_uAppIdInvalid ) ) // Replace with your App ID { return 1; } if ( !SteamAPI_Init() ) { printf( "Fatal Error - Steam must be running to play this game (SteamAPI_Init() failed).…
[subsection=SteamAPI_WriteMiniDump]SteamAPI_WriteMiniDump[/subsection] [code=cpp]S_API void S_CALLTYPE SteamAPI_WriteMiniDump( uint32 uStructuredExceptionCode, void* pvExceptionInfo, uint32 uBuildID );[/code] [table] [tr][th]Name[/th][th]Type[/th][th]Description[/th][/tr] [tr][td][b]uStructuredExceptionCode[/b][/td][td]uint32[/td][td]The structured exception code.…
as it provides access to large amount of information on the performance of your partner account on Steam. [b][u]GetDetailedSales Best Practices[/u][/b] [u][b]Step 1:[/b][/u] Call GetChangedDatesForPartner to find the set of dates that have new data. …
Move on to the next date and continue the pattern described above. [b][u]Example Integration of IPartnerFinancialsService[/u][/b] - Partner X calls GetChangedDatesForPartner on May 4th, 2025 with a highwatermark value of 0. …
These images help customers understand what content is included in each edition and which purchase option is right for them. [u]Important[/u]: you can upload a localized image for all supported languages. Uploading localized assets is a critical step, as it helps customers around the world understand the purchase options you are presenting to them. …
. [*]Guatemala [*]Guyana [*]Honduras [*]Haiti [*]Jamaica [*]Saint Kitts And Nevis [*]Cayman Islands [*]Saint Lucia [*]Martinique [*]Montserrat [*]Mexico [*]Nicaragua [*]Panama [*]Peru [*]Puerto Rico [*]Paraguay [*]Suriname [*]El Salvador [*]Turks And Caicos Islands [*]Trinidad And Tobago [*]Uruguay [*]Saint Vincent And The Grenadines [*]Venezuela [*]Virgin Islands (British) [*]Virgin Islands (U.S.) [*]Bonaire, Sint Eustatius And Saba [*]Curacao [*]Sint Maarten, Dutch Part[/list] [subsection]Middle East[/subsection] [list][*]United Arab Emirates [*]Bahrain [*]Egypt [*]Israel [*]Iraq [*]Jordan [*]Kuwait [*]Lebanon [*]Oman [*]Palestine, State of [*]Qatar [*]Saudi Arabia [*]Turkey [*]Yemen [/list] [subsection]North America[/subsection] [list][*]Canada [*]St. Pierre And Miquelon [*]United States[/list] [subsection]Oceania[/subsection] [list][*]American Samoa [*]Australia [*]Cocos (Keeling) Islands [*]Cook Islands [*]Christmas Island [*]Fiji [*]Micronesia, Federated States of [*]Guam [*]Kiribati [*]Marshall Islands [*]Northern Mariana Islands [*]New Caledonia [*]Norfolk Island [*]Nauru [*]Niue [*]New Zealand [*]French Polynesia [*]Papua New Guinea [*]Palau [*]Solomon Islands [*]Tokelau [*]East Timor [*]Tonga [*]Tuvalu [*]U.S. Minor Islands [*]Vanuatu [*]Wallis And Futuna Islands [*]Samoa[/list] [subsection]Other[/subsection] [list][*]Antarctica [*]Bouvet Island [*]Heard and McDonald Islands [*]Pitcairn [*]Saint Helena [*]French Southern Territories[/list] [subsection]Central Asia[/subsection] [list][*]Armenia [*]Azerbaijan [*]Belarus [*]Kyrgyzstan [*]Kazakhstan [*]Moldova, Republic of [*]Russian Federation [*]Tajikistan [*]Turkmenistan [*]Ukraine [*]Uzbekistan[/list] [subsection]South Asia[/subsection] [list][*]Afghanistan [*]Bangladesh [*]Bhutan [*]India [*]British Indian Ocean Territory [*]Sri Lanka [*]Maldives [*]Nepal [*]Pakistan[/list] [subsection]South East Asia[/subsection] [list][*]Brunei Darussalam [*]Indonesia [*]Cambodia [*]Laos [*]Myanmar (Burma) [*]Malaysia [*]Philippines [*]Singapore [*]Thailand [*]Viet Nam[/list] [subsection]Western Europe[/subsection] [list][*]Andorra [*]Austria [*]Aland Islands [*]Belgium [*]Switzerland [*]Cyprus [*]Germany [*]Denmark [*]Spain [*]Finland [*]Faroe Islands [*]France [*]United Kingdom [*]Guernsey [*]Gibraltar [*]Greenland [*]Ireland [*]Isle of Man [*]Iceland [*]Italy [*]Jersey [*]Liechtenstein [*]Luxembourg [*]Monaco [*]Malta [*]Netherlands [*]Norway [*]Portugal [*]Sweden [*]Svalbard And Jan Mayen Islands [*]San Marino [*]Holy See (Vatican City State)[/list]…
. // If it doesn't exist, continue on, and add the texture to the map before returning at the end of the function. // If we have to check the size of the image. uint32 uAvatarWidth, uAvatarHeight; bool success = SteamUtils()->GetImageSize( iImage, &uAvatarWidth, &uAvatarHeight ); if ( !…
return hTexture; } // Get the actual raw RGBA data from Steam and turn it into a texture in our game engine const int uImageSizeInBytes = uAvatarWidth * uAvatarHeight * 4; uint8 *pAvatarRGBA = new uint8[uImageSizeInBytes]; success = SteamUtils()->GetImageRGBA( iImage, pAvatarRGBA, uImageSizeInBytes ); if( !…
[/list] [section]Reporting For Taxes[/section] [list] [*] [b]Q. What reporting do you provide for tax purposes?[/b] A. U.S. partners will have royalties earned in the prior tax year reported on the Form 1099-MISC. We issue these annual forms on or before January 31 each year. Non-U.S. partners will have U.S. source income reported annually on the IRS Form 1042-S. We issue these annual forms on or before March 15 each year, and is an informational statement of your US sourced royalties and any amounts withheld during the prior tax year. …
[subsection]Gameplay Trailers First[/subsection] We have found that most Steam users are looking for [u]gameplay[/u] of your game. We highly recommend that the first trailer you list on your store page is primarily gameplay, showing the player what they will be doing in the game and from the perspective that they will be interacting with your game. …
[b]Returns:[/b] bool [subsection=GetAvailableBeaconLocations]GetAvailableBeaconLocations[/subsection] [code=cpp]bool GetAvailableBeaconLocations( SteamPartyBeaconLocation_t *pLocationList, uint32 uMaxNumLocations );[/code] [table] [tr][th]Name[/th][th]Type[/th][th]Description[/th][/tr] [tr][td][b]pLocationList[/b][/td][td][apitype]steam_api::SteamPartyBeaconLocation_t[/apitype]*[/td][td]Output list of available beacon locations.[/td][/tr] [tr][td][b]uMaxNumLocations[/b][/td][td][apitype]uint32[/apitype][/td][td]The maximum number of entries to put into the above list. Should be >= the result from GetNumAvailableBeaconLocations.…