Swap can read Shopify metafields in two places: as extra options a customer can exchange for in the returns portal, and as conditions in Advanced Rules.
ℹ️ This feature is available in Returns V2 only.
Using metafields as exchange options in the portal
If you store product relationships in Shopify metafields rather than as native Shopify variants, Swap reads the linked products and offers them as selectable options during the exchange flow. They are treated as equal exchanges.
This applies to like-for-like exchanges only, in the dashboard's own words — so metafield-linked options do not appear in Shop Now, also called Exchange for Something Else. They do appear when you change the variant on an exchange item from the RMA.
How it works
You map a metafield in the Swap dashboard. The returns portal then reads the linked products from that metafield and shows them alongside the standard variant options, each as a swatch using the product's first image. The swatches appear after the colour variant where the product has one, and first where it does not.
When a customer selects a swatch, the portal switches to show that product's variants and details, the same way it handles any other variant selection. Equal exchange pricing applies normally.
How to set it up
Create the metafield in Shopify first, then map it in Swap.
Go to Returns → Settings → Exchanges in your Swap dashboard.
Find the Exchange Variant Options via Metafields panel.
Switch on Custom Variant Selector — "Allow customers to select from a custom set of variant options during like-for-like exchanges. Configure your Shopify metafield to get started."
Choose your metafield from the Product metafield dropdown.
Optionally fill in Label.
Click Save.
What to expect while setting it up
Only one metafield type is eligible. The dropdown lists definitions of type
list.product_referenceand nothing else. If the metafield you created is not in the list, check its type in Shopify — this is the most common reason one appears to be missing.Custom Variant Selector cannot be switched on at all if your store has no eligible metafields. It is disabled, with a tooltip reading "No metafields configured". Create the metafield in Shopify, then come back.
Options show the metafield's name, for example Related products. Where two metafields share a name, the namespace is added to tell them apart, as in
product_colors (custom)andproduct_colors (test).You can map more than one metafield using +. Each dropdown hides options already mapped, and + disappears once every eligible metafield is in use.
Label is customer-facing, not a note to yourself — the field's own helper text reads "Title shown to customers in the exchange portal. Defaults to 'Additional colors'." Leave it empty and customers see Additional colors.
Only product-level metafields are read for this feature.
If no swatches appear in the portal
The metafield has no linked products. Link products to it in Shopify and they appear straight away.
The metafield is the wrong type. Only
list.product_referenceis supported.Your store has more than 100 metafield definitions. Shopify returns definitions in pages of 100 and Swap reads only the first page, so a metafield beyond the first 100 will not appear in the dropdown and there is no warning that it has been skipped.
Metafields in Advanced Rules
Separately from the portal feature above, Advanced Rules can use metafield values as conditions, so you can vary how a return is handled based on data held against a product or a variant. There are two conditions, Product metafield and Variant metafield — note that the variant one exists despite the portal feature reading product-level metafields only.
For how these conditions are configured, what they can be combined with, and the full condition and action list, see Understanding advanced rules, which owns that detail.
