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

> ## Agent Instructions
> Ready for Commerce is an ecosystem that currently contains two products, PIM and Repricer, standing on one shared foundation: one identity, one organization, one team, one bill. Do not call it a platform with features, and never hint at an unreleased product.
> PIM connects to Shopify, Amazon, Square, Google Merchant Center and BigCommerce. Repricer connects to Amazon, Walmart, Shopify, BigCommerce, eBay and Square. The two products do not share one list, and each integration is authorized separately inside each product. The roster grows on purpose, so describe what the product does and let a table carry which integrations do it today, instead of counting them or writing that only one does something.
> Integration is the word this product uses, and it is the default in the documentation: the connection, the account, the Integrations screen, the per-account settings and the sync state are all integrations. Channel is reserved for the narrow sense of a destination where a listing lives, as in a product being live on a channel or archived on the channel.
> Newegg is not a supported channel. Do not describe it.
> On Amazon, PIM manages the offer only: price, availability and condition. It does not publish listing content such as titles, descriptions, images or specifications.
> Sign-in is passwordless: a single-use code emailed to the user, or Google. There are no passwords anywhere, so never describe a password, a sign-up with a password, or an email confirmation link.
> There is no public API for customers and no customer-facing webhooks. There is no organization-wide activity feed and no audit export, but the PIM does keep version history on products, brands, categories, tags and specifications, with who changed what and a restore, so never write that changes are not recorded or that an edit cannot be undone. Do not describe capabilities that are not documented here.
> Never write that the products have no AI, and never write that anything is AI-powered. Both are wrong. The PIM's image Optimizer runs AI-backed transforms the seller starts on purpose: Upscale, Remove background, and the region selection behind Refine. The Repricer reads competitor prices off web pages on the server. No control, badge or tooltip in either product names AI, and the seller never writes a prompt, so describe what the buttons do in the app's own words instead of reaching for the word.
> A PIM product, brand, category or variant can be switched off per connected integration account. Hover the channel badge and the switch is beside the account name in the card that opens. It carries no visible caption, so never call it the Sync switch: Sync is only its accessible name. On a variant-grained provider, Amazon today, the switch moves into the variant editor. On a product it asks whether to delete it from the channel, archive it there, or leave it live. Disabling stops publishing, not reading. There is still no per-field sync toggle.
> The PIM's image Optimizer replaced a feature called Squarify, which no longer exists. It resizes to an aspect ratio or to exact dimensions, removes backgrounds, upscales, trims the transparent margin around a cutout and re-centers it, pads, fills and re-encodes, and it always publishes a new asset instead of changing the original. Nothing crops into the picture: the subject is always contained whole.
> The PIM has no repricing engine and never reacts to a competitor's price. It does build the price it publishes to each integration account from the seller's own fields, configured in that account's settings, so do not write that the PIM has no pricing rules.
> Neither product has an in-app notification center, bell or inbox. Notifications are delivered by email only.
> Billing is per organization and per product, and only the organization owner can see or change it. Team members are free and uncounted, so never describe seats or per-user pricing.
> The seller never picks a plan. Each product has twelve price tiers assigned automatically from usage: the PIM from catalog product count, which includes drafts and archived products, and the Repricer from trailing 30-day sales. Nothing is feature-gated by plan and exceeding a tier never blocks work, so never write that a feature requires a higher plan.
> A subscription that is past due or paused makes the product read-only, which stops repricing and blocks edits without deleting data. Only a canceled subscription locks the seller out. Nothing is ever charged without a payment method on file.
> Pages containing the text 'This page has not been written yet', or its Spanish equivalent 'Esta página todavía no está escrita', are placeholders. Do not treat their headings as documented behavior.

# Core concepts

> A short dictionary for the words that come up everywhere else, like the difference between your account and your organization, or a listing and a product.

Ready for Commerce is an ecosystem, and it currently has two products. The PIM is where you keep information about the things you sell. The Repricer sets the price you charge in each place you sell them. The same people use both, inside the same business, over the same connected accounts, so the two share most of their vocabulary.

Most of that vocabulary is plain English. A handful of words mean something narrower here than they do in conversation. Those are the ones that cost you an afternoon later. Your account is not your organization, a listing is not a product, and cost is four numbers instead of one.

This page defines each word once, grouped by the screen you meet it on. Nothing here is a task, and where a word has a page of its own the definition points you at it.

The two typefaces below mean different things. A word in `this typeface` is a label you will see on screen, spelled the way the app spells it. A word in **bold** is the idea behind the label, which the app may never print anywhere.

