> For the complete documentation index, see [llms.txt](https://bify.gitbook.io/rwa-docs/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://bify.gitbook.io/rwa-docs/bify-commerce/contracts.md).

# Commerce Contracts

These contracts implement BIFY Commerce. They are separate from the ERC-3643 contracts used by BIFY RWA.

| Contract                           | Responsibility                                                     |
| ---------------------------------- | ------------------------------------------------------------------ |
| `BifyCommercePaymentRouter`        | Creates scoped payment deposits and releases verified USDC         |
| `BifyCommerceCheckout`             | Finalizes a hosted purchase after payment verification             |
| `BifyCommercePurchaseRegistry`     | Records purchase, settlement, fulfilment, and certificate state    |
| `BifyProductCertificateController` | Validates signed certificate vouchers                              |
| `BifyProductCertificateNFT`        | Issues non-transferable purchase certificates                      |
| `BifyRewardCampaignRegistry`       | Stores reward campaign rules and scope                             |
| `BifyRewardClaimController`        | Enforces eligibility, limits, holding periods, and one-time claims |
| `BifyAccessPassRegistry`           | Manages optional partner access entitlements                       |
| `BifyCommerceVoting`               | Enforces configured wallet voting rules                            |

## Contract boundaries

Commerce contracts do not:

* create or manage partner products;
* determine partner prices or inventory;
* store names, email addresses, shipping data, or identity documents;
* provide resale, marketplace trading, yield, interest, or card settlement;
* represent legal ownership of a physical product.

The partner's external product ID is an order-scope input. It is not a BIFY product registry entry.


---

# Agent Instructions
This documentation is published with GitBook. GitBook is the documentation platform designed so that both humans and AI agents can read, navigate, and reason over technical content effectively. Learn more at gitbook.com.

## Querying This Documentation
If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter, and the optional `goal` query parameter:

```
GET https://bify.gitbook.io/rwa-docs/bify-commerce/contracts.md?ask=<question>&goal=<endgoal>
```

`ask` is the immediate question: it should be specific, self-contained, and written in natural language.
`goal` is optional and describes the broader end goal you are ultimately trying to accomplish on behalf of the user. GitBook uses it to tailor the answer towards what is most useful for that goal.

The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
