Payment splitting protocol for Solana
CascadePay is a non-custodial payment splitting protocol that automatically distributes incoming payments to multiple recipients based on pre-configured percentages.
The protocol accepts payments to a vault address and distributes funds to 2-20 recipients. A mandatory 1% protocol fee is enforced by the program. Designed for integration with x402 payment facilitators.
Protocol fee: 1% (100 basis points)
Recipient shares must total exactly 99% (9,900 basis points)
Payment: 100 USDC ├── Recipient A (90%): 90.00 USDC ├── Recipient B (9%): 9.00 USDC └── Protocol (1%): 1.00 USDC
Auto-detect split vaults and bundle payment + distribution atomically:
import { detectSplitVault } from "@cascadepay/sdk";
// Detect if destination is a CascadePay vault
const result = await detectSplitVault(
destination, connection, programId
);
if (result.isSplitVault) {
// Bundle: user transfer + execute_split
const tx = new Transaction()
.add(transferInstruction)
.add(executeSplitInstruction);
// User signs once, both happen atomically
await sendTransaction(tx);
}
Result: Seamless UX - user pays once, funds split instantly.
create_split_config - Initialize split configurationexecute_split - Distribute vault balance to recipientsclaim_unclaimed - Claim held funds from failed distributionsupdate_split_config - Modify recipients (requires empty vault)close_split_config - Close configuration and reclaim rent| Framework | Anchor 0.32.1 |
| Token Programs | SPL Token, Token-2022 |
| Recipients | 2-20 per configuration |
| Protocol Fee | 1% (enforced) |
| Native SOL | Not supported (use wrapped SOL) |
Network: Solana Mainnet-Beta
Program ID: Bi1y2G3hteJwbeQk7QAW9Uk7Qq2h9bPbDYhPCKSuE2W2
Solscan: View on Solscan
NPM Package: npm install @cascadepay/sdk
Status: Live on mainnet. Unaudited - use at your own risk.