Endpoint
GET https://api.gumroad.com/v2/sales/:id
Authentication
Requires theview_sales OAuth scope.
Path Parameters
string
required
The unique external ID of the sale to retrieve.
Response
Returns a sale object if a valid identifier was provided.boolean
required
Indicates if the request was successful.
object
required
The sale object.
Show Sale object properties
Show Sale object properties
string
Unique identifier for the sale (obfuscated).
string
Purchaser’s email address.
string
Seller’s unique identifier (obfuscated).
string
Human-readable time since the sale (e.g., “2 days ago”).
string
Formatted date and time of the sale in seller’s timezone.
timestamp
ISO 8601 timestamp of when the sale was created.
string
Product’s external identifier.
string
Name of the product sold.
string
Unique permalink for the product.
boolean
Whether the product has variants.
integer
Sale price in cents.
integer
Gumroad’s fee in cents.
string
Human-readable formatted price with currency symbol.
string
Total transaction amount formatted with currency symbol.
string
Currency symbol for the transaction.
string
Amount that can still be refunded, formatted with currency.
integer
Numeric order identifier.
string
Email used for the purchase.
string
Purchaser’s full name.
string
Purchaser’s external ID if they have a Gumroad account.
string
Street address for physical products.
string
City for physical products.
string
State or province.
string
ZIP or postal code.
string
Country name.
string
Two-letter ISO country code.
boolean
Whether the sale has been fully refunded.
boolean
Whether the sale has been partially refunded.
boolean
Whether the sale has been charged back.
boolean
Whether the sale is disputed (same as chargedback).
boolean
Whether a chargeback dispute was won.
string
Subscription external ID if this is a recurring billing sale.
string
Billing interval for subscriptions (e.g., “monthly”, “yearly”).
boolean
Whether this is a recurring charge (not the initial subscription purchase).
boolean
Whether the subscription has been cancelled.
boolean
Whether the subscription has ended.
boolean
Whether the free trial has ended.
object
Variant selections as key-value pairs.Example:
{"Size": "Large", "Color": "Blue"}string
Human-readable string of variants with quantities.
boolean
Whether variants were selected for this purchase.
object
Custom field values as key-value pairs.Example:
{"Company": "Acme Corp", "License Type": "Team"}boolean
Whether custom fields were collected.
integer
Quantity purchased.
boolean
Whether the order has been marked as shipped (physical products).
string
Tracking URL for shipments.
string
License key for licensed products.
boolean
Whether this is a recurring billing product.
boolean
Whether the product is a physical good.
boolean
Whether the buyer opted in to be contacted.
boolean
Whether the buyer is following the seller.
string
Referring URL for the purchase.
object
object
boolean
Whether this purchase was a gift sent to someone.
boolean
Whether this purchase was received as a gift.
string
Email of the person who sent the gift.
string
Email of the gift recipient.
boolean
Whether this is a bundle purchase.
boolean
Whether this is a product within a bundle.
Example Request
curl "https://api.gumroad.com/v2/sales/ABC123XYZ" \
-H "Authorization: Bearer YOUR_ACCESS_TOKEN"
Example Response
{
"success": true,
"sale": {
"id": "ABC123XYZ",
"email": "buyer@example.com",
"seller_id": "seller456",
"timestamp": "2 days ago",
"daystamp": "January 15, 2024 at 10:30 AM PST",
"created_at": "2024-01-15T10:30:45.000Z",
"product_id": "prod_abc123",
"product_name": "My Awesome Product",
"product_permalink": "myproduct",
"product_has_variants": true,
"price": 2999,
"gumroad_fee": 314,
"formatted_display_price": "$29.99",
"formatted_total_price": "$29.99",
"currency_symbol": "$",
"amount_refundable_in_currency": "$29.99",
"order_id": 123456789,
"purchase_email": "buyer@example.com",
"full_name": "John Doe",
"purchaser_id": "user_789",
"street_address": "123 Main St",
"city": "San Francisco",
"state": "CA",
"zip_code": "94102",
"country": "United States",
"country_iso2": "US",
"refunded": false,
"partially_refunded": false,
"chargedback": false,
"disputed": false,
"dispute_won": false,
"subscription_id": null,
"variants": {
"Size": "Large",
"Color": "Blue"
},
"has_variants": true,
"custom_fields": {
"Company": "Acme Corp"
},
"has_custom_fields": true,
"quantity": 1,
"shipped": false,
"is_recurring_billing": false,
"is_product_physical": false,
"can_contact": true,
"is_following": false,
"referrer": "https://twitter.com",
"card": {
"visual": "4242",
"type": "Visa"
},
"is_gift_sender_purchase": false,
"is_gift_receiver_purchase": false,
"is_bundle_purchase": false,
"is_bundle_product_purchase": false
}
}
Error Response
If the sale is not found or doesn’t belong to the authenticated user:{
"success": false,
"message": "The sale was not found."
}
Error Codes
error
Bad Request - Invalid sale ID format
error
Unauthorized - Invalid or missing access token
error
Forbidden - Token does not have
view_sales scopeerror
Not Found - Sale does not exist or does not belong to the authenticated user