Not logged in
SOROBAN • RUST • WASM

💰 Token Contract

SEP-41 Compliant Token — OLIGHFT SMART COIN Gold Tier Smart Contract

GOLD TOKEN
OLIGHFT SMART COIN Asset Contract
🏆
Contract ID
CDLZ7XBHP4QK3R2WMNTF6EHJG9SVX7KQ
Network
Stellar Testnet
Standard
SEP-41
Decimals
7
SOROBAN RUNTIME v21
Holders
1,284
Transactions
48,392
Audit
✓ Passed

📊 Tokenomics — Supply Distribution

Total Supply: 100,000,000,000,000 (100 Trillion GOLD tokens)

Core Team
20%
20,000,000,000,000
Development & Operations
Staking, Selling & Holding
80%
80,000,000,000,000
Community & Ecosystem
20% Core Team
80% Staking / Selling / Holding

📝 Contract Source

Rust — lib.rs
#![no_std]
use soroban_sdk::{
    contract, contractimpl, contracttype,
    Address, Env, String,
    token::{self, Interface as TokenInterface},
};

#[contracttype]
pub enum DataKey {
    Balance(Address),
    Allowance(Address, Address),
    Admin,
    TotalSupply,
}

#[contract]
pub struct GoldToken;

#[contractimpl]
impl GoldToken {
    /// Initialize the Gold Token with admin and supply
    pub fn initialize(
        env: Env,
        admin: Address,
        name: String,
        symbol: String,
        initial_supply: i128,
    ) {
        admin.require_auth();
        env.storage().instance().set(&DataKey::Admin, &admin);
        env.storage().instance().set(&DataKey::TotalSupply, &initial_supply);
        env.storage().persistent().set(
            &DataKey::Balance(admin.clone()), &initial_supply
        );
    }

    /// Transfer tokens between accounts
    pub fn transfer(
        env: Env,
        from: Address,
        to: Address,
        amount: i128,
    ) {
        from.require_auth();
        let from_bal: i128 = env.storage().persistent()
            .get(&DataKey::Balance(from.clone()))
            .unwrap_or(0);
        assert!(from_bal >= amount, "insufficient balance");

        env.storage().persistent().set(
            &DataKey::Balance(from), &(from_bal - amount)
        );
        let to_bal: i128 = env.storage().persistent()
            .get(&DataKey::Balance(to.clone()))
            .unwrap_or(0);
        env.storage().persistent().set(
            &DataKey::Balance(to), &(to_bal + amount)
        );
    }

    /// Mint new tokens (admin only)
    pub fn mint(env: Env, to: Address, amount: i128) {
        let admin: Address = env.storage().instance()
            .get(&DataKey::Admin).unwrap();
        admin.require_auth();
        // ... mint logic
    }

    /// Burn tokens from caller's balance
    pub fn burn(env: Env, from: Address, amount: i128) {
        from.require_auth();
        // ... burn logic
    }

    /// Get balance of an address
    pub fn balance(env: Env, addr: Address) -> i128 {
        env.storage().persistent()
            .get(&DataKey::Balance(addr))
            .unwrap_or(0)
    }
}

⚙️ Contract Functions

FunctionDescriptionAuthGas (XLM)
initializeDeploy token with name, symbol, supplyAdmin~0.015
transferSend tokens between addressesSender~0.008
approveSet spending allowance for a spenderOwner~0.006
transfer_fromTransfer using allowanceSpender~0.010
mintCreate new tokensAdmin~0.008
burnDestroy tokens from balanceOwner~0.006
balanceQuery token balance (read-only)None~0.001
total_supplyGet total token supplyNone~0.001

🚀 Deploy & Invoke

$ soroban contract build
$ soroban contract deploy --wasm target/wasm32-unknown-unknown/release/gold_token.wasm --network testnet --source admin
$ soroban contract invoke --id CDLZ...X7KQ -- initialize --admin GDQP...ADMIN --name "Gold Token" --symbol "GOLD" --initial_supply 100000000000_0000000
$ soroban contract invoke --id CDLZ...X7KQ -- transfer --from GDQP...ADMIN --to GBUY...USER --amount 1000_0000000

