← Inferno

Accept IFR Lock — Business Onboarding

Standard Operating Procedure for onboarding new builder businesses into the IFR Benefits Network.

Live commerce app: IFRp Commerce App / shop.ifrunit.tech provides customer and seller mode in one installable PWA. The live core includes external-wallet entry, buy/swap routing, IFRLock actions, QR proof/redeem, seller profiles, checkout operators, product/service catalogs and configurable discounts. A rule can accept IFRLock, active TIME_ONLY CommitmentVault tranches, or the full threshold in either source; partial source balances are never combined and price-conditioned commitments do not qualify. Verified PartnerVault seller rewards remain governance-gated and inactive. Under the adopted model B, Governance registers and allocates a pilot partner, and rewards are settled per period by a Governance recordMilestone proposal capped by that allocation; no authorized caller is used. Architecture: docs/ifrp-commerce-app/MASTER_ARCHITECTURE.md.

No server needed: show your benefit rules on your own website with the display widget, or gate a community with Guild.xyz or Collab.Land — see Integrate IFR Benefits Without a Server.

🛠️
Try the Integration Builder
Generate your integration code in 60 seconds — contract + SDK + deployment guide.
Open Builder →

Step 1: Initial Contact & Eligibility

Minimum Requirements

Exclusion Criteria

The following categories are excluded from the IFR Benefits Network:

Note: These requirements apply to the hosted seller path. Registration there is self-service: the owner wallet signs, and there is no separate approval step. Businesses that fall under the exclusion criteria must not register. The open self-check below needs no registration at all, and neither path makes a business eligible for PartnerVault rewards.

Step 2: Technical Setup

Option A: Hosted Solution (Recommended)

The fastest way to get started. No technical knowledge required.

  1. Open seller mode in the live IFR Benefits app and connect the owner wallet
  2. Create the business profile, add a broad public service area such as a city, region or Online, and keep its Business ID. Never enter a street address.
  3. Add products or services and configure benefit rules, including the accepted IFRLock or TIME_ONLY CommitmentVault source (see Step 3 below)
  4. Authorize expiring checkout-operator wallets when staff need point-of-sale access
  5. Bookmark the business checkout URL on the point-of-sale device

Option B: Self-Hosted (For Developers)

For businesses that want full control over the verification flow.

  1. Clone the Benefits Network repository:
    git clone https://github.com/NeaBouli/inferno.git
    cd inferno/apps/benefits-network
  2. Install dependencies and configure environment:
    cd backend && npm ci
    cp .env.example .env
    # Edit .env: CHAIN_ID, RPC_URL, SELLER_AUTH_DOMAIN, contract addresses,
    # ADMIN_SECRET and DATABASE_URL (no Business ID or API key is needed here)
  3. Start the backend server:
    npm run dev
    # Server runs on http://localhost:3001
  4. Start the frontend:
    cd ../frontend && npm ci
    npm run dev
    # Frontend runs on http://localhost:3000
  5. Verify the lock check endpoint works:
    curl http://localhost:3001/api/health
    # Expected: { "status": "ok", "chainId": <configured CHAIN_ID> }

Recommendation: Option A is the recommended path for most businesses. Choose Option B only if you have a development team and need custom integrations.

Step 3: Tier Configuration

Configure the discount tiers your customers can access based on their IFR lock amount. You may also require a separate minimum IFR balance that remains free in the customer wallet. These are recommended starting values — you can customize them for your business.

Tier Minimum Lock Recommended Discount
Bronze 1,000 IFR 5–10%
Silver 2,500 IFR 10–15%
Gold 5,000 IFR 15–20%
Platinum 10,000 IFR 20–25%

How it works: The system calls IFRLock.isLocked(wallet, minAmount) on-chain to verify the customer's lock status. If the seller configured a wallet-held minimum, the same checkout also reads the customer's free IFR balance. Both conditions are frozen in the signed offer and verified together. No tokens are transferred during verification — these are read-only checks.

Without the hosted app: you can also check locks yourself. You need no registration, no API key and nobody's permission. The open specification ifr-benefits-verify/1 and its MIT-licensed reference library apps/benefits-verify read the tier above straight from the public contracts at a pinned block. Repeat the check when the benefit is redeemed.

Step 4: Cashier Staff Training (5 Minutes)

The QR Flow

1
Customer creates a short-lived private pass in IFR Benefits
→
2
Seller scans the pass and selects the exact active rule
→
3
Customer reviews and signs the proof for this seller, product, discount and IFR threshold
→
4
Seller sees REDEEMED or REJECTED; a valid proof redeems the checkout once

This customer-presented pass is the recommended flow. The compatible seller-issued QR flow remains available when the seller needs to start the checkout. In both flows, the cashier applies the displayed discount and completes the sale as usual.

What Cashier Staff Does NOT Need

Training tip: The QR flow is identical to scanning a loyalty card. If your staff can scan a barcode, they can operate the IFR Benefits scanner.

Current Seller App Flow

Step 5: Go-Live Checklist

This checklist covers the hosted seller path. The open, read-only self-check needs none of these steps.

Step 6: Ongoing Operations

Monthly Checks

Support Channels

FAQ for Businesses

No. As a business, you do not need to hold any IFR tokens. Your customers lock IFR in the IFRLock smart contract, and the system verifies their lock status automatically. You only provide the discount.

The checkout fails closed when a fresh IFRLock result cannot be obtained. The seller must retry after Ethereum or the configured RPC recovers; a stale lock result never authorizes a discount.

The backend verifies the current threshold directly through the IFRLock smart contract. The recommended QR contains only an opaque short-lived /p/:passId URL, not a wallet address, lock amount, signature, control token, rule or internal session ID. The authorized seller's signature opens the checkout for the exact offer; the customer's signature binds that wallet to this checkout and its terms, and a valid proof with a fresh eligible on-chain read redeems the checkout exactly once.

There is no fee to join the IFR Benefits Network. The only cost is the discount you choose to offer your customers. You set the discount percentages, and you can change them at any time.