Send invoices and collect payments across chains
Create invoices, accept partial payments, and automatically split revenue between sellers, platforms, and partners. Built for marketplaces, data sellers, and modern businesses.
Everything you need for invoicing
A complete invoicing system built for modern businesses and marketplaces
Generate invoices programmatically via API. Support draft and sent statuses, with automatic PDF generation.
Accept payments on any blockchain network. Configure payment rails per network and asset combination.
Enable instalment payments for large contracts. Track payment progress and remaining balances.
Automatically split payments between sellers, platforms, and partners. Configure splits at the profile level.
Use escrow wallets for secure transactions. Funds are held until conditions are met, then distributed.
Monitor invoice status, payment history, and revenue analytics. Track overdue invoices and collection rates.
How invoicing works
Four simple steps to start invoicing
Set up an invoicing profile with payment rails, collection mode, and payout splits. Profiles are reusable templates.
Generate invoices via API. Specify customer, amount, currency, and due date. Invoices inherit payment config from profiles.
Customers pay invoices using x402 protocol. Payments are tracked automatically, supporting partial payments if enabled.
Funds are automatically distributed according to configured splits. Escrow mode holds funds until conditions are met.
Accept partial payments for large contracts
Enable partial payment support on your invoicing profiles to accept instalment payments. Perfect for large data contracts, enterprise deals, or any scenario where customers need to pay in chunks.
Enable on Profile
Set supports_partial_payments: true when creating or updating a profile.
Track Progress
Monitor payment progress, remaining balance, and invoice status as payments come in.
1import { OrvionClient } from "@orvion/sdk";23const client = new OrvionClient({4 apiKey: process.env.AGENTPAY_API_KEY!5});67// Create invoice with partial payments enabled8const invoice = await client.invoices.create({9 customer_name: "Acme Corp",10 amount: 50000,11 currency: "EUR",12 profile_id: "profile_123", // Profile with supports_partial_payments: true13 status: "sent"14});1516// Customer can pay in instalments17// First payment: 20,000 EUR18await client.collections.recordPayment({19 invoice_id: invoice.id,20 amount: 20000,21 currency: "EUR"22});2324// Invoice status: "partially_paid"25// Remaining balance: 30,000 EUR
Automatically split revenue between parties
Configure payout splits at the profile level. When invoices are paid, funds are automatically distributed according to your split configuration. Perfect for marketplaces, platforms, and multi-party transactions.
Direct Mode
Payments go directly to seller's wallet. Simple and fast.
Escrow Mode
Payments go to escrow wallet first, then split according to configuration.
Flexible Splits
Percentage or fixed amount splits. Multiple beneficiaries supported.
1from orvion import OrvionClient2import os34client = OrvionClient(api_key=os.environ["AGENTPAY_API_KEY"])56# Create profile with escrow mode and splits7profile = client.invoicing_profiles.create(8 name="Marketplace – Base USDC – 10% fee",9 network="base-mainnet",10 asset="USDC",11 collection_mode="escrow",12 escrow_address="0xAGENTPAY_ESCROW",13 supports_partial_payments=True14)1516# Configure payout splits: 90% seller, 10% platform17client.invoicing_profiles.set_splits(18 profile_id=profile.id,19 splits=[20 {21 "beneficiary_address": "0xSELLER_WALLET",22 "label": "merchant",23 "share_type": "percentage",24 "share_value": 9025 },26 {27 "beneficiary_address": "0xPLATFORM_WALLET",28 "label": "platform_fee",29 "share_type": "percentage",30 "share_value": 1031 }32 ]33)3435# All invoices using this profile will automatically split payments
Create invoices with one API call
Generate invoices programmatically. Specify customer, amount, and profile. We handle payment collection, tracking, and payouts.
1curl -X POST "https://api.orvion.com/v1/invoices" \2 -H "Authorization: Bearer $AGENTPAY_API_KEY" \3 -H "Content-Type: application/json" \4 -d '{5 "customer_name": "Acme Corp",6 "customer_email": "[email protected]",7 "amount": "1000.00",8 "currency": "USDC",9 "profile_id": "profile_123",10 "status": "sent",11 "due_at": "2025-12-31T23:59:59Z"12 }'
Common questions
Start invoicing today
Create your first invoicing profile, send invoices via API, and start collecting payments across any blockchain network.