Offering Architecture

Investment offerings with built-in compliance modules.

Overview

Features:

  • Hybrid escrow (investor protection + issuer control)

  • Compliance presets (506b, 506c, Reg S, Reg A+)

  • Automated token issuance

  • Modular compliance system

  • Document management

Diamond Structure

OfferingDiamond
├── DiamondCutFacet
├── DiamondLoupeFacet
├── AccessControlFacet
├── OfferingCoreFacet - Core offering logic
├── OfferingComplianceFacet - Compliance coordinator
└── OfferingDocumentsFacet - Document management

Plus separate compliance module contracts.

Core Interface

Offering Configuration

Investment Flow

1. Investor Invests

2. Compliance Checks

Automatically checked:

  • KYC verification

  • Accreditation (if required)

  • Document signing

  • Investor limits

  • Whitelist (if enabled)

3. Issuer Countersigns

4. Or Issuer Rejects

Compliance Modules

Module Interface

Built-in Modules

KYCComplianceModule:

  • Checks investor has KYC attestation

  • Verifies attestation not expired/revoked

WhitelistComplianceModule:

  • Checks investor on approved list

  • Issuer controls whitelist

InvestorLimitsComplianceModule:

  • Enforces max investor count (e.g., 99 for 506b)

  • Tracks total investors

AccreditationComplianceModule:

  • Requires accreditation attestation

  • For 506(c) offerings

DocumentComplianceModule:

  • Requires signed subscription agreement

  • Checks document signatures

Example: KYC Module

Hybrid Escrow

Investor Protection

If issuer doesn't countersign within grace period:

Issuer Control

Issuer can reject unqualified investors:

Deployment

Via OfferingFactory

Storage

OfferingCoreStorage

Events

Security

  • Access control on admin functions

  • Reentrancy protection

  • Pausable

  • Compliance checks before accepting investment

Gas Costs

On Base:

  • Offering deployment: 13M gas ($0.20)

  • Invest: 500k gas ($0.005)

  • Countersign: 300k gas ($0.003)

Testing

Resources

Last updated

Was this helpful?