# Tutorials Learn how to use Vilna through practical, step-by-step tutorials. Each tutorial focuses on a specific use case and provides complete code examples. ## Getting Started Tutorials Accept Your First Payment Learn how to generate a payment address, monitor for incoming transactions, and confirm payment receipt. Perfect for e-commerce integration. **Coming soon** Monitor a Treasury Wallet Set up comprehensive monitoring for your company's treasury wallet with email alerts for large transfers and daily balance reports. **Coming soon** ## Integration Tutorials Build a Deposit System Create a complete deposit system for an exchange or wallet service using xpub keys to generate unique addresses for each user. **Coming soon** Multi-Chain Portfolio Tracker Track assets across multiple blockchains, aggregate balances, and calculate total portfolio value in real-time. **Coming soon** ## Advanced Tutorials Automated Compliance Reporting Generate automated compliance reports with transaction history, source of funds analysis, and audit trails. **Coming soon** DeFi Position Monitoring Monitor DeFi positions including liquidity pools, lending protocols, and yield farming across multiple protocols. **Coming soon** ## Quick Examples ### Generate a Deposit Address ```javascript // Generate next address from xpub const response = await fetch('https://api.vilna.io/v1/addresses/generate/xpub/next', { method: 'POST', headers: { 'Authorization': 'Bearer YOUR_API_KEY', 'Content-Type': 'application/json' }, body: JSON.stringify({ xpub_id: 'your-xpub-id', label: 'Customer #12345' }) }); const { address } = await response.json(); console.log('Deposit address:', address); ``` ### Check Address Balance ```python import requests def get_balance(address): url = f"https://api.vilna.io/v1/addresses/{address}/balances" headers = {"Authorization": "Bearer YOUR_API_KEY"} response = requests.get(url, headers=headers) balances = response.json() for balance in balances['items']: print(f"{balance['asset_name']}: {balance['balance']}") ``` ### Set Up Webhook Notifications ```bash # Create webhook channel curl -X POST https://api.vilna.io/v1/channels \ -H "Authorization: Bearer YOUR_API_KEY" \ -H "Content-Type: application/json" \ -d '{ "type": "webhook", "name": "Payment Processor", "webhook_url": "https://your-app.com/webhook" }' # Subscribe to deposit events curl -X POST https://api.vilna.io/v1/subscriptions \ -H "Authorization: Bearer YOUR_API_KEY" \ -H "Content-Type: application/json" \ -d '{ "channel_id": "channel-id", "address_ids": ["address-id"], "event_types": ["transaction.confirmed"], "min_confirmations": 6 }' ``` ## Choose Your Path ### For Merchants Start with payment processing basics to learn how to accept cryptocurrency payments with Vilna. ### For Exchanges Learn how to implement a scalable deposit infrastructure for your exchange. ### For Treasury Teams Begin with wallet monitoring to set up comprehensive asset tracking. ### For Developers Explore all tutorials and check out our **[API Reference](/apis/spec)** for complete technical documentation. ## Need Help? - 📚 Read the [Architecture Overview](/guides/architecture-overview) for detailed documentation - 🚀 Start with the [Quick Start Guide](/guides/quickstart) - 💬 Contact our support team through official channels