# Terms and conditions of sale: Wren Coffee

Version 1. Effective: 2026-10-26.

These are the terms on which Wren Coffee sells at https://wren-coffee.integraledger.com. Each purchase makes its own agreement, which holds these terms' address and hash.

## 1. This is a demonstration

For demonstration only. This transaction runs on a test network with test money, and has no value.

Every sale here is fully executed when it is made: the agreement is issued and bound to the payment, the payment is made in test USDC on the test network the checkout is paid on (section 5), and what is sold is delivered as section 6 says. Nothing here is sold for money of any value.

Prices are real-life prices in US dollars. In this demonstration each is paid at one millionth of a USDC for each cent: $16.00, paid as 0.0016 USDC.

## 2. The parties

- The seller: Wren Coffee, at https://wren-coffee.integraledger.com. Contact: hello@wrencoffee.example.
- The buyer: whoever pays for an offer here, through an agent of their own or one they use. The buyer is known by the wallet that signs the payment.
- The payee: every payment for a purchase here is made to the wren shop's own seller account on the network the checkout is paid on, which section 5 names for each network. Each is the website's own account: https://integraledger.com/registry.json lists every account the website holds on each network, and anyone can read on each network the transfers it receives. Each agreement names the payee in its `order` (`paid.payee`, and in words `paid.words`), and Integra's facilitator settles a payment only to the payee of the agreement the payment carries.

## 3. What is sold, and each offer's terms

### House roast, 1 lb (`house-roast`)

Our everyday blend: two washed lots from Huila, Colombia, roasted medium for filter and cafetiere. Chocolate, red apple, a clean finish.

- Price: $16.00, paid as 0.0016 USDC.
- Payment: Paid when bought (x402 `exact`).
- Delivers: An order for goods, with its number. The order is recorded and the stock is reduced. Nothing is sent.
- Asks the buyer for: name, address. What the buyer gives is written into the agreement, which is public.

Its terms, word for word:

- **dispatch**: Posted Royal Mail second class within 2 working days of roasting.
- **returns**: Unopened bags may be returned within 14 days for a full refund; opened bags are not returnable.
- **freshness**: Roasted to order in 1 kg batches. Best within 8 weeks of the roast date printed on the bag.

The SHA-256 of these terms in their RFC 8785 (JSON Canonicalization Scheme) form is `0xe65935ff2b81b89f4474818cf7fe796ad01660daee6a531fced6fcbbd8ec2a38`.

### Espresso trade blend, 1 kg (`espresso-trade-blend`)

A forgiving espresso blend for small cafes: Brazil and Sumatra, roasted a shade darker. Thick body, low acidity, cuts through milk. Cupping notes sent with every batch.

- Price: $32.00, paid as 0.0032 USDC.
- Payment: Paid when bought (x402 `exact`).
- Delivers: An order for goods, with its number. The order is recorded and the stock is reduced. Nothing is sent.
- Asks the buyer for: name, address. What the buyer gives is written into the agreement, which is public.
- The price is open to negotiation, down to a lowest price the seller does not disclose.

Its terms, word for word:

- **dispatch**: Cafe orders posted or couriered within 2 working days; courier on orders of 3 kg or more.
- **returns**: Unopened kiln bags may be returned within 14 days for a full refund.
- **support**: Recipe advice (dose, yield, time) by email for as long as you buy the blend.

The SHA-256 of these terms in their RFC 8785 (JSON Canonicalization Scheme) form is `0xab164ac6401a2ea60242cc0c37a319ad42845d7e5fe5952d589b4ad6c4d383b4`.

### Yirgacheffe single origin, 250 g (`yirgacheffe-single-origin`)

Washed heirloom lot from the Gedeo zone, roasted light. Jasmine, bergamot, lemon curd. Roasted for filter; change the grind for espresso.

- Price: $13.50, paid as 0.00135 USDC.
- Payment: Paid when bought (x402 `exact`).
- Delivers: An order for goods, with its number. The order is recorded and the stock is reduced. Nothing is sent.
- Asks the buyer for: name, address. What the buyer gives is written into the agreement, which is public.

Its terms, word for word:

- **dispatch**: Posted Royal Mail second class within 2 working days of roasting.
- **returns**: Unopened bags may be returned within 14 days for a full refund.
- **season**: This lot is from the current harvest; when it is gone it is gone until next season.

