Pricing and Payments
This page answers what you pay, how the price is calculated and how money moves through the payment contract.
How Payment Works
Spectra charges in US dollars and settles in stablecoins. All amounts are handled as integers with 6 decimal places, so 1000000 on the wire is $1.00 and no rounding drift can creep in.
Payments go through SpectraPaymentsV3, a deposit-style contract. The flow is:
- You deposit an allowlisted stablecoin into the contract. USDC and USDT are accepted, both 6-decimal tokens.
- Spectra verifies the deposit on-chain and credits your balance.
- Paid actions debit that balance.
The minimum deposit is $1.00.
Deposits are spendable credit, not a wallet
Credit added by depositing can be spent on Spectra and cannot be withdrawn. Deposit what you intend to spend.
There is also a direct route for listings: pay on-chain and submit the transaction hash with your project, and Spectra creates the project once that payment is verified. See Submitting a Project.
Whichever route you take, the server binds the payment to a quote it computed itself. The project id, contract count and amount in the on-chain event have to match the quote for the authenticated account that started the flow. A mismatched or zero-amount payment grants nothing.
The Fee Schedule
| What you are paying for | Price |
|---|---|
| Listing a project | $3.00 base, plus $5.00 per contract |
| Editing a project | $2.00 base, plus $5.00 per newly added contract |
| Pro subscription | $20.00 per 30-day period |
| Featured bid | The amount you choose, $10.00 minimum. The bid is charged at face value with no fee added on top |
Worked examples:
- A listing with 1 contract costs
$3 + $5 = $8.00. - A listing with 3 contracts costs
$3 + (3 x $5) = $18.00. - An edit that adds no new contracts costs
$2.00. - An edit that adds 2 new contracts costs
$2 + (2 x $5) = $12.00.
The per-contract component is why the contracts step in the wizard changes your total.
How Quoting Works
Before you are charged, the app asks the server to price the purchase. A quote is a pure calculation: it reads nothing you can tamper with, writes nothing and charges nothing. It returns:
| Field | Meaning |
|---|---|
| Line items | The base fee and the per-contract fee, itemised |
| Gross | The full price before any reduction |
| Discount | Reduction from a valid promo code |
| Referral credit | Reduction from referral credit you have earned |
| Net | What you will actually be charged |
| Balance | Your current spendable balance |
| Shortfall | How much more you need to deposit, 0 when you can already afford it |
| Minimum deposit | The smallest top-up the contract accepts |
Rules worth knowing:
- Promo codes apply to listings, edits and Pro. They do not apply to featured bids.
- Referral credit applies to Pro only.
- A promo code and referral credit cannot be combined on the same purchase. By default, referral credit is applied when there is no promo code, and skipped when there is one.
- Prices are enforced server-side. The displayed total is re-derived from the server quote at charge time, so a stale price in your browser cannot undercharge or overcharge you.
If You Do Not Have Enough Balance
The checkout tells you the shortfall and offers a deposit in the same panel. You deposit, the deposit is verified, your balance updates and the charge goes through. If a deposit does not end up credited, the app surfaces the outcome rather than silently assuming success, and the backend balance is always the authoritative figure.
Currency and Chain
Fees are denominated in USD and paid in stablecoins. The deployed payment contract address is configured per environment, so check the address shown in the app at the moment of payment rather than reusing one from an older session or a third-party page.