Return or Refund an Order

return.created

Overview of the return.created webhook

When a return.created event is triggered, FastSpring sends a webhook payload containing details about the refund or return. This webhook fires only when a return or refund has been issued. It does not fire for:

  • Tax-only refunds
  • Manual credit adjustments that were not created as returns

If webhook expansion is enabled, the payload includes full account and product objects. Otherwise, the payload includes only the corresponding IDs.

This page provides:

  • A full sample payload showing a populated return.created webhook
  • A detailed table listing every payload property, including name, type, and description
  • Notes on when this webhook is triggered and which fields appear based on Webhook Expansion

Browse the table sections below or use the quick links to jump to a specific group of fields.

Tip: Not all fields are always included. Refer to the Payload properties table to understand when a field appears.

Webhook payload example (expansion enabled)

When a return.created event is triggered, the webhook sends the following JSON payload:

{
    "return": "aBCDE12fGH3iJkL4mNOpqr",
    "quote": null,
    "reference": "ABC1234567-8910-11121D",
    "completed": true,
    "changed": 1751896963416,
    "changedValue": 1751896963416,
    "changedInSeconds": 1751896963,
    "changedDisplay": "7/7/25",
    "changedDisplayISO8601": "2025-07-07",
    "live": false,
    "account": {
        "id": "abCdE1FGH2Hij3KLMnOpqR",
        "account": "abCdE1FGH2Hij3KLMnOpqR",
        "contact": {
            "first": "Jane",
            "last": "Doe",
            "email": "[email protected]",
            "company": "ABC Company",
            "phone": "5555555555",
            "subscribed": true
        },
        "address": {
            "addressLine1": "801 Garden St",
            "addressLine2": "Suite 201",
            "city": "Santa Barbara",
            "country": "US",
            "postal code": "93101",
            "region": "US-CA",
            "region custom": "California",
            "company": "ABC Company"
        },
        "language": "en",
        "country": "US",
        "lookup": { "global": "8x3FKfUESieeIgGoxHBRLg" },
        "url": "https://company.onfastspring.com/account"
    },
    "currency": "USD",
    "payoutCurrency": "USD",
    "totalReturn": 14.95,
    "totalReturnDisplay": "$14.95",
    "totalReturnInPayoutCurrency": 14.95,
    "totalReturnInPayoutCurrencyDisplay": "$14.95",
    "tax": 0.0,
    "taxDisplay": "$0.00",
    "taxInPayoutCurrency": 0.0,
    "taxInPayoutCurrencyDisplay": "$0.00",
    "subtotal": 14.95,
    "subtotalDisplay": "$14.95",
    "subtotalInPayoutCurrency": 14.95,
    "subtotalInPayoutCurrencyDisplay": "$14.95",
    "totalRefundInPayoutCurrency": 14.95,
    "payment": {
        "type": "test",
        "cardEnding": "4242"
    },
    "reason": "Duplicate Order",
    "note": "As requested by customer",
    "type": "RETURN",
    "refundPerformerType": "sellerApp",
    "refundSourceComponent": "refund",
    "original": {
        "id": "wvje2BeoQbyCRAbucnPrRw",
        "order": "wvje2BeoQbyCRAbucnPrRw",
        "reference": "ABC1234567-8910-11121D",
        "account": "abCdE1FGH2Hij3KLMnOpqR",
        "currency": "USD",
        "payoutCurrency": "USD",
        "total": 14.95,
        "totalDisplay": "$14.95",
        "totalInPayoutCurrency": 14.95,
        "totalInPayoutCurrencyDisplay": "$14.95",
        "tax": 0.0,
        "taxDisplay": "$0.00",
        "taxInPayoutCurrency": 0.0,
        "taxInPayoutCurrencyDisplay": "$0.00",
        "subtotal": 14.95,
        "subtotalDisplay": "$14.95",
        "subtotalInPayoutCurrency": 14.95,
        "subtotalInPayoutCurrencyDisplay": "$14.95",
        "notes": []
    },
    "customer": {
        "first": "John",
        "last": "Doe",
        "email": "[email protected]",
        "company": null,
        "phone": "5555555555",
        "subscribed": true
    },
    "items": [
     {
        "product": "furious-falcon",
        "quantity": 1,
        "display": "Furious Falcon",
        "sku": "SKU-12345",
        "refundType": "Full Refund",
        "subtotal": 14.95,
        "subtotalDisplay": "$14.95",
        "subtotalInPayoutCurrency": 14.95,
        "subtotalInPayoutCurrencyDisplay": "$14.95",
        "fulfillments": {},
        "withholdings": {
            "taxWithholdings": false
        }
     }
    ],
    "refundPerformer": "[email protected]"
}

