Sales
A primary sale runs through the shared fixed-price minter, a single ownerless contract per chain that serves every project. Only the fixed-price minter ships now; see Minting for the protocol model.
Sales run against a collection. A plain 1/1 has no minter, so to sell a single piece, deploy a one-token
collection (abx deploy-series --count 1) — or, if copies of that piece are fine, an
edition (abx deploy --copies <n|open>), which ships a native sale stack on
its own.
Configure and buy
abx minter configure <token> --price <eth> --allocation <n>: set the price and how many tokens this minter may sell for the project. Use--price-raw <units>for exact base units, and--erc20 0x...to price in an ERC-20 instead of ETH. Only the token owner can configure.abx minter show <token>: the sale terms, whether the minter is assigned on the token, the payee, the pause state, and supply.abx minter buy <token> [--to 0x...]: buy one token. An ERC-20 sale needs a prior approval to the minter.
Wiring a collection for sale
A sale needs two separate grants, both from the project owner, plus a payee. Run them in this order:
abx minter configure <token> ...: set the sale terms on the minter.abx set-minter <token> --minter <address>: authorize that minter on the token.abx set-primary-payee <token> --payee 0x...: set the payout address. A sale reverts without one.abx unpause <token>: open minting. Run this last.
"Configured" on the minter and "assigned" on the token are different grants; a sale needs both. Use
abx set-max-invocations <token> --max <n> to lower the supply cap, which only decreases, and
abx pause <token> to return to owner-only minting.
Editions: per-id sales
An edition (--copies)
sells through a sibling contract, AbxFixedPriceMinter1155, priced per id rather than per
collection:
abx minter configure <token> --token-id <n> --price <eth> --allocation <n>: price that one id.abx minter show <token> --token-id <n>: that id's sale terms and readiness.abx minter buy <token> --token-id <n> --quantity <n>: buyncopies in one purchase, payingprice × quantity.
--token-id is required on every minter subcommand against an edition, and refused against a plain
collection. Wiring is otherwise identical: set-minter, set-primary-payee, and unpause stay
contract-wide — one minter, one payee, one pause gate for the whole id space. OneOfOneEdition (a
single artwork deployed with --copies, no folder) needs no Series wrapper at all: it implements the
mint primitive directly, at id 0, so abx deploy --copies <n|open> --no-mint already has a full sale
stack once wired up.
Mint page
abx mint-page <token> scaffolds a self-contained mint site for the fixed-price minter, ready to deploy
to a static host. It reads the sale state and images directly from the chain. Sales are in ETH in this
version.
Works against a Series, or an edition (OneOfOneEdition/EditionImage/EditionCode) — on an edition
the page is a token-id-and-quantity purchase card rather than a gallery. Pointed at a plain 1/1,
mint-page refuses up front rather than scaffolding a page that would sit on "Loading…" forever;
deploy a one-token collection instead (abx deploy-series --dir <folder> --count 1), or an edition of
one artwork (abx deploy --copies <n|open>).