## The five words to learn first

| Word | What it is |
| --- | --- |
| **Organization** | The business. It owns everything you create, and you do not |
| **Integration** | What connects one product to one place you sell |
| **Catalog** | Everything the PIM knows about what you sell. You edit here, and it goes out from here |
| **Variant** | The one specific thing a shopper buys. Money and stock are stored on it |
| **Listing** | Your product as it stands in one place, at one price. This is what the Repricer works on |

Those five are enough to follow most of what you will read. Everything below is the rest of the vocabulary, grouped by where you meet it, so you can read the one section you need and skip the others.

## Account, organization and team

An account is a person and an organization is a business. Mixing up the two is the most common setup mistake there is. It leaves you with a second, empty organization you cannot merge into the first.

### The words for who you are

| Term | What it means |
| --- | --- |
| **Account** | You. One person, one email address, your name, your language, your timezone and your notification settings. There is no password, and [signing in and security](/signing-in) explains what you use instead |
| **Organization** | The business. It owns the catalog, the connections, the listings, the strategies, the team and the subscription, and [organizations](/organizations) goes through all of it |
| **Team** | Everyone with a membership in that organization |
| **Role** | What one person is allowed to do. You have two of them at once, and the next section explains why |
| **Plan** | What the organization pays for one product. No one picks it, because each product calculates it from how much you use, which [plans and billing](/billing) goes through tier by tier |

You can be in several organizations and have a different role in each. Nothing is copied between them, so a product you create in one does not appear in the other, and neither does a connected account.

<Info>
  Signing up on your own instead of accepting an invitation creates a second, empty organization. It does not add you to the first one, and there is no way to merge the two later.
</Info>

### Why you have two roles

Your role in the organization and your role inside a product are set separately, from two different lists of names. Both are on the `Team` page of your account at `account.readyforcommerce.com`.

The organization list is `Owner`, `Admin` and `Member`, and it decides who can invite people and who can change the subscription. Each product has a list of its own, and the two do not use the same one. The PIM has `Admin`, `Manager` and `Editor`. The Repricer has those three plus `Analyst`. So you can be a `Member` of the organization and an `Admin` in the PIM at the same time, and neither one tells you anything about the other. Every level is written out in [team, roles and permissions](/team).

## Integrations, accounts and channels

Connecting a product to somewhere you sell takes two steps, and the words for them are different. First you authorize the connection. Then you add the store or seller account you actually have there. The app calls that second thing an account, which is the same word it uses for the person signing in, so the table below keeps them apart.

### The words for a connection

| Term | What it means |
| --- | --- |
| **Integration** | The authorized connection between one product and one place you sell. `Integrations` in the sidebar is where you make one |
| **Account** | One specific store or seller account on that integration: one Amazon seller account, one Shopify store. An integration can have several of them, and the screen groups them under `Accounts` |
| **Channel** | The place a listing appears, seen from a shopper's side. You publish to a channel, and you configure an integration |
| **Region** | One storefront inside a connected account, in the Repricer only. One seller account can cover several country sites, and each one of them is a region. It is the `Region` column on your listings table, and a strategy applies to one region at a time |

You do not create a region. Every connected account reports the ones it sells on, and you switch off the ones you do not want.

Running the same seller account through both products means authorizing it twice, once in each. The PIM and the Repricer are separate applications with credentials of their own, so connecting Amazon in one does not connect it in the other. You pair the two accounts later, and [the Repricer connection](/pim/integrations/repricer) covers what happens when you do.

### The kinds of place you can connect

Open `Integrations` in the sidebar and what you can connect is split into sections. Each section heading is a kind, and the kind tells you what sort of place you get under it.

| Kind | What it is |
| --- | --- |
| `Online Stores` | Your own storefront, under your own name |
| `Marketplaces` | A shared site where you sell next to other sellers offering the same item |
| `POS Systems` | A physical counter, where a sale is rung up in person |
| `Shopping Feeds` | A place your products are listed for shoppers to find, with the sale happening elsewhere |
| `Tools` | The other Ready for Commerce product, connected the same way as a place you sell |

Which integrations you find under each heading depends on which product you are in, because the two do not share a list. [Integrations](/integrations/index) has the current one for each.

### Sync, push and pull

Data moves in both directions once an account is connected, and three words describe it.

