> ## Documentation Index
> Fetch the complete documentation index at: https://developer.zamp.com/llms.txt
> Use this file to discover all available pages before exploring further.

# Marketplaces, Entities, and Transaction Purpose

> Understand how to manage transactions sourced from marketplaces or exempt customers.

# Overview

Sales tax treatment differs depending on where a transaction comes from, and the type of customer who placed an order.

# Key Concepts

## Marketplace Sales

A marketplace facilitator, such as Amazon, Walmart, or Etsy, is responsible for collecting and remitting sales tax for transactions on their platforms.

When passing a transaction to Zamp which originated from a marketplace platform, you will need to classify it using the `marketplace` property on the transaction object.

### Supported Marketplaces

`ALIBABA`, `AMAZON`, `APPLE`, `BEST_BUY`, `CLICKBANK`, `COSTCO`, `EBAY`, `ETSY`, `EVENTBRITE`, `FLIP`, `GOLDBELLY`, `GOOGLE`, `GUNBROKER`, `INVALUABLE`, `LOWES`, `MACYS`, `META`, `MIRAKL`, `NEWEGG`, `NINTENDO`, `OVERSTOCK`, `POSHMARK`, `POWER_SALES`, `REVERB`, `SHOP`, `SONY`, `STOCKX`, `TARGET_PLUS`, `TIKTOK`, `UNKNOWN`, `WALMART`, `WAYFAIR`, `WHATNOT`

### Expected Integration Behavior

For any transaction sourced from a marketplace facilitator, your `taxCollected`  should be `0` when posting the transaction via `POST /transactions` . Zamp will return `0`  as a `taxDue` .

> [!WARNING]
>
> If you pass a `marketplace` that Zamp does not support, we will reject it with a `400` . If you sell through a facilitator that is not listed, contact Zamp and we'll add it.

## Entity

Customers making purchases from a business can be exempt from sales tax for a variety of reasons. Zamp supports different **entity exemption codes** that can be applied to any given transaction.

### Supported Entity Exemptions

| Entity Code | Customer Type |
| - | - |
| `FEDERAL_GOV` | The US Federal Government |
| `STATE_GOV` | Any State Government |
| `EDU_PUBLIC` | A Public School or University |
| `EDU_PRIVATE` | A Private School or University |
| `NON_PROFIT` | A Qualified Non-Profit |

### Entities with Planned Support

The below are entities that Zamp will build support for in the future.

`MANUFACTURER`, `SNAP`, `INDUSTRIAL_PROCESSING`, `LESSOR`, `AGRICULTURAL`, `MEDICAL`, `RELIGIOUS`, `DATA_CENTER`, `DIRECT_PAY` , `TRIBAL`, `LOCAL_GOV`

> [card] Resale Transactions
>
> Keep in mind that an `entity` of `WHOLESALER` does not exempt a transaction. You will need to apply a `purpose` of `RESALE`. See below for more on Zamp's purpose codes.

### Canadian Exemptions

For sales to Canadian government, you can use the `CAN_GOV_*` codes on our [Canadian Transactions](https://developer.zamp.com/guides/canadian-transactions.md) page.

## Purpose

If a customer is making a transaction for a specific reason, you can classify it with a Zamp `purpose` code.

### Available Purpose Codes

`RESALE`, `BUSINESS_USE`, `PERSONAL_USE`, `RENTAL_USE`

> [!NOTE]
>
> `BUSINESS_USE`, `PERSONAL_USE`, `RENTAL_USE` don't impact any transaction logic at this time.

### Expected Integration Behavior

The most common scenario for using the purpose code is to mark a transaction for resale. If a buyer purchases the entire order to resell, you would tag it as `RESALE`.

A purpose code should be assignable at a transaction-level, but `RESALE` can also be an option for the customer in your UI.

> [card] Transactions Partially for Resale
>
> If only part of a transaction is for resale, leave `purpose` as `null` and use the item-specific resale product tax code (`Z-RESALE` )

## Examples

```json Resale Transaction highlight={9} theme={null}
{
    "id": "invoice-001",
    "total": 100,
    "currency": "USD",
    "shipping": 0,
    "handling": 0,
    "marketplace": null,
    "entity": null,
    "purpose": "RESALE", // This applies the resale treatment from Zamp.
    "taxCollected": 0,
    "lineItems": [
        {
            "id": "item001",
            "amount": 100,
            "discount": 0,
            "quantity": 1,
            "productName": "Taxable Item",
            "productTaxCode": "Z-TPP000"
        }
    ],
    "transactedAt": "2026-11-02T08:00:00-00:00",
    "shipToAddress": {
        "zip": "60603",
        "city": "Chicago",
        "line1": "1 S Wabash Ave",
        "state": "IL",
        "country": "US"
    },
    "shipFromAddress": {
        "zip": "82801",
        "city": "Sheridan",
        "line1": "30 N Gould St",
        "state": "WY",
        "country": "US"
    }
}
```

```json Marketplace Sale highlight={7} theme={null}
{
    "id": "invoice-001",
    "total": 100,
    "currency": "USD",
    "shipping": 0,
    "handling": 0,
    "marketplace": "AMAZON", // The marketplace where the order was sourced from
    "entity": null,
    "purpose": null, 
    "taxCollected": 0,
    "lineItems": [
        {
            "id": "item001",
            "amount": 100,
            "discount": 0,
            "quantity": 1,
            "productName": "Taxable Item",
            "productTaxCode": "Z-TPP000"
        }
    ],
    "transactedAt": "2026-11-02T08:00:00-00:00",
    "shipToAddress": {
        "zip": "60603",
        "city": "Chicago",
        "line1": "1 S Wabash Ave",
        "state": "IL",
        "country": "US"
    },
    "shipFromAddress": {
        "zip": "82801",
        "city": "Sheridan",
        "line1": "30 N Gould St",
        "state": "WY",
        "country": "US"
    }
}
```

```json Sale to a Public School highlight={8} theme={null}
{
    "id": "invoice-001",
    "total": 100,
    "currency": "USD",
    "shipping": 0,
    "handling": 0,
    "marketplace": null,
    "entity": "EDU_PUBLIC", // The Zamp Exemption Code for Public Schools
    "purpose": null,
    "taxCollected": 0,
    "lineItems": [
        {
            "id": "item001",
            "amount": 100,
            "discount": 0,
            "quantity": 1,
            "productName": "Taxable Item",
            "productTaxCode": "Z-TPP000"
        }
    ],
    "transactedAt": "2026-11-02T08:00:00-00:00",
    "shipToAddress": {
        "zip": "60603",
        "city": "Chicago",
        "line1": "1 S Wabash Ave",
        "state": "IL",
        "country": "US"
    },
    "shipFromAddress": {
        "zip": "82801",
        "city": "Sheridan",
        "line1": "30 N Gould St",
        "state": "WY",
        "country": "US"
    }
}
```


This documentation is built and hosted on [Mintlify](https://mintlify.com), a developer documentation platform.