Payload properties

The payload properties table outlines each property in the return.created event JSON payload, specifying their name, data type, and description.

Name Type Description
Return Metadata Back to top ↑
return string Unique identifier to reference a specific return.
quote string Quote identifier associated with the return, if any.
reference string Reference code for the return.
completed boolean Indicates whether the return process has been completed. true if the refund has been processed successfully; false if the return has not been processed, or was unsuccessful.
live boolean Indicates whether the order is live. Returns true if the order is live; false if it is a test order.
Timestamps Back to top ↑
changed integer Timestamp (in milliseconds) of the most recent update to the refund.
changedValue integer Duplicate of changed for backward compatibility.
changedInSeconds integer Timestamp (in seconds) of the most recent update to the refund.
changedDisplay string Formatted display string for the most recent refund update. The display is formatted based on the language of the original order.
changedDisplayISO8601 string ISO 8601 formatted timestamp for the last refund update.
Account Object Back to top ↑
id string Unique ID for the customer account.
account string Duplicate of account.id for backward compatibility.
contact object Contact details for the account.
contact.first string First name of the account contact.
contact.last string Last name of the account contact.
contact.email string Email address of the account contact.
contact.company string Company name of the account contact, if provided.
contact.phone string Phone number of the account contact, if provided.
contact.subscribed boolean true if the account contact is subscribed to updates; otherwise false.
address object Address details for the account.
address.address line 1 string Primary street address line.
address.address line 2 string Secondary street address line.
address.city string City of the account address.
address.country string 2-letter ISO country code for the address.
address.postal code string Postal or ZIP code of the address.
address.region string Region (state/province) for the address.
address.region custom string Custom region name, if not standard.
address.company string Company name associated with this address, if provided.
language string 2-letter ISO code of the account's preferred language.
country string 2-letter ISO country code of the account's location.
lookup object Lookup identifiers for the account.
lookup.global string Public account ID used in customer-facing portals.
url string URL to the account management page.
Pricing Back to top ↑
currency string 3 character ISO code of the order currency. The return currency is the same.
payoutCurrency string 3 character ISO code of your disbursement currency.
totalReturn number Total return amount in the original transaction's currency.
totalReturnDisplay string Formatted version of totalReturn.
totalReturnInPayoutCurrency number Total return amount in your disbursement currency.
totalReturnInPayoutCurrencyDisplay string Formatted version of totalReturnInPayoutCurrency.
tax number Tax amount returned, in the original transaction's currency.
taxDisplay string Formatted version of tax.
taxInPayoutCurrency number Tax amount returned, in your disbursement currency.
taxInPayoutCurrencyDisplay string Formatted version of taxInPayoutCurrency.
subtotal number Subtotal of the return (excludes tax), in the original transaction's currency.
subtotalDisplay string Formatted version of subtotal.
subtotalInPayoutCurrency number Subtotal of the return, in your disbursement currency.
subtotalInPayoutCurrencyDisplay string Formatted version of subtotalInPayoutCurrency.
totalRefundInPayoutCurrency string Formatted version of order.subtotalInPayoutCurrency.
Payment Method Back to top ↑
payment.type string Payment method used for the order. Example values: paypal, amazon, applepay, creditcard, kakaopay, test, bank, alipay, purchase-order, free, upi.
payment.variant string Returned when order.payment.type is upi. Indicates the buyer's UPI app or flow. Example values: upigpay, upiphonepe, upipaytm, upidesktop.
payment.creditcard string Returned when order.payment.type is creditcard. Type of credit or debit card used. Example values: visa, mastercard, amex, discover, jcb, carteblanche, dinersclub, unionpay, elo, hipercard.
payment.cardEnding string Returned when order.payment.type is creditcard. Last four digits of the card number used for the order.
payment.bank string Returned when order.payment.type is bank. Type of bank transfer used to pay for the order. Example values: wire, brazilwire, ideal, giropay, sofort, ecard, sepa, alipay.
Refund Details Back to top ↑
reason string Reason for the return or refund.
note string Optional note or comment provided when creating the return.
type string Type of return processed. Values include: RETURN, CHARGEBACK, PAYMENTRISK, PAYPAL.
refundPerformerType string Entity or component that performed the refund.
refundSourceComponent string Component that initiated the refund.
refundPerformer string Email or identifier of the person or system that issued the refund.
Original Order Details Back to top ↑
original object Details of the order session that is returned.
original.id string Unique identifier of the original order instance.
original.order string Duplicate of original.id for backward compatibility.
original.reference string Customer-facing reference code for the original order.
original.account string FastSpring-generated customer account ID associated with the original order.
original.currency string 3 character ISO currency code for the original order.
original.payoutCurrency string 3 character ISO currency code used for disbursements.
original.total number Total amount charged for the original order (before tax).
original.totalDisplay string Formatted display of original.total.
original.totalInPayoutCurrency number Total amount for the original order in the payout currency.
original.totalInPayoutCurrencyDisplay string Formatted display of original.totalInPayoutCurrency.
original.tax number Total tax amount for the original order.
original.taxDisplay string Formatted display of original.tax.
original.taxInPayoutCurrency number Tax amount in the payout currency.
original.taxInPayoutCurrencyDisplay string Formatted display of original.taxInPayoutCurrency.
original.subtotal number Subtotal before tax and discounts for the original order.
original.subtotalDisplay string Formatted display of original.subtotal.
original.subtotalInPayoutCurrency number Subtotal for the original order in the payout currency.
original.subtotalInPayoutCurrencyDisplay string Formatted display of original.subtotalInPayoutCurrency.
original.notes array Array of internal notes or comments on the original order (empty if none).
Customer Object Back to top ↑
customer object Details of the customer who placed the order.
customer.first string Customer’s first name.
customer.last string Customer’s last name.
customer.email string Customer’s email address.
customer.company string Customer’s company name, if provided.
customer.phone string Customer’s phone number, if provided.
customer.subscribed boolean true if the customer is subscribed to updates; otherwise false.
Items Array Back to top ↑
items array Array of item objects purchased in the order. Each object contains product, pricing, and subscription info.
product string ID of the product associated with the item.
quantity number Quantity of the product purchased.
display string Customer-facing name of the product.
sku string Product SKU assigned in your FastSpring catalog.
refundType string Type of refund applied. Example values: Full Refund or Partial Refund.
subtotal number Pre-tax subtotal for the item, in the transaction currency.
subtotalDisplay string Formatted subtotal for the item, in the transaction currency.
subtotalInPayoutCurrency number Subtotal for the item, in your payout currency.
subtotalInPayoutCurrencyDisplay string Formatted subtotal for the item, in your payout currency.
Fulfillments Object Back to top ↑
fulfillments.display string Display name of the downloadable file or fulfillment action.
fulfillments.size integer File size in bytes. Applies when the fulfillment type is file.
fulfillments.file string Secure URL for downloading the fulfillment file.
fulfillments.type string Fulfillment type. Example values: file, license.
Withholdings Object Back to top ↑
withholdings.amount number Total amount withheld from this item, in the transaction currency.
withholdings.amountDisplay string Formatted display of the withheld amount. Example: $12.00.
withholdings.amountInPayoutCurrency number Amount withheld in your payout currency.
withholdings.amountInPayoutCurrencyDisplay string Formatted withheld amount in payout currency. Example: $12.00.
withholdings.percentage number Percentage of the item's total that was withheld. Example: 15.
withholdings.taxWithholdings boolean Indicates whether this withholding is related to taxes. true if tax-related; otherwise false.
Back to top ↑