✨ Gold Tier Features

🏷️

SEP-41 Standard

Full compliance with Stellar token interface

STANDARD
🔥

Burn & Mint

Admin-controlled supply management on-chain

SUPPLY
🔒

Allowance System

Approve spenders with per-address limits

SECURITY
📊

On-Chain Events

Transfer, mint, burn events for indexing

TRACKING

Low Gas

~0.008 XLM per transfer on Soroban

EFFICIENT
🛡️

Audited

Independent security audit completed

VERIFIED

💰 Gold Staking Contract

Stake $400 to activate your Gold tier and earn $24 daily rewards. Choose your contract period:

Activation Stake
$400
Daily Earnings
$24 / day
Service Fee
$160
Contract Period
3 Months
90 Days
Total Payout$2,160
Stake + Fee-$560
Net Profit
$1,600
POPULAR
Contract Period
6 Months
180 Days
Total Payout$4,320
Stake + Fee-$560
Net Profit
$3,760
BEST VALUE
Contract Period
1 Year
365 Days
Total Payout$8,760
Stake + Fee-$560
Net Profit
$8,200

⚡ Activate Gold Staking

Select your contract period and enter your sponsor code to activate:
Required — commissions flow through 8-generation binary tree
You Pay
$560
$400 stake + $160 fee
Period
180 days
Net Profit
$3,760
Stellar Testnet • Transaction requires wallet signature

📋 How It Works

1
Stake $400 to Activate
Deposit $400 to activate your Gold tier staking contract
2
Choose Your Period
Select 3 months (90 days), 6 months (180 days), or 1 year (365 days)
3
Earn $24 Daily
Receive $24 in rewards every day for your chosen contract period
4
$160 System Service Fee
A one-time $160 service fee is deducted for platform maintenance
5
Collect Your Rewards
3mo: $2,160 ($1,600 profit) • 6mo: $4,320 ($3,760 profit) • 1yr: $8,760 ($8,200 profit)

🌳 $400 Activation Fee Distribution — 8-Generation Binary Tree

When a user activates with $400, the fee is distributed across the 8-level upline binary tree:

GenerationRoleCommissionAmount
Main Wallet (Platform)$240
Gen 1Direct Inviter10%$40
Gen 2Inviter’s Inviter6%$24
Gen 3Upline Level 34%$16
Gen 4Upline Level 44%$16
Gen 5Upline Level 54%$16
Gen 6Upline Level 64%$16
Gen 7Upline Level 74%$16
Gen 8Upline Level 84%$16
TOTAL$400
🌳
Binary Tree Structure: Each user has 2 direct slots (left & right). Commissions flow upward through 8 generations. If an upline slot is empty, that generation’s commission rolls to the main wallet.

📜 Gold Staking Contract Source

Rust — gold_staking.rs
#[contracttype]
pub struct GoldStake {
    pub staker: Address,
    pub stake_amount: i128,      // $400 activation
    pub daily_reward: i128,      // $24 per day
    pub duration_days: u32,     // 90 | 180 | 365 days
    pub service_fee: i128,      // $160 platform fee
    pub sponsor: Address,       // direct inviter (Gen 1)
    pub start_time: u64,
    pub claimed_days: u32,
}

// 8-generation binary tree commission rates (in $)
const GEN_COMMISSIONS: [i128; 8] = [
    40_0000000, // Gen 1: $40 (direct inviter)
    24_0000000, // Gen 2: $24
    16_0000000, // Gen 3: $16
    16_0000000, // Gen 4: $16
    16_0000000, // Gen 5: $16
    16_0000000, // Gen 6: $16
    16_0000000, // Gen 7: $16
    16_0000000, // Gen 8: $16
];  // Total referral: $160 | Main wallet: $240 | Grand total: $400

#[contractimpl]
impl GoldToken {

