Back to Docs

NornSplits

Contract

Revenue splitting for collaborative projects. Automatically distribute payments among multiple recipients.

Overview

NornSplits enables automatic revenue distribution among multiple addresses. Create a split configuration, and incoming payments are automatically divided according to your specified percentages.

Multiple Recipients

Split payments between any number of wallet addresses.

Custom Shares

Define precise percentage splits for each recipient.

Automatic Distribution

Payments are distributed automatically when received.

Use Cases

Collaborative Projects
Split earnings between co-creators

Working with a partner? Set up a 50/50 split so both creators automatically receive their share of any payments.

Teams & Organizations
Distribute revenue among team members

DAOs, collectives, and teams can use splits to automatically distribute earnings without manual transfers.

Referral Programs
Share revenue with affiliates

Set up referral splits to automatically reward people who help grow your audience.

Core Functions

createSplit(recipients, shares)
Create a new split configuration

// 60/40 split between two addresses

createSplit(

[address1, address2],

[6000, 4000] // basis points (100% = 10000)

)

  • recipients: Array of wallet addresses
  • shares: Array of share amounts in basis points (must sum to 10000)
distribute(splitId, token)
Distribute accumulated funds to recipients

Triggers distribution of any funds held in the split contract to all recipients according to their shares.

updateSplit(splitId, recipients, shares)
Modify an existing split configuration

Only the split creator can update the configuration. Changes take effect for future distributions.

View Functions

getSplit(splitId)
Get split configuration details
getBalance(splitId, token)
Check accumulated funds awaiting distribution
getSplitsByCreator(creator)
List all splits created by an address

Events

  • SplitCreated(splitId, creator, recipients, shares)
  • SplitUpdated(splitId, recipients, shares)
  • FundsDistributed(splitId, token, amount, recipients)

Integration

Create and manage splits directly from your dashboard, or interact with the contract programmatically.