Help us improve
Share bugs, ideas, or general feedback.
From syncro-msp
Manages Syncro MSP invoices: creates, edits, tracks payments and statuses, handles line items and billing workflows via API patterns.
npx claudepluginhub wyre-technology/msp-claude-plugins --plugin syncroHow this skill is triggered — by the user, by Claude, or both
Slash command
/syncro-msp:invoicesThe summary Claude sees in its skill listing — used to decide when to auto-load this skill
Syncro invoices are the core of your billing workflow. Invoices can be created manually, generated from tickets, or produced automatically from recurring contracts. This skill covers invoice creation, line item management, payment processing, and billing workflows.
Manages QuickBooks Online invoices for MSPs: create, send, void, track recurring monthly services, project billing, line items, payment terms, and status lifecycle.
Automates Zoho Invoice operations (invoices, estimates, expenses, clients, payments) via Rube MCP and Composio toolkit. Always discovers current tool schemas before execution.
Reconciles Pax8 cloud subscriptions against Xero or QuickBooks Online invoices to identify billing gaps, unbilled subscriptions, quantity mismatches, and margin discrepancies.
Share bugs, ideas, or general feedback.
Syncro invoices are the core of your billing workflow. Invoices can be created manually, generated from tickets, or produced automatically from recurring contracts. This skill covers invoice creation, line item management, payment processing, and billing workflows.
A billing document sent to customers.
| Field | Type | Required | Description |
|---|---|---|---|
id | integer | System | Unique identifier |
number | string | System | Invoice number |
customer_id | integer | Yes | Billing customer |
date | date | Yes | Invoice date |
due_date | date | No | Payment due date |
status | string | Yes | Invoice status |
subtotal | decimal | System | Sum of line items |
tax | decimal | System | Calculated tax |
total | decimal | System | Final amount due |
balance | decimal | System | Remaining balance |
notes | text | No | Invoice notes |
terms | text | No | Payment terms |
| Status | Description |
|---|---|
| Draft | Not yet sent to customer |
| Sent | Emailed to customer |
| Viewed | Customer has viewed |
| Partial | Partially paid |
| Paid | Fully paid |
| Void | Cancelled/voided |
Individual billable items on an invoice.
| Field | Type | Required | Description |
|---|---|---|---|
id | integer | System | Unique identifier |
invoice_id | integer | Yes | Parent invoice |
product_id | integer | No | Product/service reference |
name | string | Yes | Item description |
quantity | decimal | Yes | Quantity |
price | decimal | Yes | Unit price |
taxable | boolean | No | Subject to tax |
total | decimal | System | Line total |
Payment received against an invoice.
| Field | Type | Required | Description |
|---|---|---|---|
id | integer | System | Unique identifier |
invoice_id | integer | Yes | Associated invoice |
amount | decimal | Yes | Payment amount |
payment_method | string | No | How payment was made |
reference | string | No | Check/transaction number |
date | date | Yes | Payment date |
notes | text | No | Payment notes |
POST /api/v1/invoices
Content-Type: application/json
Authorization: Bearer YOUR_API_KEY
{
"customer_id": 12345,
"date": "2024-02-15",
"due_date": "2024-03-15",
"notes": "Thank you for your business!",
"line_items": [
{
"name": "Managed Services - February 2024",
"quantity": 1,
"price": 500.00,
"taxable": true
},
{
"name": "On-site support - 2 hours",
"quantity": 2,
"price": 125.00,
"taxable": true
}
]
}
Invoices for a customer:
GET /api/v1/invoices?customer_id=12345
Unpaid invoices:
GET /api/v1/invoices?status=sent
Date range:
GET /api/v1/invoices?date_from=2024-01-01&date_to=2024-01-31
Paginated listing:
GET /api/v1/invoices?page=1
GET /api/v1/invoices/{id}
Response includes:
PUT /api/v1/invoices/{id}
Content-Type: application/json
{
"notes": "Updated payment terms",
"due_date": "2024-03-30"
}
POST /api/v1/invoices/{id}/line_items
Content-Type: application/json
{
"name": "Additional support hours",
"quantity": 1.5,
"price": 125.00,
"taxable": true
}
POST /api/v1/invoices/{id}/email
Content-Type: application/json
{
"to": "billing@acme.example.com",
"cc": "manager@acme.example.com",
"subject": "Invoice #1042 from MSP Company",
"message": "Please find attached your invoice for services rendered."
}
POST /api/v1/invoices/{id}/payments
Content-Type: application/json
{
"amount": 750.00,
"payment_method": "Credit Card",
"reference": "TXN-12345",
"date": "2024-02-20",
"notes": "Paid via online portal"
}
PUT /api/v1/invoices/{id}
Content-Type: application/json
{
"status": "void"
}
Review ticket time entries
Create invoice
Add line items
Review and send
Set up contract
Auto-generate invoices
Send and track
Monitor aging
Send reminders
Record payments
Reconcile
Review open tickets
Generate invoices
Review drafts
Send batch
{
"invoice": {
"id": 5678,
"number": "INV-2024-0042",
"customer_id": 12345,
"date": "2024-02-15",
"due_date": "2024-03-15",
"status": "sent",
"subtotal": 750.00,
"tax": 56.25,
"total": 806.25,
"balance": 806.25,
"notes": "Thank you for your business!",
"created_at": "2024-02-15T10:00:00Z",
"line_items": [
{
"id": 1001,
"name": "Managed Services - February 2024",
"quantity": 1,
"price": 500.00,
"taxable": true,
"total": 500.00
},
{
"id": 1002,
"name": "On-site support - 2 hours",
"quantity": 2,
"price": 125.00,
"taxable": true,
"total": 250.00
}
]
}
}
{
"payment": {
"id": 789,
"invoice_id": 5678,
"amount": 806.25,
"payment_method": "Credit Card",
"reference": "TXN-12345",
"date": "2024-02-20",
"notes": "Paid via online portal",
"created_at": "2024-02-20T14:30:00Z"
}
}
| Code | Message | Resolution |
|---|---|---|
| 400 | Invalid parameters | Check field values |
| 401 | Unauthorized | Verify API key |
| 404 | Invoice not found | Confirm invoice ID |
| 422 | Validation failed | Check required fields |
| 429 | Rate limited | Wait and retry |
"customer_id is required" - Invoice must have a customer
"date is required" - Invoice must have a date
"Cannot modify paid invoice" - Void instead of editing
"Payment exceeds balance" - Check payment amount
Syncro integrates with popular accounting software: