Docs/Sell and trade points/Fees and brand revenue
Fees and brand revenue
How customer-paid USD action fees, issuer sharing, and optional marketplace royalties create brand revenue around useful reward activity.
Fee flow#
Customers pay fees when converting points to or from wallets.
Issuance and redemption each cost 0.1 USD by default, paid by the submitting wallet. The contract collects USD through a token allowance and splits it between issuer and protocol. Native value must be zero.
Fees by activity#
| Activity | Who pays | Who receives |
|---|---|---|
| Issuance / redemption | Submitting customer; default 0.1 USD plus network fees | Issuer and Loyfin, default 50/50 |
| Markets fill | Taker; 0.1 USD plus the current percentage on every fill | Issuer and Loyfin, 50/50 |
| Primary purchase | Buyer; the lot price plus its frozen fee rate | Issuer receives the lot price; Loyfin receives the buyer fee |
| Other marketplace sale | Depends on marketplace royalty support | Configured royalty receiver and protocol share |
Brand earnings#
- The issuer receives a share of the fee on each completed Add to wallet or Add from wallet conversion.
- The brand can receive royalties on sales through marketplaces that honor the program’s royalty settings.
- Royalty withdrawals track issuer and protocol shares separately, so one receiver rejecting native ETH does not block the other receiver. Failed shares remain pending until the receiver can accept them.
- Holding points in a wallet does not generate an issuance or redemption fee.
Customer payment#
Loyfin Checkout asks the customer wallet to pay the action fee and network gas while submitting the authorized action. The API does not hold a funded transaction key or subsidize these operations.
Implementation notes#
- Read
requiredFee()from the factory instead of hardcoding fee values. - Check that the customer wallet holds enough USD for the action fee and network fees.
- Keep your brand database row linked with operationHash so revenue, fulfillment, and support records can reconcile with onchain activity.
- On Base, checkout bundles a USD approval and the action atomically. Privy user-paid gas also uses USD; no ETH balance is required. The fee is split between issuer and protocol; see Contract addresses for the current policy.
- Revenue reporting should use completed receipts, not submitted operations, because a signature can expire, fail validation, or remain unmined.