ProtocolCredits

Credit Purchase

How credit purchases work in the Carrot Network — atomic registry transactions, certificate allocation, and integrated retirement.

Last updated on

The credit buyer

The Carrot Network is a demand-side market — most of the value comes from credit buyers. Credit buyers are typically organizations — producers, manufacturers, importers, distributors, and their representatives (such as Producer Responsibility Organizations) — but individuals may also purchase credits to offset waste and carbon footprints.

Credit buyers purchase Tokenized Recycling Credits (TRC) and Tokenized Carbon Credits (TCC) to:

  • Meet ESG commitments — Demonstrate verifiable environmental action to employees, customers, shareholders, and regulators.
  • Comply with EPR mandates — Extended Producer Responsibility laws increasingly require producers to fund the recovery and recycling of their products and packaging.
  • Offset carbon footprints — Retire carbon credits to permanently claim the greenhouse gas emission reductions achieved through recycling.

The purchase flow

This purchase flow groups the buyer, the registry's automated settlement layer, and its public records into a six-step transaction: order signed, USDC transferred, certificate updated, credits settled, receipt recorded, and rewards recorded across all three tiers. The atomic transaction annotation explains the takeaway: the purchase either completes every state change together or reverts without partial settlement.

The six-step atomic purchase flow: from the signed purchase order through automated settlement to a permanent public receipt.

Credits are purchased only through Carrot interfaces — buyers do not purchase directly on the registry. When a buyer uses a Carrot interface (e.g. the Carrot Store for individuals, or Carrot-provided interfaces for organizations), the platform executes the following atomic settlement flow:

StepActionDescription
1Purchase order signedThe purchase order is signed with an EIP-712 typed data signature by a key operated by Carrot and registered on the CreditPurchaseManager contract as an authorized signer. The buyer authorizes the purchase through the Carrot interface and the payment provider — the buyer does not sign the on-chain order.
2Payment transferredUSDC is transferred from the payer to the RewardsVault, where it becomes available for rewards distribution to participants.
3Certificate updatedThe purchased amounts are recorded on the backing certificates, reducing the available inventory for each allocated certificate.
4Credits settledCredits (e.g. C-BIOW, C-CARB.CH4) are burned directly from the Vault for the retired portion of the order — they never pass through the buyer's account. Any non-retired remainder is transferred from the Vault to the buyer's account.
5Receipt recordedA Credit Purchase Receipt is recorded as tamper-evident, public proof of the purchase transaction.
6Rewards recordedA Merkle root is committed on-chain for the rewards distribution, enabling participants to claim their share.

Delivery depends on verified inventory. If matching certificates are not yet available for the full order, the purchase may be accepted and held for deferred delivery — the platform re-checks automatically and runs the settlement transaction once inventory exists. An order is delivered in full; a purchase is not partially filled.

Once settled, every purchase and its receipts are publicly verifiable through the Carrot Registry or any blockchain block explorer (e.g. PolygonScan).

Certificate allocation

Every credit is backed by a certificate — either a RecycledID (for recycling credits) or a GasID (for carbon credits). When a purchase is created, the platform allocates certificates from available inventory to fulfill the order. Certificates are allocated to spread each sale across as many distinct reward participants as possible — every allocation round advances the certificate whose participants have earned the least so far, in bands of value. Certificate age is used only as a tiebreak and to sweep any remainder.

A single purchase may span multiple certificates if no single certificate has enough available balance to fill the order. The purchase receipt records each certificate allocation, maintaining a clear audit trail from purchased credits back to the underlying verified recycling work and MassIDs.

Integrated retirement

Buyers can purchase and retire credits in a single atomic transaction. Where the purchase order carries a positive retirement amount for an allocation, that portion is bought and immediately, permanently destroyed within the same on-chain operation. Both a Credit Purchase Receipt and a Credit Retirement Receipt are recorded in the same transaction.

This is the most common path for compliance buyers — organizations and individuals that need to claim the environmental offset immediately upon purchase. It simplifies the process to a single step and reduces transaction costs.

The registry contracts also support standalone retirement as a separate transaction, for buyers who hold credits and retire them later. See Credit Retirement for details on both retirement paths.

Fiat payment methods

The Carrot Network recognizes that many credit buyers lack blockchain infrastructure. To address this, the platform supports fiat payment methods for buyers that prefer traditional payment flows. The methods available depend on the buyer's region and are shown at checkout, and the set expands as new payment rails are added. The platform handles the conversion so that settlement always occurs in USDC, regardless of how the buyer pays.


Credits · Rewards Distribution · Smart Contracts · Credit Retirement

On this page