---
type: "firecrawl-provider"
description: "Affiliate networks, merchants and product identifier conversions (URL, barcode, ASIN) aggregated across Impact, Awin, Rakuten, CJ and other affiliate platforms."
use_when: "Retailers and brands on an affiliate network. A merchant has a numeric id, an `nmer_` id per network and a `mer_` canonical id across networks; link templates carry `{AFF_ID}`/`{SUB_ID}` slots.\n\nConvert between retailer product URLs, UPC/EAN barcodes, Amazon ASINs and merchant SKUs."
categories: "Retail"
capabilities: 5
credits_per_call: 25
---
# Affiliate.com on Firecrawl Alexandria

Affiliate networks, merchants and product identifier conversions (URL, barcode, ASIN) aggregated across Impact, Awin, Rakuten, CJ and other affiliate platforms.

- Categories: Retail
- Category index: [Retail category](https://firecrawl.dev/alexandria/agents/categories/retail)
- Provider key: `affiliate-com`
- Access: Firecrawl credits
- Cost: 25 credits per call

## More

- [Human guide](https://firecrawl.dev/app/alexandria/affiliate-com)
- [OpenAPI spec](https://firecrawl.dev/alexandria/agents/providers/affiliate-com/openapi.json)

## Capabilities

- [Search merchants](https://firecrawl.dev/alexandria/agents/providers/affiliate-com/merchants/search): Merchants under `data` with `meta` pagination (total, current_page, last_page, per_page). Always the extended merchant object: network, canonical merchant, categories, countries and per-provider link templates.
- [Merchant details](https://firecrawl.dev/alexandria/agents/providers/affiliate-com/merchants/get): One extended merchant under `data`. The reference page shows a one-element list; the live API answers a single object. A `mer_` canonical ID resolves to the canonical merchant.
- [Product URL to barcode](https://firecrawl.dev/alexandria/agents/providers/affiliate-com/identifiers/url-to-barcode): `data` maps each URL (as upstream normalises it) to an array of barcodes; `[]` means no match. `meta.to_total` counts URLs with at least one barcode.
- [ASIN to barcode](https://firecrawl.dev/alexandria/agents/providers/affiliate-com/identifiers/asin-to-barcode): `data` maps each ASIN to an array of barcodes; `[]` means none found.
- [Barcode to ASIN](https://firecrawl.dev/alexandria/agents/providers/affiliate-com/identifiers/barcode-to-asin): `data` maps each matched barcode to an array of `{ asin, locale }`; barcodes without a match are absent.

## 1. Choose this provider when

Retailers and brands on an affiliate network. A merchant has a numeric id, an `nmer_` id per network and a `mer_` canonical id across networks; link templates carry `{AFF_ID}`/`{SUB_ID}` slots.

Convert between retailer product URLs, UPC/EAN barcodes, Amazon ASINs and merchant SKUs.

## 2. Minimal request

Call `POST https://api.firecrawl.dev/v2/scrape` with `{ alexandria: { provider, capability, options } }`. For a batch, send `{ alexandria: [...] }` with up to 10 calls.

```json
{
  "provider": "affiliate-com",
  "capability": "merchants/search",
  "options": {
    "search": "walmart",
    "per_page": 1
  }
}
```

## 3. Add provider options

Use only the options needed for the task:

- `search` (string): Case-insensitive fragment of the merchant name or home_url, for example `Walmart` or `walmart.com`. Does not match IDs. Example: `<search>`
- `network_ids` (string): Comma-separated numeric network IDs, as in a merchant's `network.id`. Example: `network.id`
- `origin_ids` (string): Comma-separated merchant IDs as the source network assigns them. Example: `<origin_ids>`
- `canonical_ids` (string): Comma-separated canonical `mer_` merchant IDs. Example: `mer_`
- `category_ids` (string): Comma-separated `cat_` category IDs. Example: `cat_`
- `category_name` (string): Category name filter. Example: `<category_name>`
- `countries` (string): Comma-separated ISO 3166-1 alpha-2 codes the merchant operates in, for example `US,CA`. Example: `US,CA`
- `countries_origin` (string): Comma-separated codes for the merchant's origin country. Example: `<countries_origin>`
- `countries_market` (string): Comma-separated codes for the merchant's market countries. Example: `<countries_market>`
- `currencies` (string): Comma-separated ISO 4217 codes. Example: `<currencies>`
- `feed_languages` (string): Comma-separated ISO 639-1 codes of the product feed. Example: `<feed_languages>`
- `merchant_types` (string): Comma-separated: `standard`, `asn` (Amazon Seller Network). Example: `<merchant_types>`
- `product_count_min` (number): Only merchants with at least this many products. Example: `10`
- `product_count_max` (number): Only merchants with at most this many products. Example: `10`
- `promotion_count_min` (number): Only merchants with at least this many promotions. Example: `10`
- `promotion_count_max` (number): Only merchants with at most this many promotions. Example: `10`
- `has_commissionable_url` (number): `1` keeps only merchants with a stored commissionable URL template. Not a test for linkability: read providers[].template instead. Example: `1`
- `per_page` (number): Merchants per page, 1 to 50. Defaults to 10 here; merchant records are large. Example: `10`
- `page` (number): Page number, starting at 1. Example: `10`
- `fields` (string): Comma-separated field names to keep in each record, for example `id,name,logo_url`. Omit for every field. Example: `id,name,logo_url`

## 4. Request through your preferred interface

### JavaScript

```javascript
const result = await firecrawl.scrape({
  alexandria: {
    provider: "affiliate-com",
    capability: "merchants/search",
    options: {
      search: "walmart",
      per_page: 1,
    },
  },
});
```

### Python

```python
result = firecrawl.scrape_alexandria({
  "provider": "affiliate-com",
  "capability": "merchants/search",
  "options": {
    "search": "walmart",
    "per_page": 1
  }
})
```

### cURL

```sh
curl https://api.firecrawl.dev/v2/scrape \
  -H "Authorization: Bearer $FIRECRAWL_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{
  "alexandria": {
    "provider": "affiliate-com",
    "capability": "merchants/search",
    "options": {
      "search": "walmart",
      "per_page": 1
    }
  }
}'
```

### CLI

```sh
firecrawl scrape 'affiliate-com/merchants/search' \
  --options '{"search":"walmart","per_page":1}'
```


### MCP

Call the FCX MCP retrieve tool with this object:

```json
{
  "provider": "affiliate-com",
  "capability": "merchants/search",
  "options": {
    "search": "walmart",
    "per_page": 1
  }
}
```

Ask for only the returned fields needed by the task.

## 5. Full request shape

```json
{
  "provider": "affiliate-com",
  "capability": "merchants/search",
  "options": {
    "search": "walmart",
    "per_page": 1
  }
}
```

## 6. Response data

The response includes `success`, `provider`, `capability`, `creditsCost` and `data`. This example shows the provider payload in `data`:

```json
{
  "meta": {
    "total": 62,
    "from": 1,
    "to": 1,
    "current_page": 1,
    "last_page": 62,
    "per_page": 1,
    "fields": [
      "id",
      "object_id",
      "slug",
      "origin_id",
      "name",
      "description",
      "domains",
      "home_url",
      "icon_url",
      "logo_url",
      "product_count",
      "cookie_duration",
      "supports_deeplinking",
      "categories",
      "countries",
      "currencies",
      "providers",
      "network",
      "canonical",
      "supports"
    ],
    "trace_id": "01a13a8a-e66c-7236-a837-c2fc4b6d4315"
  },
  "data": [
    {
      "id": 186149,
      "object_id": "nmer_01kya001cpdvkyfv85fsvqtnqe",
      "slug": "nmer_fsvqtnqe",
      "origin_id": null,
      "name": "Farberware - Walmart Seller",
      "description": null,
      "domains": [],
      "home_url": null,
      "icon_url": "https://placehold.co/112x32/EBF4FF/7F9CF56?text=Farberware+-+Walmart+Seller",
      "logo_url": "https://placehold.co/112x32/EBF4FF/7F9CF56?text=Farberware+-+Walmart+Seller",
      "product_count": 402,
      "cookie_duration": null,
      "supports_deeplinking": null,
      "categories": [],
      "countries": [
        "US"
      ],
      "currencies": [],
      "providers": [
        {
          "provider": "network",
          "status": null,
          "status_changed_at": null,
          "url": null,
          "template": null,
          "outclick": null,
          "supports_deeplinking": null,
          "deeplink": null,
          "approval": null
        }
      ],
      "network": {
        "id": 335,
        "slug": "rnet_hm7pn95t",
        "name": "Impact",
        "region": "US",
        "url": "https://www.impact.com",
        "logo_url": "https://img.affiliate.com/logos/groups/10020/64x64.png",
        "icon_url": "https://img.affiliate.com/logos/groups/10020/64x64.png",
        "canonical_id": "net_01kkgbymywvbf5qjdcdwchxdhm",
        "links": {
          "self": "https://api.affiliate.com/v1/networks/rnet_01kkgbyq82ve56ywbmhm7pn95t?extended=1",
          "canonical": "https://api.affiliate.com/v1/networks/net_01kkgbymywvbf5qjdcdwchxdhm?extended=1"
        }
      },
      "canonical": null,
      "supports": {
        "products": true,
        "services": false,
        "promotions": false
      }
    }
  ]
}
```

## API reference-derived contract

The following capability contract is generated from the same normalized Alexandria API reference exposed in the API spec.

### Search merchants

- Capability: `merchants/search`
- Description: Merchants under `data` with `meta` pagination (total, current_page, last_page, per_page). Always the extended merchant object: network, canonical merchant, categories, countries and per-provider link templates.
- Instructions: Find retailers and brands across affiliate networks by name or domain, and see which network carries them, how many products they list, their categories and countries, and link templates to fill with your own publisher ID.
- Cost: 25 credits per call
- Capability file: [Search merchants](https://firecrawl.dev/alexandria/agents/providers/affiliate-com/merchants/search)

Accepted options:
- `search` (string): Case-insensitive fragment of the merchant name or home_url, for example `Walmart` or `walmart.com`. Does not match IDs. Example: `<search>`
- `network_ids` (string): Comma-separated numeric network IDs, as in a merchant's `network.id`. Example: `network.id`
- `origin_ids` (string): Comma-separated merchant IDs as the source network assigns them. Example: `<origin_ids>`
- `canonical_ids` (string): Comma-separated canonical `mer_` merchant IDs. Example: `mer_`
- `category_ids` (string): Comma-separated `cat_` category IDs. Example: `cat_`
- `category_name` (string): Category name filter. Example: `<category_name>`
- `countries` (string): Comma-separated ISO 3166-1 alpha-2 codes the merchant operates in, for example `US,CA`. Example: `US,CA`
- `countries_origin` (string): Comma-separated codes for the merchant's origin country. Example: `<countries_origin>`
- `countries_market` (string): Comma-separated codes for the merchant's market countries. Example: `<countries_market>`
- `currencies` (string): Comma-separated ISO 4217 codes. Example: `<currencies>`
- `feed_languages` (string): Comma-separated ISO 639-1 codes of the product feed. Example: `<feed_languages>`
- `merchant_types` (string): Comma-separated: `standard`, `asn` (Amazon Seller Network). Example: `<merchant_types>`
- `product_count_min` (number): Only merchants with at least this many products. Example: `10`
- `product_count_max` (number): Only merchants with at most this many products. Example: `10`
- `promotion_count_min` (number): Only merchants with at least this many promotions. Example: `10`
- `promotion_count_max` (number): Only merchants with at most this many promotions. Example: `10`
- `has_commissionable_url` (number): `1` keeps only merchants with a stored commissionable URL template. Not a test for linkability: read providers[].template instead. Example: `1`
- `per_page` (number): Merchants per page, 1 to 50. Defaults to 10 here; merchant records are large. Example: `10`
- `page` (number): Page number, starting at 1. Example: `10`
- `fields` (string): Comma-separated field names to keep in each record, for example `id,name,logo_url`. Omit for every field. Example: `id,name,logo_url`

Response schema example:
```json
{
  "meta": {
    "total": 62,
    "from": 1,
    "to": 1,
    "current_page": 1,
    "last_page": 62,
    "per_page": 1,
    "fields": [
      "id",
      "object_id",
      "slug",
      "origin_id",
      "name",
      "description",
      "domains",
      "home_url",
      "icon_url",
      "logo_url",
      "product_count",
      "cookie_duration",
      "supports_deeplinking",
      "categories",
      "countries",
      "currencies",
      "providers",
      "network",
      "canonical",
      "supports"
    ],
    "trace_id": "01a13a8a-e66c-7236-a837-c2fc4b6d4315"
  },
  "data": [
    {
      "id": 186149,
      "object_id": "nmer_01kya001cpdvkyfv85fsvqtnqe",
      "slug": "nmer_fsvqtnqe",
      "origin_id": null,
      "name": "Farberware - Walmart Seller",
      "description": null,
      "domains": [],
      "home_url": null,
      "icon_url": "https://placehold.co/112x32/EBF4FF/7F9CF56?text=Farberware+-+Walmart+Seller",
      "logo_url": "https://placehold.co/112x32/EBF4FF/7F9CF56?text=Farberware+-+Walmart+Seller",
      "product_count": 402,
      "cookie_duration": null,
      "supports_deeplinking": null,
      "categories": [],
      "countries": [
        "US"
      ],
      "currencies": [],
      "providers": [
        {
          "provider": "network",
          "status": null,
          "status_changed_at": null,
          "url": null,
          "template": null,
          "outclick": null,
          "supports_deeplinking": null,
          "deeplink": null,
          "approval": null
        }
      ],
      "network": {
        "id": 335,
        "slug": "rnet_hm7pn95t",
        "name": "Impact",
        "region": "US",
        "url": "https://www.impact.com",
        "logo_url": "https://img.affiliate.com/logos/groups/10020/64x64.png",
        "icon_url": "https://img.affiliate.com/logos/groups/10020/64x64.png",
        "canonical_id": "net_01kkgbymywvbf5qjdcdwchxdhm",
        "links": {
          "self": "https://api.affiliate.com/v1/networks/rnet_01kkgbyq82ve56ywbmhm7pn95t?extended=1",
          "canonical": "https://api.affiliate.com/v1/networks/net_01kkgbymywvbf5qjdcdwchxdhm?extended=1"
        }
      },
      "canonical": null,
      "supports": {
        "products": true,
        "services": false,
        "promotions": false
      }
    }
  ]
}
```

### Merchant details

- Capability: `merchants/get`
- Description: One extended merchant under `data`. The reference page shows a one-element list; the live API answers a single object. A `mer_` canonical ID resolves to the canonical merchant.
- Instructions: Read one merchant's full profile, network, canonical record and link templates by an ID from merchants/search.
- Cost: 25 credits per call
- Capability file: [Merchant details](https://firecrawl.dev/alexandria/agents/providers/affiliate-com/merchants/get)

Accepted options:
- `id` (string, required): Merchant ID from merchants/search: numeric id, `nmer_` object_id, `mer_` canonical ID or slug. Example: `nmer_`

Response schema example:
```json
{
  "data": {
    "id": 102458,
    "object_id": "nmer_01khfn0gjh5z32n9bgav0000sn",
    "slug": "nmer_av0000sn",
    "origin_id": "9383",
    "name": "Walmart",
    "description": "Earn by referring customers to Walmart.com",
    "domains": [
      "https://walmart.com",
      "https://www.walmart.com"
    ],
    "home_url": "https://walmart.com",
    "icon_url": "https://img.affiliate.com/logos/merchants/102458/logo.png",
    "logo_url": "https://img.affiliate.com/logos/merchants/102458/logo.png",
    "product_count": 525667,
    "cookie_duration": null,
    "supports_deeplinking": true,
    "categories": [],
    "countries": [
      "US",
      "US"
    ],
    "currencies": [],
    "providers": [
      {
        "provider": "network",
        "status": null,
        "status_changed_at": null,
        "url": null,
        "template": "https://goto.walmart.com/c/{AFF_ID}/565706/9383?veh=aff&sourceid=imp_000011112222333344&u=https%3A%2F%2Fwww.walmart.com",
        "outclick": null,
        "supports_deeplinking": true,
        "deeplink": null,
        "approval": null
      },
      {
        "provider": "shopnomix",
        "status": null,
        "status_changed_at": null,
        "url": null,
        "template": "https://r.v2i8b.com/api/v1/bid/redirect?url=https%3A%2F%2Fwalmart.com&campaign_id={AFF_ID}&source={SUB_ID}",
        "outclick": null,
        "supports_deeplinking": true,
        "deeplink": {
          "domain": "walmart.com",
          "template": "https://r.v2i8b.com/api/v1/bid/redirect?url={target_url}&campaign_id={AFF_ID}&source={SUB_ID}"
        },
        "approval": null
      }
    ],
    "network": {
      "id": 335,
      "slug": "rnet_hm7pn95t",
      "name": "Impact",
      "region": "US",
      "url": "https://www.impact.com",
      "logo_url": "https://img.affiliate.com/logos/groups/10020/64x64.png",
      "icon_url": "https://img.affiliate.com/logos/groups/10020/64x64.png",
      "canonical_id": "net_01kkgbymywvbf5qjdcdwchxdhm",
      "links": {
        "self": "https://api.affiliate.com/v1/networks/rnet_01kkgbyq82ve56ywbmhm7pn95t?extended=1",
        "canonical": "https://api.affiliate.com/v1/networks/net_01kkgbymywvbf5qjdcdwchxdhm?extended=1"
      }
    },
    "canonical": {
      "id": "mer_01kkk5eqt22cdgre41nfw42p4k",
      "slug": "mer_nfw42p4k",
      "name": "Walmart",
      "site_url": "https://walmart.com",
      "logo_url": null,
      "icon_url": null,
      "domains": {
        "walmart.ca": "mer_01kkjsyz2qqnwc84t9tdhnnbcq",
        "walmart.com": "mer_01kkjt853h7vdvq7bvn73dsvj2"
      },
      "domain_canonical_id": "mer_01kkjt853h7vdvq7bvn73dsvj2",
      "links": {
        "self": "https://api.affiliate.com/v1/merchants/mer_01kkk5eqt22cdgre41nfw42p4k?extended=1",
        "domain_canonical": "https://api.affiliate.com/v1/merchants/mer_01kkjt853h7vdvq7bvn73dsvj2?extended=1"
      }
    },
    "supports": {
      "products": true,
      "services": false,
      "promotions": false
    }
  },
  "meta": {
    "trace_id": "01a13a8b-3124-7362-9f63-77b7f1fa1e17"
  }
}
```

### Product URL to barcode

- Capability: `identifiers/url-to-barcode`
- Description: `data` maps each URL (as upstream normalises it) to an array of barcodes; `[]` means no match. `meta.to_total` counts URLs with at least one barcode.
- Instructions: Turn a retailer product page URL into its UPC/EAN barcodes, to look the same product up elsewhere.
- Cost: 25 credits per call
- Capability file: [Product URL to barcode](https://firecrawl.dev/alexandria/agents/providers/affiliate-com/identifiers/url-to-barcode)

Accepted options:
- `urls` (string[], required): Full product page URLs from retailers such as Amazon, Walmart, Target, Home Depot or Best Buy; 1 to 10 per call. Example: `[]`

Response schema example:
```json
{
  "meta": {
    "from": "url",
    "to": "barcode",
    "from_total": 2,
    "to_total": 1,
    "trace_id": "01a13a8b-962a-724d-9836-e61b1dd38800"
  },
  "data": {
    "https://www.amazon.com/dp/B0C792QRW6": [
      "0887276760049",
      "8806095074122"
    ],
    "https://www.walmart.com/ip/14709523": []
  }
}
```

### ASIN to barcode

- Capability: `identifiers/asin-to-barcode`
- Description: `data` maps each ASIN to an array of barcodes; `[]` means none found.
- Instructions: Find the UPC/EAN barcodes behind Amazon ASINs, to match an Amazon listing to other retailers.
- Cost: 25 credits per call
- Capability file: [ASIN to barcode](https://firecrawl.dev/alexandria/agents/providers/affiliate-com/identifiers/asin-to-barcode)

Accepted options:
- `asins` (string[], required): Amazon ASINs, 1 to 10 per call (upstream limit). Example: `[]`
- `locale` (string): Amazon marketplace, for example `US`, `GB`, `DE`. Defaults to `US`. Example: `US`

Response schema example:
```json
{
  "meta": {
    "from": "asin",
    "to": "barcode",
    "from_total": 2,
    "to_total": 2,
    "locale": "us",
    "config": {
      "asin": {
        "locale": "US"
      }
    },
    "trace_id": "01a13a8b-6afa-7024-9ab1-982cc9c2482e"
  },
  "data": {
    "B0C792QRW6": [
      "0887276760049",
      "8806095074122"
    ],
    "B00AQUO5RI": [
      "0615822003643",
      "0706487014362"
    ]
  }
}
```

### Barcode to ASIN

- Capability: `identifiers/barcode-to-asin`
- Description: `data` maps each matched barcode to an array of `{ asin, locale }`; barcodes without a match are absent.
- Instructions: Find the Amazon ASINs, and the marketplaces they are listed in, for a product barcode.
- Cost: 25 credits per call
- Capability file: [Barcode to ASIN](https://firecrawl.dev/alexandria/agents/providers/affiliate-com/identifiers/barcode-to-asin)

Accepted options:
- `barcodes` (string[], required): Numeric UPC/EAN/GTIN barcodes, 1 to 10 per call. Example: `[]`

Response schema example:
```json
{
  "meta": {
    "from": "barcode",
    "to": "asin",
    "from_total": 2,
    "to_total": 2,
    "trace_id": "01a13a8b-6d3c-7099-a72d-9e12a7f1a2a1"
  },
  "data": {
    "8806095074122": [
      {
        "asin": "B0C792QRW6",
        "locale": "us"
      }
    ],
    "0887276760049": [
      {
        "asin": "B0C792QRW6",
        "locale": "us"
      }
    ]
  }
}
```