| Term | What it means |
| --- | --- |
| **Push** | Your data going out to a connected account. `Last push` on the integration tells you when that last happened |
| **Pull** | The account's answer coming back in. `Last pull` is its counterpart, and it is how you find out what the channel did with what you sent |
| `Sync` | A switch beside each account name, on the record itself. Turning it off stops publishing that one record to that one account |

`Sync` is how you stop selling something in one place without stopping it everywhere. From `Catalog` in the sidebar, open a product, a brand or a category. Hover the badge for the account at the top of the dialog that opens over the page, and the switch is beside the account name.

Turning it off on a product asks what should happen to what is already published there. Which answers you get depends on the channel, and [publishing](/pim/integrations/push) goes through them. A brand or a category gets one answer, because the record the PIM made over there is deleted. Leaving a product live means the listing goes on selling on the channel, with the PIM no longer touching it. The switch works one record at a time and one account at a time, and there is no way to keep a single field back.

<Info>
  Publishing to Amazon sends your offer: condition, price and availability. The product text there is shared by everyone selling that item, so the PIM never writes it in either direction.
</Info>

## The catalog

The catalog is the PIM's description of everything you sell. It is the version you edit, and every connected account is published from it, so a change you make once goes to everywhere you have `Sync` turned on.

### What a catalog is made of

| Term | What it means |
| --- | --- |
| **Product** | One thing you sell. The title, the description, the specifications and the images are on it |
| **Option** | A way a product varies: size, color, material. Options and their values are what generate variants |
| **Variant** | One specific combination of option values. A product with no options has no variants |
| **Specification** | An attribute you describe products with, such as material or voltage, together with the value you gave it. The value goes on the product and never on a variant |
| **Specification definition** | One such attribute, named and set up once, along with the list of values you allow for it |
| **Specification group** | A set of definitions kept together. Give the group no categories and every product you have gets its definitions, and give it categories and only the products in them do |
| **Category** | A grouping that nests inside another one |
| **Brand** | Who makes the product |
| **Tag** | A free label, for filtering and for picking things out in bulk |
| **Asset** | An image or a file. One library for the whole organization, attached wherever you need it |

Two of those decide what the others do. A product's [categories](/pim/catalog/categories) decide which specification groups it gets, and giving a product options is what splits it into [variants](/pim/catalog/variants). Everything else attaches wherever you put it.

### Where a field goes once a product has variants

The product has what is true of the thing itself: its title, its description, its images, its brand and its categories. A variant has what is true of one particular version of it: its own price, its own barcode, its own stock number, its own dimensions.

So the moment you give a product options, those fields move down to the variants and the product is left with only what they share. On a product with no options you never see the move happen, because the product editor shows the fields and those fields are on its one variant.

### Status

Every product has one status, and it decides whether the product goes to a channel at all. You set it in the product editor: go to `Catalog` in the sidebar, open `Products` and click a product.

| `Status` | What it means |
| --- | --- |
| `Draft` | Still being prepared, and not live anywhere |
| `Active` | Ready to sell, and published wherever you have `Sync` turned on |
| `Unlisted` | For sale, and hidden from search. A shopper gets to it only from a direct link |
| `Archived` | Kept in the PIM and hidden from your normal views |

<AccordionGroup>
  <Accordion title="What has to be unique, and how widely">
    A slug is the web-safe version of a name, lowercased with hyphens for the spaces. A brand is unique across your whole organization on both its name and its slug, and so is a tag on its name. A specification group is unique on its name across the organization, a definition on its name inside its group, and a value on its name inside its definition.

    A category is the exception. Its name and its slug are unique among the categories sharing the same parent, not across the whole catalog. So you can have `Accessories` under `Phones` and another `Accessories` under `Laptops`.
  </Accordion>

  <Accordion title="Why a product with no options still behaves as though it had a variant">
    In your products table, a product without options shows `0` in the `Total Variants` column and `No` in `Has Variants`, so as far as the app is concerned it has none. The price, the barcode and the stock number you typed are still on a variant underneath it.

    You never create that variant and you never see it named. The only place it shows through is an export, where such a product comes out as one row with everything on it instead of two.
  </Accordion>
</AccordionGroup>

## Identifiers, and what a SKU does

An identifier is a code that lets something outside the PIM recognize what you sell. A scanner reads a barcode, Amazon matches an ASIN, and every integration you connect finds your variant by its SKU.

You add them in the `Identifiers` section of the product editor. From `Catalog`, open `Products` and click a product: the section is one list, and each row in it opens with a `Type` dropdown giving you six choices.

### The six types

