Skip to content

Init Checkout Transaction

Revadike edited this page Oct 16, 2026 · 1 revision

POST /checkout/inittransaction

Initializes a checkout transaction on the legacy checkout flow, returning a transid that is used by the subsequent checkout steps (/checkout/getfinalprice/, /checkout/finalizetransaction/, /checkout/transactionstatus/).

Rate limits

No known rate limit

Request

Authenticated: Yes

Method: POST

Host: checkout.steampowered.com

Path: /checkout/inittransaction

Form Data:

Name Type Required Description
gidShoppingCart number Yes The 64-bit ID of the cart
gidReplayOfTransID number No The 64-bit ID of a previous transaction to replay (-1 if none)
bUseAccountCart number No When 1, uses the account cart instead of the legacy cart
PaymentMethod string Yes The payment method (e.g. visa, paypal, steamaccount)
abortPendingTransactions number No When 1, cancels any pending transactions
bHasCardInfo number No When 1, the request includes credit card information
CardNumber string No The credit card number (only for credit-card payment methods)
CardExpirationYear number No The 4-digit credit card expiration year
CardExpirationMonth number No The credit card expiration month
FirstName string No The billing first name
LastName string No The billing last name
Address string No The billing street address
AddressTwo string No The billing address line 2
Country string Yes The country code of the billing address
City string No The billing city
State string No The billing state/province
PostalCode string No The billing postal code
Phone string No The billing phone number
ShippingFirstName string No The shipping first name
ShippingLastName string No The shipping last name
ShippingAddress string No The shipping street address
ShippingAddressTwo string No The shipping address line 2
ShippingCountry string No The country code of the shipping address
ShippingCity string No The shipping city
ShippingState string No The shipping state/province
ShippingPostalCode string No The shipping postal code
ShippingPhone string No The shipping phone number
bIsGift number No When 1, the purchase is a gift
GifteeAccountID number No The account ID of the gift recipient
GifteeEmail string No The email address of the gift recipient
GifteeName string No The name of the gift recipient
GiftMessage string No The gift message
Sentiment string No The gift sentiment
Signature string No The gift signature
ScheduledSendOnDate number No Unix timestamp when the scheduled gift is sent
BankAccount string No The bank account number
BankCode string No The bank code
BankIBAN string No The IBAN
BankBIC string No The bank BIC/SWIFT code
TPBankID string No The bank ID (e.g. for iDEAL bank selection)
BankAccountID string No The bank account ID
bSaveBillingAddress number No When 1, saves the billing address to the account
gidPaymentID number No The 64-bit ID of the stored payment method
bUseRemainingSteamAccount number No When 1, uses the remaining Steam Wallet balance
bPreAuthOnly number No When 1, performs a pre-authorization only (update billing info)
sessionid string Yes The value of the sessionid cookie

Response

200 OK

Name Type Description
success number Whether the request was successful (1 on success)
transid number The ID of the checkout transaction, used by the subsequent checkout requests
purchaseresultdetail number The numeric error detail code (0 on success)
paymentmethod number The numeric payment method
palpaltoken string The PayPal token, set when the payment method is PayPal (checkout.js reads this as paypaltoken)
specificerrortext string The specific error message (only on failure)

Example

POST https://checkout.steampowered.com/checkout/inittransaction { sessionid: "a0b1c2d3e4f5g6h7i8j9klmn" }
{
    "success": 2,
    "purchaseresultdetail": 0,
    "paymentmethod": 0,
    "palpaltoken": null,
    "transid": null
}

The example response was captured from an incomplete probe (empty form body, required fields omitted). No transaction was started.

Clone this wiki locally