The SHA-256 of these terms in their RFC 8785 (JSON Canonicalization Scheme) form is `0xde6d40cae8ab4e9b737349fd14f824a656456fed21043a8a908e16d6517e63b3`.

### Cafe starter pack, 4 kg (`cafe-invoice-pack`)

Four kilos of the trade blend on account, to see whether we suit your machine before you sign up for a standing weekly order. Pay at the end of the month.

- Price: $120.00, owed later as 0.012 USDC, not paid at purchase.
- Payment: Pay later: the price is owed, due 30 days after the purchase, and the agreement says what is owed and when. On Base Sepolia, Arc testnet, Avalanche® Fuji, Ethereum Sepolia, Arbitrum Sepolia, OP Sepolia, Polygon Amoy, Unichain Sepolia, World Chain Sepolia, Ink Sepolia, Celo Sepolia, Monad testnet, Sei testnet, Sonic testnet, Morph Hoodi, Cronos testnet and Pharos Atlantic: At purchase the buyer pays 0.000001 USDC, the smallest amount the token can move, by an EIP-3009 transfer whose nonce is H (H is the agreement's hash): it anchors the agreement on chain, and is not part of the price. On Hedera testnet: At purchase the buyer pays 0.000001 USDC, the smallest amount the token can move, by a Hedera Token Service transfer whose memo, signed by the payer, is `lcp:sha256:` followed by H (H is the agreement's hash): it anchors the agreement on chain, and is not part of the price. On Stellar testnet: At purchase the buyer pays 0.000001 USDC, one cent at the scale, by a Stellar transfer paid to a muxed address whose id is H's first 8 bytes (H is the agreement's hash): it anchors the agreement on chain, and is not part of the price. On Solana devnet: At purchase the buyer pays 0.000001 USDC, the smallest amount the token can move, by an SPL token transfer whose one memo, signed by the payer, is `lcp:sha256:` followed by H (H is the agreement's hash): it anchors the agreement on chain, and is not part of the price. On XRPL Testnet: At purchase the buyer pays 0.000001 USDC, the smallest amount the token can move, by an XRPL payment whose InvoiceID, signed by the payer, is the SHA-256 of `lcp:sha256:` followed by H (H is the agreement's hash): it anchors the agreement on chain, and is not part of the price. On Algorand testnet: At purchase the buyer pays 0.000001 USDC, the smallest amount the token can move, by an Algorand asset transfer whose note, signed by the payer, is `lcp:sha256:` followed by H (H is the agreement's hash): it anchors the agreement on chain, and is not part of the price. (x402 `exact`.) Nothing here tracks or collects the amount owed.
- Delivers: An order for goods, with its number. The order is recorded and the stock is reduced. Nothing is sent.
- Asks the buyer for: name, address. What the buyer gives is written into the agreement, which is public.

Its terms, word for word:

- **payment**: On account: the invoice is owed 30 days from the purchase.
- **dispatch**: Posted or couriered within 2 working days.
- **returns**: Unopened kiln bags may be returned within 14 days for a credit against your account.
- **switch**: If it does not suit your machine, tell us within 14 days and the account is closed with nothing further owed.

The SHA-256 of these terms in their RFC 8785 (JSON Canonicalization Scheme) form is `0x5546ef67c4c973aa94c637b1703f6ff5ec6693221e330906cde7f3a695624946`.

## 4. How an agreement is made

- When a buyer asks to buy, before any payment, Integra's appliance issues an agreement for that purchase: an Agreement Transaction Record (ATR). It holds the seller, the offer, these terms (the offer's word for word, and this document by its address and SHA-256), the order and its price, what the buyer gave, and what this demonstration will and will not do.
- The payment request carries the agreement's hash, H, which is the SHA-256 of its exact bytes, and a link to those bytes, in the x402 extension `legalContext`. An agent should fetch the link, hash the bytes, and compare the result with H before it signs.
- The payment is bound to H. On Base Sepolia, Arc testnet, Avalanche® Fuji, Ethereum Sepolia, Arbitrum Sepolia, OP Sepolia, Polygon Amoy, Unichain Sepolia, World Chain Sepolia, Ink Sepolia, Celo Sepolia, Monad testnet, Sei testnet, Sonic testnet, Morph Hoodi, Cronos testnet and Pharos Atlantic: For an offer paid when bought, and for pay later's anchoring payment (x402 `exact`), H is the nonce of the EIP-3009 authorization; for an offer authorised now and collected later (x402 `auth-capture`), H is in the escrow payment's salt. The same offers are offered through MPP too (the `evm` method's `authorization` credential), under an agreement of their own: its challenge's `id` is base64url of its H and the challenge's position, its `opaque` names H, and the EIP-3009 authorization's nonce is keccak256 of the id and the realm. On Hedera testnet: For an offer paid when bought, and for pay later's anchoring payment (x402 `exact` on Hedera), H is the memo of the Hedera transaction the buyer signs, written `lcp:sha256:` followed by H, which any Mirror Node shows by the transaction's id. On Stellar testnet: On Stellar (x402 `exact`), for an offer paid when bought and for pay later's anchoring payment, the challenge's `payTo` is the payee's muxed address (`M…`), whose 64-bit id is the first 8 bytes of H: the payer signs the Soroban `transfer` of USDC to it, and the USDC lands in the payee's own account (`G…`), its transfer event carrying that id. On Solana devnet: On Solana (x402 `exact`), for an offer paid when bought and for pay later's anchoring payment, H is the one Memo instruction of the transaction the buyer signs, written `lcp:sha256:` followed by H (the option's `extra.memo`): the facilitator's account completes it as its fee payer, its instruction data on chain carries the memo, and the USDC lands in the payee's associated token account. On XRPL Testnet: On XRPL (x402 `exact`), for an offer paid when bought and for pay later's anchoring payment, H rides as the `InvoiceID` of the Payment the buyer signs: the SHA-256 of `lcp:sha256:` followed by H (the option's `extra.invoiceId`). The buyer pays its own fee and spends one of its tickets, Integra's facilitator submits the signed Payment, and the USDC is delivered to the payee's address; the ledger shows the InvoiceID, which anyone holding the agreement can check against H. On Algorand testnet: On Algorand (x402 `exact`), for an offer paid when bought and for pay later's anchoring payment, H is the note of the asset transfer the buyer signs, written `lcp:sha256:` followed by H: the transfer moves the USDC to the payee's account, grouped after the facilitator's payment of nothing to itself, which pays both fees, and the note is on chain in the confirmed transaction. A payment that carries H is the buyer's acceptance of that agreement.
- An agreement can be paid once, while it is open: 15 minutes from its issue. A signature is good for 300 seconds.
- Where an offer is open to negotiation, a price agreed with the seller's agent stands for 10 minutes, for one purchase, named as the quote.
- Every offer also has a test checkout, at `/test/buy/<offer>` and as the tool `test_buy`. A checkout for testing your agent. The hash it advertises has one character changed. An agent that checks signs nothing. Nothing is sold here.

