diff --git a/api-features/create-requests-query-status.mdx b/api-features/create-requests-query-status.mdx deleted file mode 100644 index 393239c..0000000 --- a/api-features/create-requests-query-status.mdx +++ /dev/null @@ -1,83 +0,0 @@ ---- -title: "Create Requests & Query Status" -description: "Request creation, management, and real-time status monitoring" ---- - -## Overview - -Request creation and status querying form the foundation of Request Network operations, enabling invoice generation and payment tracking throughout the lifecycle. - -## Request Creation - - - - Traditional invoicing workflows - - - - Direct payment collection - - - -## How It Works - -```mermaid -graph TD - A[Create Request] --> B[Generate ID] - B --> C[Store on IPFS] - C --> D[Index on Blockchain] - D --> E[Return Request] -``` - -**Process:** -1. **Create:** Submit request with payee, payer, and amount details -2. **Store:** Decentralized storage on IPFS -3. **Index:** Blockchain indexing for discovery -4. **Track:** Real-time status monitoring - -## Request Properties - -### Core Information -- **Payee:** Request creator/recipient -- **Payer:** Payment sender (optional) -- **Amount:** Payment amount and currency -- **Due Date:** Payment deadline - -### Payment Configuration -- **Payment Network:** ERC20, ETH, or custom -- **Accepted Tokens:** Supported payment currencies -- **Conversion:** Fiat-denominated crypto payments - -## Status Lifecycle - -### Request States -- `created` - Request initialized -- `pending` - Awaiting payment -- `paid` - Payment completed -- `cancelled` - Request cancelled - -### Payment States -- `no_payment` - No payment detected -- `partially_paid` - Partial payment received -- `paid` - Full payment completed -- `overpaid` - Payment exceeds requested amount - -## Query Methods - - - - Get specific request by ID - - - - Multiple requests in one call - - - -## Real-time Updates - -Combine with [Webhooks & Events](/api-features/webhooks-events) for instant status notifications. - -## Implementation Details - -See [API Reference - Requests](/api-reference/requests) for complete technical documentation. \ No newline at end of file diff --git a/use-cases/checkout.mdx b/use-cases/checkout.mdx index 88d4edc..6b4c24b 100644 --- a/use-cases/checkout.mdx +++ b/use-cases/checkout.mdx @@ -1,5 +1,6 @@ --- -title: "🛒 Checkout" +title: "Checkout" +icon: "cart-shopping" description: "Add crypto payment checkout to your e-commerce platform with seamless customer experience" --- diff --git a/use-cases/invoicing.mdx b/use-cases/invoicing.mdx index 20d5659..467a0d2 100644 --- a/use-cases/invoicing.mdx +++ b/use-cases/invoicing.mdx @@ -1,157 +1,162 @@ --- -title: "📄 Invoicing" +title: "Invoicing" +icon: "file-invoice" description: "Create crypto invoices with automatic payment detection and reconciliation" --- - -**AI-Generated Content** – This page was generated with AI assistance and may contain inaccuracies. While likely close to accurate, please verify critical details with the [stable documentation](https://docs.request.network) or [contact support](https://github.com/orgs/RequestNetwork/discussions). - - ## Overview -Transform your invoicing workflow with Request Network. Create professional invoices, accept payments in 553+ currencies across 10 EVM chains, and maintain perfect payment records with zero reconciliation errors. - -## 🚀 Quickstart: Create Your First Invoice +Bring instant, verifiable payments to your invoicing flow. Generate invoices in fiat or crypto, let customers pay in their preferred token across 9 EVM chains and 150+ currencies, and receive automatic reconciliation with on-chain payment detection - no manual tracking, no infrastructure overhead. - -**Get your first invoice paid in under 1 minute** +**What you get:** +- **Permanent records** - Invoices stored on IPFS create a tamper-proof audit trail +- **Multi-currency flexibility** - Invoice in USD, get paid in crypto with automatic conversion +- **Instant reconciliation** - Every invoice automatically linked to its on-chain payment +- **Cross-chain support** - Accept payments across 9 networks in 150+ currencies +- **Webhook automation** - Real-time payment confirmations for backend integration -*Interactive quickstart experience coming soon* - +## Quickstart - Generate a payment request with amount, recipient, and payment terms + Call the [Create Request endpoint](/api-features/create-requests) with invoice details - - Send the secure payment link to your customer - - - Customer pays with their preferred wallet and currency + + Use the payment data to show payment options, then guide the payer through wallet signature and submission - Real-time payment detection and automatic reconciliation + Use [webhooks](/api-features/webhooks-events) for real-time payment notifications -## EasyInvoice Demo +## Invoicing Demo + +Try the complete invoicing workflow with EasyInvoice: + + + Create invoices, accept crypto payments, and track payment status - all powered by Request Network API + + +**What you'll see:** +- Invoice creation with Request Network +- Multiple payment currencies and chains +- Automatic payment detection +- Real-time status updates via webhooks -See the complete invoicing workflow in action with our demo application: + +**Ready to integrate?** If EasyInvoice meets your needs, you can start using it immediately. For custom requirements, explore the integration options below. + + +## Integration Approaches + + +Not sure which approach fits your needs? [See our detailed comparison of integration approaches →](/resources/integration-approaches) + - Complete invoicing workflow with Google login, dashboard metrics, and real-time updates + **Go live in minutes** + + Use our hosted application with no development required. + + - Dashboard analytics + - Multi-currency support + - Immediate deployment + + [Try it now →](https://easyinvoice.request.network) - Experience the full EasyInvoice application + **Customize for your brand** + + Clone and modify the open-source application to match your needs. + + - Full source code access + - Custom branding + - Add your own features + + [Forking guide →](#) -**Demo Features:** -- Google authentication and user management -- Professional invoice creation with custom branding -- Real-time payment tracking and notifications -- Dashboard with payment analytics and metrics -- Multi-currency support (USD invoicing, crypto settlement) - -## Integration Options - -Choose the approach that best fits your needs: - - - - **Best for:** Quick deployment, immediate invoicing capabilities - - Deploy EasyInvoice directly for your business: - - Ready-to-use invoicing interface - - No development required - - Hosted solution with custom domain support - - [Deploy EasyInvoice →](#) - + + **Complete control** - - **Best for:** Custom branding, workflow modifications - - Customize EasyInvoice for your specific needs: - - Clone the repository - - Modify UI/UX to match your brand - - Add custom business logic - - Requires API key setup - - [Fork Repository →](#) | [Setup Guide →](#) - + Build a custom solution integrated with your existing systems. - - **Best for:** White-label solutions, full control - - Build your own invoicing system using Request Network API: - - Complete customization freedom - - Integrate with existing systems - - Pure API integration - - [API Documentation →](/api-features/payment-types) - - + - White-label ready + - Full customization + - Add fee layers + - Non-custodial architecture + + [API docs →](/api-features/create-requests) + ## Key API Features for Invoicing - Generate payment requests with flexible parameters and metadata + Generate payment requests with amount, recipient, and payment terms - Invoice in USD, get paid in crypto with automatic conversion + Fiat-denominated invoices settled in crypto with real-time price conversion - Set up subscription billing and automated recurring invoices + Pay multiple invoices in a single transaction - Real-time payment notifications for instant reconciliation + Automate recurring invoice generation for ongoing vendor relationships - Accept installment payments and partial settlements + Automatic detection and verification of payments across chains - Add invoice numbers, tax info, and business data + Build invoicing dashboards with historical invoice data and status tracking @@ -159,7 +164,7 @@ Choose the approach that best fits your needs: @@ -167,18 +172,18 @@ Choose the approach that best fits your needs: - Learn about payment types and advanced capabilities + See code examples for common invoicing workflows - Review supported chains and currencies + See which networks and tokens you can use diff --git a/use-cases/payment-detection.mdx b/use-cases/payment-detection.mdx index b51f94b..eb85cf4 100644 --- a/use-cases/payment-detection.mdx +++ b/use-cases/payment-detection.mdx @@ -1,282 +1,148 @@ --- -title: "💳 Payment Detection" +title: "Payment Detection" +icon: "credit-card" description: "Automatically detect and verify crypto payments with real-time blockchain monitoring and webhooks" --- - -**AI-Generated Content** – This page was generated with AI assistance and may contain inaccuracies. While likely close to accurate, please verify critical details with the [stable documentation](https://docs.request.network) or [contact support](https://github.com/orgs/RequestNetwork/discussions). - - ## Overview -Payment Detection monitors blockchain networks to automatically identify and verify when payments are completed. Add crypto payment acceptance to your existing systems without rebuilding your entire infrastructure. +Traditional crypto payments lack business context. You receive a transaction hash, but don't know which customer, invoice, or order it's for. Manual reconciliation is error-prone and doesn't scale. + +Request IDs solve this by attaching business context to every payment. Each request gets a unique Request ID that connects payments back to your specific invoice, order, or subscription with cryptographic certainty. + +**What you get:** +- **Automatic attribution** - Every payment linked to its request via Request ID +- **Multi-chain monitoring** - Track payments across 9 EVM chains in 150+ currencies +- **Real-time notifications** - Webhooks for instant payment confirmations +- **Zero manual work** - No spreadsheets, no guessing, no payment collisions + +[See how Request IDs prevent payment collisions (welcome page demo) →](/use-cases/welcome) ## When to Use Payment Detection - - You already have invoicing, billing, or business systems and just need crypto payment acceptance + + Multiple payments of the same amount create attribution problems - you can't tell which customer paid - - Collect payments at scale to one wallet address and automatically attribute each payment + + Processing hundreds or thousands of crypto payments where manual tracking doesn't scale - - Need instant payment confirmation without manual blockchain checking + + Managing separate wallets for each customer or transaction creates operational complexity - - Accept payments across Ethereum, Polygon, BSC, and 10+ EVM chains + + Accepting payments across multiple blockchains and need unified detection without managing multiple APIs ## Common Scenarios -### Donations with Attribution -Accept crypto donations to a single wallet and automatically attribute each to the correct donor, campaign, or cause. - -**Example:** A nonprofit collects donations from hundreds of donors to one Ethereum address. Each donation includes a Request ID, enabling automatic attribution and thank-you emails. - -### SaaS Adding Crypto Payments -Existing subscription or billing platform adds crypto as a payment option alongside credit cards. +### E-commerce Checkout +Accept crypto payments at scale without generating unique addresses for each customer. -**Example:** A SaaS company uses Stripe for card payments but wants to offer USDC payments. Payment Detection monitors for crypto payments and updates subscription status automatically. +**Example:** An e-commerce platform processes 10,000+ crypto orders per day. Each order gets a unique Request ID - customers pay to a single wallet address, and every payment is automatically attributed to the correct order. -### Manual Invoices + Crypto Detection -Send invoices through existing channels (email, PDF) and let customers pay in crypto with automatic detection. +### SaaS Subscriptions +Add crypto as a payment option for recurring billing alongside traditional payment methods. -**Example:** A freelancer emails invoices as PDFs with a Request ID. Clients pay in crypto, and the freelancer's accounting software automatically marks invoices as paid via webhook. +**Example:** A SaaS company uses Stripe for card payments but offers USDC for monthly subscriptions. Payment Detection automatically confirms renewals and updates subscription status without manual tracking. -### High-Volume Payment Collection -Collect thousands of payments without creating new wallet addresses for each transaction. +### Manual Invoices with Crypto Settlement +Send invoices through existing channels (email, PDF) and accept crypto payments with automatic reconciliation. -**Example:** An e-commerce platform processes 10,000+ crypto orders per day. Instead of generating unique addresses, each order gets a Request ID for attribution. +**Example:** A freelancer emails invoices as PDFs with a Request ID. When clients pay in crypto, the accounting software automatically marks invoices as paid via webhook - no manual checking required. ---- + +These scenarios all use automatic payment detection. [See technical details on detection methods and configuration →](/api-features/payment-detection) + ## How Payment Detection Works - - Customer sends crypto payment including the Request ID in the transaction reference - - - - Request Network continuously scans supported blockchains for transactions matching your requests + + When you create a request, it gets a unique Request ID for tracking - - When a matching payment is found, Request Network verifies amount, currency, and confirmations + + Customer sends payment to your wallet address - the Request ID is connected to the transaction - - Your system receives a real-time webhook with payment details and status + + Request Network monitors blockchains and matches payments to your requests - - Your business logic updates invoice status, triggers fulfillment, or sends receipts + + When a payment is detected, you receive a webhook notification with payment details ---- - -## Detection Features - -### Real-time Blockchain Scanning -- **Multi-chain monitoring:** Ethereum, Polygon, Arbitrum, Optimism, BSC, Gnosis, Fantom, Avalanche, and more -- **Sub-minute detection:** Typically detect payments within seconds of blockchain confirmation -- **Confirmation tracking:** Configurable confirmation thresholds for different security requirements + +Payment Detection powers all Request Network use cases: [invoicing](/use-cases/invoicing), [payouts](/use-cases/payouts), [payroll](/use-cases/payroll), [checkout](/use-cases/checkout), and [subscriptions](/use-cases/subscriptions). [See technical details on detection methods, confirmation thresholds, and implementation →](/api-features/payment-detection) + -### Payment Verification -- **Amount matching:** Verify exact payment amount or accept partial payments -- **Currency validation:** Support for 553+ tokens across all supported chains -- **Smart contract verification:** Detect payments through ERC20, native tokens, and conversion proxies - -### Webhook Integration -- **Event notifications:** `payment.detected`, `payment.confirmed`, `payment.failed` -- **Retry logic:** Automatic webhook retries with exponential backoff -- **Signature verification:** Cryptographically signed webhooks for security - ---- - -## API Integration +## Key API Features for Payment Detection - - Real-time payment notifications sent to your server + + Monitor blockchain transactions and match payments to requests automatically - - Poll for payment status on demand + + Real-time notifications when payments are detected, confirmed, or failed - - Technical details on detection methods and configuration + + Check request status and payment history on demand - - Check request status including payment state + + Retrieve detailed payment information including confirmations and amounts ---- - -## Detection-Only vs Full Workflows - -Understanding when to use standalone payment detection versus integrated workflows: - - - - **Best for:** Existing systems that just need crypto payment acceptance - - **What you handle:** - - Create invoices/requests in your existing system - - Generate Request IDs via API - - Include Request ID in payment instructions - - Receive webhooks when payments are detected - - Update your system based on payment status - - **What Request Network handles:** - - Blockchain monitoring across all chains - - Payment verification and confirmation tracking - - Webhook delivery with retry logic - - Permanent on-chain payment records - - **Example:** QuickBooks + crypto payments via Request Network detection - - - - **Best for:** Building new invoicing systems from scratch - - **What Request Network handles:** - - Invoice creation with structured data - - Payment link generation - - Payment processing - - Payment detection - - Complete payment lifecycle management - - **What you handle:** - - User interface and experience - - Customer management - - Business logic and workflows - - **Example:** [EasyInvoice](/use-cases/invoicing) - full-stack invoicing application - - [Learn more →](/use-cases/invoicing) - - - - **Payment detection powers all Request Network use cases:** - - - **[Payouts](/use-cases/payouts):** Detection confirms batch payment completion - - **[Payroll](/use-cases/payroll):** Detection verifies salary payments - - **[Checkout](/use-cases/checkout):** Detection triggers order fulfillment - - **[Subscriptions](/use-cases/subscriptions):** Detection handles recurring payments - - Each use case combines request creation with payment detection for specific workflows. - - - ---- - -## Implementation Example - -Here's a minimal example of using payment detection with webhooks: - - -```javascript Node.js - Create Request -const response = await fetch('https://api.request.network/requests', { - method: 'POST', - headers: { - 'Authorization': `Bearer ${API_KEY}`, - 'Content-Type': 'application/json' - }, - body: JSON.stringify({ - currency: 'USDC-matic', - expectedAmount: '100.00', - paymentAddress: '0x...your-wallet', - reason: 'Invoice #12345' - }) -}); - -const { requestId } = await response.json(); -// Include requestId in payment instructions to customer -``` - -```javascript Node.js - Webhook Handler -app.post('/webhooks/request', (req, res) => { - const { eventType, requestId, paymentAmount, status } = req.body; - - if (eventType === 'payment.detected') { - // Payment detected on blockchain - console.log(`Payment detected for ${requestId}: ${paymentAmount}`); - - // Update your system - await updateInvoiceStatus(requestId, 'PAID'); - await sendReceiptEmail(requestId); - } - - res.status(200).send('OK'); -}); -``` - -```python Python - Webhook Handler -from flask import Flask, request - -@app.route('/webhooks/request', methods=['POST']) -def handle_webhook(): - data = request.json - - if data['eventType'] == 'payment.detected': - request_id = data['requestId'] - payment_amount = data['paymentAmount'] - - # Update your system - update_invoice_status(request_id, 'PAID') - send_receipt_email(request_id) - - return '', 200 -``` - - ---- +## What's Next? -## Supported Networks & Currencies - -### Mainnet Networks -- **Ethereum:** ETH, USDC, USDT, DAI, and 200+ ERC20 tokens -- **Polygon:** MATIC, USDC, USDT, DAI, and 150+ tokens -- **Arbitrum, Optimism, BSC, Gnosis, Fantom, Avalanche:** Full ERC20 support - -### Detection Speed -- **Ethereum:** ~15 seconds per confirmation -- **Polygon:** ~2 seconds per confirmation -- **Layer 2s:** Sub-second to ~2 seconds - -### Testnet Support -Available on Sepolia, Mumbai, and other testnets for development - -[View all supported chains and currencies →](/resources/supported-chains-and-currencies) - ---- - -## Next Steps - - - - Set up authentication and create your first request - - - - Set up real-time payment notifications + + + Set up your account and get API credentials - - Learn how to check payment status programmatically + + Technical deep dive on detection methods and configuration - - Manage API keys and monitor requests in real-time + + See which networks and tokens you can use diff --git a/use-cases/payouts.mdx b/use-cases/payouts.mdx index 9f518b9..bb8a084 100644 --- a/use-cases/payouts.mdx +++ b/use-cases/payouts.mdx @@ -1,5 +1,6 @@ --- -title: "💰 Payouts" +title: "Payouts" +icon: "money-bill-transfer" description: "Send batch payments to multiple recipients with automatic tracking and reconciliation" --- diff --git a/use-cases/payroll.mdx b/use-cases/payroll.mdx index 2adff37..d1aefe5 100644 --- a/use-cases/payroll.mdx +++ b/use-cases/payroll.mdx @@ -1,5 +1,6 @@ --- -title: "💼 Payroll" +title: "Payroll" +icon: "briefcase" description: "Pay your team in crypto with automated payroll runs and compliance tracking" --- diff --git a/use-cases/subscriptions.mdx b/use-cases/subscriptions.mdx index 35e3f3e..0607483 100644 --- a/use-cases/subscriptions.mdx +++ b/use-cases/subscriptions.mdx @@ -1,5 +1,6 @@ --- -title: "🔄 Subscriptions" +title: "Subscriptions" +icon: "rotate" description: "Implement recurring crypto payments for subscription-based business models" ---