| `Type` | What it covers | Where the value has to be unique |
| --- | --- | --- |
| `SKU` | Your own code, one per variant | Across your organization |
| `Barcode` | UPC-A, EAN-8, EAN-13 and GTIN-14 all go under this one | Across your organization |
| `Part Number` | The manufacturer part number, written MPN elsewhere | Within each brand |
| `ISBN` | For books | Across your organization |
| `ASIN` | Amazon's own code. The row also asks you for a `Marketplace` | One per marketplace on a variant |
| `Custom` | Anything else. The row also asks you for a `Custom Label` | One per label on a variant |

**There is no separate UPC, EAN or MPN type.** A barcode of any of those shapes goes under `Barcode`, and an MPN goes under `Part Number`. Searching the dropdown for either one finds nothing, and [identifiers](/pim/catalog/identifiers) has the length and check-digit rules each type accepts.

### What the SKU does that the others do not

The SKU decides more than the rest. It is how the PIM and the Repricer recognize the same thing once you have connected both, and it is the only field they match on. Give one variant a different SKU in each product and neither one will find the other.

Where a match is found, the Repricer marks it. Open `Listings` in the Repricer sidebar and click one, then go to its `Pricing` tab. A `Managed by PIM` badge is beside `Unit Cost` under `Cost of Goods` and beside `MAP` and `MSRP` under `Manufacturer Pricing`. Those three values become read-only there, and you change them in the PIM instead. [The Repricer connection](/pim/integrations/repricer) covers what else crosses.

## Prices, costs and stock

Money in the PIM is set on the variant and never on the product, because two versions of the same thing can sell at different prices. A product with no options has one variant, so its fields appear in the product editor and you never have to think about the difference. Give that product options and the `Pricing` section moves: the product loses it, and each variant gets one of its own.

To get to them, go to `Catalog` in the sidebar, open `Products` and click a product: the `Pricing` section is in the editor that opens. `Inventory` is just under it.

### The five money fields

| Field | What it means |
| --- | --- |
| `Price` | What the shopper pays |
| `Compare Price` | The higher reference price, shown struck through beside the price |
| `Cost` | What one unit costs you. It is really four numbers, which the next section goes through |
| `MAP` | Minimum Advertised Price. The lowest amount a brand lets you advertise |
| `MSRP` | Manufacturer's Suggested Retail Price |

All five are in one currency, and the `Currency` on the same variant tells you which one. [Pricing](/pim/catalog/pricing) covers selling in more than one.

### Why cost is four numbers

Your units can come from more than one place, and they do not cost you the same from each. So the PIM stores a cost for each of three sources and calculates a fourth from those.

| Cost | Where it comes from | Can you type it |
| --- | --- | --- |
| `On-hand Cost` | What you pay when you restock | Yes |
| `Supplier Cost` | What your supplier currently quotes you. The supplier feed that brings the quote in owns this one | No |
| `Fallback Cost` | A last-resort amount, used when `Fallback Stock` is the only stock you have. The next section explains `Fallback Stock` | Yes |
| `Effective Cost` | Calculated from the other three and from your stock | No |

### Why stock is four numbers

Stock splits the same three ways, plus a fourth the PIM calculates. Only one of the three is yours to type, and that catches people. The PIM counts your own units for you, so `On-hand Stock` is a read-out where `On-hand Cost` was a box you fill in.

| Stock | Where it comes from | Can you type it |
| --- | --- | --- |
| `On-hand Stock` | Your own units, added up from the locations on your connected accounts | No |
| `Supplier Stock` | What your supplier has now, delivered by the feed | No |
| `Fallback Stock` | The number you keep yourself for whatever the other two do not cover | Yes |
| `Effective Stock` | Calculated from the other three. This is the quantity that leaves the PIM | No |

**`Fallback Stock` is the only one of the four you type.** The other two fill themselves back in on their own. The fourth is calculated, so most of `Inventory` is a read-out and not a form. None of the four appears until you turn on `Track Inventory`, the switch at the top of the `Inventory` section, and [inventory](/pim/catalog/inventory) goes through all of them.

### How the last two are calculated

| Field | The rule |
| --- | --- |
| `Effective Cost` | The cost of the cheapest source that has stock right now. With nothing in stock, your `On-hand Cost` |
| `Effective Stock` | `On-hand Stock` plus `Supplier Stock` when that sum is above zero, and `Fallback Stock` otherwise |

Reading those two together tells you something neither table above says on its own. The PIM picks `Effective Cost` by looking at your stock, so your cost can move when nothing about your costs has changed.

