API Documentation
Integrate InvoiceFlow's powerful invoice generation capabilities into your applications, workflows, and business systems with our developer-friendly API.
API Coming Soon
InvoiceFlow's REST API is currently in development and will be available to Pro tier users in Q2 2026. This documentation provides a preview of planned endpoints and capabilities.
Join the waitlist below to get early access and development updates.
API Overview
The InvoiceFlow API will provide RESTful endpoints for programmatic invoice generation, client management, and business automation. Built with developer experience in mind, the API emphasizes simplicity, reliability, and comprehensive documentation.
Authentication
API key-based authentication with rate limiting and usage monitoring
Data Format
JSON request/response with comprehensive error handling and validation
Base URL (Planned)
https://api.invoiceflow.app/v1Authentication
API access requires a valid API key included in request headers. API keys will be available to InvoiceFlow Pro subscribers through the dashboard settings.
Header Authentication
curl -X GET "https://api.invoiceflow.app/v1/invoices" \
-H "Authorization: Bearer your-api-key" \
-H "Content-Type: application/json"Rate Limits
- • 100 requests per minute
- • 10,000 requests per day
- • Burst allowance: 200 requests
Response Headers
- •
X-RateLimit-Remaining - •
X-RateLimit-Reset - •
X-Request-ID
API Endpoints
/api/generate-invoiceGenerate a professional invoice with customizable templates, automatic calculations, and PDF export. Supports line items, taxes, discounts, and payment terms.
Request Body Example
{
"invoice": {
"number": "INV-2026-001",
"date": "2026-02-16",
"due_date": "2026-03-16",
"currency": "USD",
"status": "draft"
},
"from": {
"name": "Your Company",
"email": "hello@company.com",
"address": "123 Business St\nCity, State 12345",
"logo": "https://company.com/logo.png"
},
"to": {
"name": "Client Company",
"email": "billing@client.com",
"address": "456 Client Ave\nCity, State 67890"
},
"items": [
{
"description": "Web Development Services",
"quantity": 40,
"rate": 125.00,
"amount": 5000.00
},
{
"description": "Project Management",
"quantity": 10,
"rate": 100.00,
"amount": 1000.00
}
],
"subtotal": 6000.00,
"tax_rate": 8.25,
"tax_amount": 495.00,
"total": 6495.00,
"notes": "Payment due within 30 days",
"payment_terms": "Net 30"
}Response
{
"success": true,
"invoice": {
"id": "inv_2026_abc123",
"number": "INV-2026-001",
"status": "generated",
"pdf_url": "https://api.invoiceflow.app/v1/invoices/inv_2026_abc123/pdf",
"public_url": "https://invoice.link/inv_2026_abc123",
"created_at": "2026-02-16T10:30:00Z"
}
}/api/templatesRetrieve available invoice templates with preview images and customization options. Use template IDs with the generate-invoice endpoint for consistent branding.
Response
{
"templates": [
{
"id": "modern",
"name": "Modern Professional",
"description": "Clean, minimalist design for modern businesses",
"preview_url": "https://api.invoiceflow.app/templates/modern/preview.png",
"features": ["logo_support", "color_customization", "payment_links"],
"pro_only": false
},
{
"id": "classic",
"name": "Classic Business",
"description": "Traditional invoice layout with professional styling",
"preview_url": "https://api.invoiceflow.app/templates/classic/preview.png",
"features": ["letterhead", "terms_section", "tax_breakdown"],
"pro_only": false
},
{
"id": "branded",
"name": "Premium Branded",
"description": "Full branding customization with advanced features",
"preview_url": "https://api.invoiceflow.app/templates/branded/preview.png",
"features": ["custom_fonts", "advanced_layouts", "recurring_setup"],
"pro_only": true
}
]
}Additional Planned Endpoints
/api/invoices/api/invoices/{id}/api/invoices/{id}/api/clients/api/recurringError Handling
The API uses conventional HTTP response codes to indicate success or failure. Error responses include detailed messages and error codes for programmatic handling.
HTTP Status Codes
200Success400Bad Request401Unauthorized429Rate Limited500Server ErrorError Response Format
{
"error": {
"code": "validation_error",
"message": "Invalid invoice data",
"details": {
"field": "due_date",
"issue": "Date must be in future"
},
"request_id": "req_abc123"
}
}Webhooks (Planned)
Receive real-time notifications about invoice events, payment status changes, and client interactions through secure webhook endpoints.
Supported Events
- •
invoice.created - •
invoice.sent - •
payment.received - •
invoice.overdue
Security
- • HMAC-SHA256 signatures
- • Retry logic with backoff
- • Event deduplication
- • IP allowlist support
SDKs & Libraries (Planned)
Official SDKs and community libraries will be available for popular programming languages and frameworks.
JavaScript/Node.js
npm install @invoiceflow/sdk
Python
pip install invoiceflow
PHP
composer require invoiceflow/php
Get Early Access
Join our developer waitlist to get early access to the InvoiceFlow API, beta testing opportunities, and priority support during the initial rollout phase.