## 5. Payment

Each checkout is paid on one test network, which the buyer names as a CAIP-2 id (`network` in the body of the request to `/buy/<offer>`, in the tool `buy` and in an A2A buy data part; in UCP's checkout, a network the platform's profile declares for the x402 handler, `config.networks`, that this shop accepts too); with none named, `eip155:84532`. The agreement names the network, the payee and who settles. The networks offered:

- Base Sepolia (`eip155:84532`, the default): its test USDC `0x036CbD53842c5426634e7929541eC2318f3dCF7e`, paid to `0x12B8083EFADc9992AA0493FA935F76f1fb396444` by an EIP-3009 transfer, settled by the CDP facilitator from 0.001 USDC on, through Integra's facilitator (https://facilitator.integraledger.com), and by Integra's facilitator below that; a hold is authorised into the x402 `auth-capture` escrow (`0xf96815976523E00e65Be8f34cA5e64b4f41EB19c`), settled by Integra's facilitator (https://facilitator.integraledger.com).
- Arc testnet (`eip155:5042002`): its test USDC `0x3600000000000000000000000000000000000000`, paid to `0x12B8083EFADc9992AA0493FA935F76f1fb396444` by an EIP-3009 transfer, settled by the Circle Facilitator Service, through Integra's facilitator (https://facilitator.integraledger.com); a hold is authorised into the x402 `auth-capture` escrow (`0xf96815976523E00e65Be8f34cA5e64b4f41EB19c`), settled by Integra's facilitator (https://facilitator.integraledger.com).
- Avalanche® Fuji (`eip155:43113`): its test USDC `0x5425890298aed601595a70AB815c96711a31Bc65`, paid to `0x12B8083EFADc9992AA0493FA935F76f1fb396444` by an EIP-3009 transfer, settled by Integra's facilitator (https://facilitator.integraledger.com); a hold is authorised into the x402 `auth-capture` escrow (`0xf96815976523E00e65Be8f34cA5e64b4f41EB19c`), settled by Integra's facilitator (https://facilitator.integraledger.com).
- Hedera testnet (`hedera:testnet`): its test USDC `0.0.429274`, paid to `0.0.11173959` by a Hedera Token Service transfer, settled by Integra's facilitator (https://facilitator.integraledger.com).
- Stellar testnet (`stellar:testnet`): its test USDC `CBIELTK6YBZJU5UP2WWQEUCYKLPU6AUNZ2BQ4WWFEIE3USCIHMXQDAMA`, paid to `GCKPRWF5CXIPTUTTBFJDBRWY3SZEFEZS5MFURNNQ43W3SIIUS6LDC5DT` by a Stellar transfer, settled by Integra's facilitator (https://facilitator.integraledger.com).
- Solana devnet (`solana:EtWTRABZaYq6iMfeYKouRu166VU2xqa1`): its test USDC `4zMMC9srt5Ri5X14GAgXhaHii3GnPAEERYPJgZJDncDU`, paid to `3AAL87oYUE8UzEFaUEuKvNiYDLNCgieFrD6AEh3AoUDv` by an SPL token transfer, settled by Integra's facilitator (https://facilitator.integraledger.com).
- XRPL Testnet (`xrpl:1`): its test USDC `5553444300000000000000000000000000000000`, paid to `rBW1o149LBdNv2BJnKj8KjKcuZbzBGxpQF` by an XRPL payment, settled by Integra's facilitator (https://facilitator.integraledger.com).
- Algorand testnet (`algorand:SGO1GKSzyE7IEPItTxCByw9x8FmnrCDe`): its test USDC `10458941`, paid to `VED6XQ4WL2H5MMIARRE7Q6EGMSCIRVPOBEL5BBJT47YDTYMV2TFFKW5U4A` by an Algorand asset transfer, settled by Integra's facilitator (https://facilitator.integraledger.com).
- Ethereum Sepolia (`eip155:11155111`): its test USDC `0x1c7D4B196Cb0C7B01d743Fbc6116a902379C7238`, paid to `0x12B8083EFADc9992AA0493FA935F76f1fb396444` by an EIP-3009 transfer, settled by Integra's facilitator (https://facilitator.integraledger.com).
- Arbitrum Sepolia (`eip155:421614`): its test USDC `0x75faf114eafb1BDbe2F0316DF893fd58CE46AA4d`, paid to `0x12B8083EFADc9992AA0493FA935F76f1fb396444` by an EIP-3009 transfer, settled by Integra's facilitator (https://facilitator.integraledger.com).
- OP Sepolia (`eip155:11155420`): its test USDC `0x5fd84259d66Cd46123540766Be93DFE6D43130D7`, paid to `0x12B8083EFADc9992AA0493FA935F76f1fb396444` by an EIP-3009 transfer, settled by Integra's facilitator (https://facilitator.integraledger.com).
- Polygon Amoy (`eip155:80002`): its test USDC `0x41E94Eb019C0762f9Bfcf9Fb1E58725BfB0e7582`, paid to `0x12B8083EFADc9992AA0493FA935F76f1fb396444` by an EIP-3009 transfer, settled by the Circle Facilitator Service, through Integra's facilitator (https://facilitator.integraledger.com).
- Unichain Sepolia (`eip155:1301`): its test USDC `0x31d0220469e10c4E71834a79b1f276d740d3768F`, paid to `0x12B8083EFADc9992AA0493FA935F76f1fb396444` by an EIP-3009 transfer, settled by Integra's facilitator (https://facilitator.integraledger.com).
- World Chain Sepolia (`eip155:4801`): its test USDC `0x66145f38cBAC35Ca6F1Dfb4914dF98F1614aeA88`, paid to `0x12B8083EFADc9992AA0493FA935F76f1fb396444` by an EIP-3009 transfer, settled by the CDP facilitator from 0.001 USDC on, through Integra's facilitator (https://facilitator.integraledger.com), and by Integra's facilitator below that.
- Ink Sepolia (`eip155:763373`): its test USDC `0xFabab97dCE620294D2B0b0e46C68964e326300Ac`, paid to `0x12B8083EFADc9992AA0493FA935F76f1fb396444` by an EIP-3009 transfer, settled by Integra's facilitator (https://facilitator.integraledger.com).
- Celo Sepolia (`eip155:11142220`): its test USDC `0x01C5C0122039549AD1493B8220cABEdD739BC44E`, paid to `0x12B8083EFADc9992AA0493FA935F76f1fb396444` by an EIP-3009 transfer, settled by Integra's facilitator (https://facilitator.integraledger.com).
- Monad testnet (`eip155:10143`): its test USDC `0x534b2f3A21130d7a60830c2Df862319e593943A3`, paid to `0x12B8083EFADc9992AA0493FA935F76f1fb396444` by an EIP-3009 transfer, settled by Integra's facilitator (https://facilitator.integraledger.com).
- Sei testnet (`eip155:1328`): its test USDC `0x4fCF1784B31630811181f670Aea7A7bEF803eaED`, paid to `0x12B8083EFADc9992AA0493FA935F76f1fb396444` by an EIP-3009 transfer, settled by Integra's facilitator (https://facilitator.integraledger.com).
- Sonic testnet (`eip155:14601`): its test USDC `0x0BA304580ee7c9a980CF72e55f5Ed2E9fd30Bc51`, paid to `0x12B8083EFADc9992AA0493FA935F76f1fb396444` by an EIP-3009 transfer, settled by Integra's facilitator (https://facilitator.integraledger.com).
- Morph Hoodi (`eip155:2910`): its test USDC `0x7433b41C6c5e1d58D4Da99483609520255ab661B`, paid to `0x12B8083EFADc9992AA0493FA935F76f1fb396444` by an EIP-3009 transfer, settled by Integra's facilitator (https://facilitator.integraledger.com).
- Cronos testnet (`eip155:338`): its test USDC `0xEb33dc5fac03833e132593659e1dE7256aB59794`, paid to `0x12B8083EFADc9992AA0493FA935F76f1fb396444` by an EIP-3009 transfer, settled by Integra's facilitator (https://facilitator.integraledger.com).
- Pharos Atlantic (`eip155:688689`): its test USDC `0xcfC8330f4BCAB529c625D12781b1C19466A9Fc8B`, paid to `0x12B8083EFADc9992AA0493FA935F76f1fb396444` by an EIP-3009 transfer, settled by Integra's facilitator (https://facilitator.integraledger.com).

- Paid when bought: the amount, in the network's test USDC, to the payee.
- Pay later: the price is owed, and due when the offer says: when the booked slot starts, or a number of days after the purchase. The agreement states what is owed, when it is due, and how it is to be paid: in test USDC, at the scale above, to the payee. At purchase the buyer pays 0.000001 USDC to the payee, carrying H as the network carries it, which anchors the agreement on chain. That payment is not part of the price. Nothing here tracks or collects the amount owed.
- No fee is charged beyond the price.
- A payment is said to be paid only once the seller's own reading of the chain confirms it.

## 6. Delivery

Each purchase is delivered once, at its inception, after its payment settles: for an offer authorised now and collected later, after it is authorised into escrow; for pay later, after the anchoring payment settles.

- An order is recorded at its own address. The order is recorded and the stock is reduced. Nothing is sent.

## 7. Records

- Each purchase has a proof page, at `https://wren-coffee.integraledger.com/proof/<H>`, which shows the agreement, the appliance's record of it, and the payment on the chain.
- The appliance records a transaction at its inception: the agreement, and the payment bound to it. What follows, such as the collection of a payment authorised into escrow, is the seller's own reading of the chain. For pay later, the amount owed is neither tracked nor collected: the record is of the agreement and its anchoring payment.

## 8. No warranty

Everything here is provided as it is, for demonstration, with no warranty of any kind.

## 9. Changes to these terms

These terms are served at https://wren-coffee.integraledger.com/terms.md. Their SHA-256 is published as `atrHash` in https://wren-coffee.integraledger.com/.well-known/legal-context.json. If they change, their version and the day it took effect, above, change, and so does their hash; an agreement already made holds the address and hash of the terms it was made under.

## 10. Contact

hello@wrencoffee.example