<Warning>
  `Effective Cost` is the number the Repricer gets, and it follows whichever source has stock. A unit arriving or leaving can change it with no price edited and no cost edited.
</Warning>

## Listings, strategies and price limits

The Repricer does not work on your products. It works on listings, and a listing is one product offered in one place at one price. The same product on Amazon and on Walmart is two listings, each with its own price and its own competition.

You never create one. Every listing comes from a connected account, which is why `Listings` in the Repricer sidebar is empty until you connect one.

### What a listing has on it

| Term | What it means |
| --- | --- |
| **Repricing** | Recalculating a listing's price and publishing the result. It happens on its own when something changes, such as a competitor's price or your own cost |
| `Strategy` | The rules that decide what price a listing takes. Every listing has exactly one |
| `Target price` | What the price is measured against, such as the `Buy Box Price` or the lowest competing offer |
| `Pricing mode` | How the price reacts to that target: beat it, match it, or stay above it |
| `Buy Box` | The featured offer on Amazon and on Walmart, the one a shopper gets by adding the item to the cart without choosing a seller |
| `Repricing Status` | Whether the rules are running on this listing, as `Working`, `Manual`, `Paused` or `Not working` |

You choose a `Strategy` per listing. You build one from `Strategies` in the Repricer sidebar, where `Create strategy` opens a wizard. Where you sell next to other sellers, `Target price` and `Pricing mode` are the two headings on that wizard's `Pricing` step. On your own storefront the same step asks for a `Pricing method` instead, because there is no shared offer to measure against.

### Where the price is allowed to go

A strategy can only move a price between two numbers, and both are on the listing itself. From `Listings` in the Repricer sidebar, click a listing, go to its `Pricing` tab, and find the `Price Limits` section.

| Field | What it is |
| --- | --- |
| `Minimum Price` | The lowest price the Repricer will publish. It is the `Min` column on the listings table |
| `Maximum Price` | The highest price it will publish. It is the `Max` column |

`Minimum Price` is either a number you type or one the strategy calculates for you, and the `Price Floor` step of the wizard is where you choose which. A calculated floor is built from your cost, the profit or the margin you want to keep, and the fees the channel charges. Fees are estimated on Amazon, Walmart and eBay. Everywhere else the floor is built without them, so it is only as good as the cost behind it.

### The rest of a strategy

| Term | What it means |
| --- | --- |
| `Safety Nets` | The protections around the main rule: a minimum profit per sale, what to do about `MAP` and `MSRP`, and a `Fallback behavior` for when there is nothing to price against |
| `Rounding` | The price endings applied to the result, such as `.99` |
| **Competitor pages** | Pages you add yourself, on the listing's `Competitors` tab |
| `Pricing Activity` | The record of every pricing decision, including every decision to leave a price alone. It has a page of its own in the sidebar |

Where you sell next to other sellers offering the same item, that place reports the competing offers and you add nothing. On your own storefront there is no shared item and no list of rival offers, so the `Competitors` tab is the only place a competitor price can come from.

## Moving data in and out

Four words cover everything that moves, and swapping them by accident is easy. The first three are tabs under `Uploads` in the PIM sidebar.

| Term | What it means |
| --- | --- |
| `Imports` | A file you upload once and map to catalog fields |
| `Exports` | A file the PIM builds from what you pick and filter |
| `Data Sources` | A supplier feed that runs on its own, usually on a schedule you set |
| **Publishing** | Your catalog going out to a connected account, which is a push and not a file |

**An import and a data source differ in one way that costs data.** When a cell in your file is empty, an import leaves that field alone. A data source clears it. A supplier feed is meant to be the current truth about the fields it owns, so a blank in it means your supplier no longer has a value.

[Imports](/pim/uploads/imports), [exports](/pim/uploads/exports) and [data sources](/pim/uploads/data-sources) each have a page of their own.

## Where to go next

<Columns cols={2}>
  <Card title="Which product do you need?" icon="signpost" href="/choose-your-product">
    Decided from the problem you actually have.
  </Card>

  <Card title="Create your account" icon="user-plus" href="/quickstart">
    Sign in for the first time and name your organization.
  </Card>

  <Card title="Connect your first store" icon="plug" href="/connect-a-store">
    The step almost everything else depends on.
  </Card>

  <Card title="What is Ready for Commerce?" icon="book-open" href="/index">
    How the ecosystem fits together.
  </Card>
</Columns>
