XooCode(){

ReturnFeesEnumeration

ReturnFeesEnumeration is a schema.org Enumeration for who bears return fees. It is the value of three properties on MerchantReturnPolicy:

  • returnFees: default fee treatment.
  • customerRemorseReturnFees: fees for change-of-mind returns.
  • itemDefectReturnFees: fees for defective-item returns.

It has 5 members:

  • FreeReturn: no fees to the customer (merchant pays shipping, no restocking).
  • ReturnShippingFees: customer pays return shipping.
  • OriginalShippingFees: original shipping fee is non-refundable.
  • RestockingFees: a restocking fee applies (typically 10-25%).
  • ReturnFeesCustomerResponsibility: customer pays all fees.

Most retailers differentiate: FreeReturn for defects, ReturnShippingFees for remorse. Model that asymmetry with separate itemDefectReturnFees and customerRemorseReturnFees.

Full example of schema.org/ReturnFeesEnumeration json-ld markup

The markup is verified as valid with Rich Results Test from Google.

schema.org/ReturnFeesEnumeration
<script type="application/ld+json">
{
  "@context": "https://schema.org",
  "@type": "MerchantReturnPolicy",
  "applicableCountry": "US",
  "returnPolicyCategory": "https://schema.org/MerchantReturnFiniteReturnWindow",
  "merchantReturnDays": 30,
  "returnMethod": "https://schema.org/ReturnByMail",
  "itemDefectReturnFees": "https://schema.org/FreeReturn",
  "customerRemorseReturnFees": "https://schema.org/ReturnShippingFees",
  "returnShippingFeesAmount": { "@type": "MonetaryAmount", "value": 6.95, "currency": "USD" }
}
</script>

Minimal valid version

The smallest markup that still produces a valid ReturnFeesEnumeration entity. Use it as the floor. Reach for the advanced example above when you want search engines and AI agents to understand more about your content.

schema.org/ReturnFeesEnumeration (minimal)
<script type="application/ld+json">
{
  "@context": "https://schema.org",
  "@type": "MerchantReturnPolicy",
  "itemDefectReturnFees": "https://schema.org/FreeReturn",
  "customerRemorseReturnFees": "https://schema.org/ReturnShippingFees"
}
</script>

Google rich results this unlocks

ReturnFeesEnumeration is a structural type. It does not produce a rich result on its own.

Its value comes from combining it with a primary type whose markup earns a rich result (Article, Product, Event, and so on). ReturnFeesEnumeration becomes the trunk that the primary type branches off viamainEntityorbreadcrumb. Include it on every page as the backbone of your markup.

Common ReturnFeesEnumeration mistakes

Mistakes that pass validation but silently fail to earn rich results or mislead consumers walking the graph. Avoid these and your markup will be ahead of most sites in the wild.

  1. 01

    FreeReturn with a return-shipping amount

    Wrong
    returnFees: FreeReturn plus returnShippingFeesAmount
    Right
    If you charge anything, use ReturnShippingFees; FreeReturn means zero

    FreeReturn by definition excludes any fee. Pairing with an amount is contradictory.

  2. 02

    Single returnFees on asymmetric policies

    Wrong
    Single returnFees value for both defect and remorse
    Right
    itemDefectReturnFees + customerRemorseReturnFees separately

    Consumers ask specifically 'what if the item is broken' — the asymmetry should be visible.

About the example data

Xoo Code Shop's return-fee structure: free returns on defects, customer pays return shipping on remorse returns.

Comments

Loading comments...

Leave a comment