universalsettle-api 0.1.5

X402-inspired settlement program for any token on Solana
Documentation
use const_crypto::ed25519;
use solana_program::{pubkey, pubkey::Pubkey};

// Test initializer (mac::id.json)
// pub const INITIALIZER_ADDRESS: Pubkey = pubkey!("Ac2ev4ofDx61tuSJCgq9ToSBfVwHD2a1FVJf6p7TAqiB");
// Test initializer (mac&hp::test-id.json)
pub const INITIALIZER_ADDRESS: Pubkey = pubkey!("4ALL9EAVHpv7ioJF95ktDLtrHUEJezPuFxTFFMy3fpSy");

// The authority allowed to initialize the program.
// pub const INITIALIZER_ADDRESS: Pubkey = pubkey!("staryJacbXodPh4WfwVtgA5jkJhvsMHERtkdttnLEHc");

pub const MAX_FEE_BASIS_POINTS: u16 = 300; // 3% max

/// The seed of the config account PDA.
pub const CONFIG: &[u8] = b"config";

/// The seed of the SOL storage PDA.
pub const SOL_STORAGE: &[u8] = b"sol_storage";

/// The seed of the SplitVault PDA.
pub const VAULT: &[u8] = b"vault";

/// Program id for const pda derivations
const PROGRAM_ID: [u8; 32] = unsafe { *(&crate::id() as *const Pubkey as *const [u8; 32]) };

/// The address of the config account.
pub const CONFIG_ADDRESS: Pubkey =
    Pubkey::new_from_array(ed25519::derive_program_address(&[CONFIG], &PROGRAM_ID).0);