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. Individuals buy through the Carrot Store; organizations buying volume arrange their purchase with the Carrot sales team. For every purchase, 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 — they never pass through the buyer's account. Today every purchased credit is retired this way; the contracts can also transfer a non-retired remainder to the buyer's account, a capability not yet used.
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 sales across as many distinct reward participants as possible, on a best-effort basis: each allocation round advances, by one band of value, the carbon certificate whose least-rewarded participant has earned the least so far, and pairs it with the recycling certificate from the same MassID. Certificate age breaks any remaining tie and sweeps any remainder.

A purchase usually spans several certificates: each carbon certificate is paired with the recycling certificate from the same MassID, and larger purchases are spread across certificates by the rule above. 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.

Every purchase uses this path today: the credits are bought and retired in the same settlement transaction, so the buyer's claim takes effect when the order settles — right after payment, or later for an order held for deferred delivery. A single step also reduces transaction costs.

The registry contracts also support standalone retirement as a separate transaction, for credits held and retired later; it is not yet offered. 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 offered depend on the currency the buyer chooses at checkout and on whether the purchase is one-time or monthly, 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