    /// Activate Gold staking — $400 deposit + $160 service fee
    /// $400 split: $240 main wallet + $160 across 8-gen binary tree
    /// duration: 90 (3mo) | 180 (6mo) | 365 (1yr)
    pub fn activate_stake(
        env: Env, staker: Address, sponsor: Address,
        duration: u32,
    ) {
        staker.require_auth();

        // Valid periods: 90 (3mo), 180 (6mo), 365 (1yr)
        assert!(duration == 90 || duration == 180 || duration == 365);

        let token = get_payment_token(&env);
        let tok = token::Client::new(&env, &token);
        let activation = 400_0000000; // $400
        let fee = 160_0000000;        // $160 service fee

        // Transfer $400 + $160 fee from user to contract
        tok.transfer(&staker, &env.current_contract_address(),
                     &(activation + fee));

        // ── Distribute $400 activation across binary tree ──
        let main_wallet = get_main_wallet(&env);
        let mut remaining = activation; // $400
        let mut current = sponsor.clone();

        for gen in 0..8 {
            let commission = GEN_COMMISSIONS[gen];
            if let Some(upline) = get_sponsor(&env, ¤t) {
                tok.transfer(
                    &env.current_contract_address(),
                    ¤t, &commission,
                );
                remaining -= commission;
                current = upline;
            } else {
                // No upline — remaining goes to main wallet
                break;
            }
        }

        // Send remainder ($240 or more) to main wallet
        tok.transfer(
            &env.current_contract_address(),
            &main_wallet, &remaining,
        );

        let stake = GoldStake {
            staker: staker.clone(),
            stake_amount: activation,
            daily_reward: 24_0000000,  // $24/day
            duration_days: duration,
            service_fee: fee,
            sponsor: sponsor.clone(),
            start_time: env.ledger().timestamp(),
            claimed_days: 0,
        };
        env.storage().persistent().set(&staker, &stake);
    }

    /// Claim accrued daily rewards
    pub fn claim_rewards(env: Env, staker: Address) -> i128 {
        staker.require_auth();
        let mut stake: GoldStake = env.storage().persistent().get(&staker).unwrap();

        let elapsed = (env.ledger().timestamp() - stake.start_time) / 86400;
        let claimable = elapsed.min(stake.duration_days as u64) as u32
                        - stake.claimed_days;

        let payout = (claimable as i128) * stake.daily_reward;
        stake.claimed_days += claimable;
        env.storage().persistent().set(&staker, &stake);

        // Transfer rewards to staker
        token::Client::new(&env, &get_payment_token(&env))
            .transfer(&env.current_contract_address(), &staker, &payout);
        payout  // 90d→$2,160 | 180d→$4,320 | 365d→$8,760
    }
}
FunctionDescriptionAuthCost
activate_stakeDeposit $400 + $160 fee, choose period (90/180/365 days)User$560 total
claim_rewardsClaim accrued $24/day rewardsUser~0.01 XLM
get_sponsorGet upline address for a given userNone~0.001 XLM

🧪 Unit Test

Rust — test.rs
#[test]
fn test_transfer() {
    let env = Env::default();
    env.mock_all_auths();
    let admin = Address::generate(&env);
    let user  = Address::generate(&env);
    let client = GoldTokenClient::new(&env, &env.register_contract(None, GoldToken));

    client.initialize(&admin, &String::from_str(&env, "Gold"),
        &String::from_str(&env, "GOLD"), &1000_0000000);

    client.transfer(&admin, &user, &100_0000000);
    assert_eq!(client.balance(&user), 100_0000000);
    assert_eq!(client.balance(&admin), 900_0000000);
}
🏠 Home 💳 Wallet ⚙️ Admin 🔒 Login 🏆 Gold Token 💳 Visa Payment 🔄 MC DEX 🏛️ Amex DAO ⛏️ Plat Staking 🗄️ Black Vault

OLIGHFT SMART COIN Gold Token Contract v2.1.0 • Stellar Testnet • Rust/WASM

Built with soroban-sdk 21.0.0 • April 2026

🔒 Verify Withdrawal

Confirm your identity before withdrawing funds
🔐 Google Authenticator