mcpbeat

Invoice Automation

claude-office-skills/invoice automation

Automate invoice generation, sending, tracking, and payment reconciliation across accounting platforms

2k tokens
context cost
the whole folder, loaded on every use
1
files
instructions only
0
copies elsewhere
how many repositories repackaged it
353
stars on the repo
on the repository, not the skill itself

Install

one command, takes just this skill from the repository
npx skills add https://github.com/claude-office-skills/skills --skill Invoice Automation

The instruction itself

19 sections, as written by the author

Invoice Automation

Comprehensive invoice automation skill for generating, sending, tracking, and reconciling invoices across multiple accounting platforms.

Core Workflows

1. Invoice Generation

INVOICE CREATION FLOW:
┌─────────────────┐
│  Customer Data  │
└────────┬────────┘
         ▼
┌─────────────────┐
│  Line Items     │
│  - Products     │
│  - Services     │
│  - Quantities   │
└────────┬────────┘
         ▼
┌─────────────────┐
│  Apply Template │
│  - Branding     │
│  - Terms        │
│  - Tax rates    │
└────────┬────────┘
         ▼
┌─────────────────┐
│  Generate PDF   │
└─────────────────┘

2. Multi-Platform Integration

| Platform | Capabilities |

|----------|-------------|

| QuickBooks | Full CRUD, payments, reports |

| Xero | Invoices, contacts, bank feeds |

| FreshBooks | Time tracking, expenses, invoices |

| Stripe | Recurring, one-time, subscriptions |

| Wave | Free invoicing, receipts |

| Zoho Invoice | Multi-currency, templates |

3. Automated Workflows

Auto-Invoice from Time Tracking:

trigger: weekly_timesheet_approved
actions:
  - aggregate_billable_hours
  - calculate_totals
  - generate_invoice
  - send_to_client
  - log_to_accounting

Payment Reminder Sequence:

reminders:
  - days_before_due: 3
    template: friendly_reminder
  - days_after_due: 1
    template: payment_due
  - days_after_due: 7
    template: overdue_notice
  - days_after_due: 30
    template: final_notice

Invoice Templates

Standard Invoice Template

## INVOICE

**Invoice Number:** INV-{YYYY}{MM}-{####}
**Date:** {issue_date}
**Due Date:** {due_date}

### Bill To:
{customer_name}
{customer_address}
{customer_email}

### Items:
| Description | Qty | Unit Price | Amount |
|-------------|-----|------------|--------|
| {item_1}    | {q} | ${price}   | ${amt} |
| {item_2}    | {q} | ${price}   | ${amt} |

**Subtotal:** ${subtotal}
**Tax ({tax_rate}%):** ${tax_amount}
**Total Due:** ${total}

### Payment Methods:
- Bank Transfer: {bank_details}
- Credit Card: {payment_link}
- PayPal: {paypal_email}

Recurring Invoice Setup

recurring_invoice:
  customer_id: "cust_123"
  frequency: monthly
  day_of_month: 1
  items:
    - description: "Monthly Retainer"
      quantity: 1
      unit_price: 5000
  auto_send: true
  payment_terms: net_30
  reminder_enabled: true

Payment Tracking

Status Dashboard

PAYMENT STATUS OVERVIEW:
┌──────────────────────────────────────────┐
│  Outstanding    │ $45,000  │ 12 invoices │
│  Overdue        │ $8,500   │ 3 invoices  │
│  Paid (30 days) │ $125,000 │ 28 invoices │
│  Pending        │ $15,000  │ 5 invoices  │
└──────────────────────────────────────────┘

Aging Report

ACCOUNTS RECEIVABLE AGING:
┌─────────────┬──────────┬─────────┐
│ Period      │ Amount   │ Count   │
├─────────────┼──────────┼─────────┤
│ Current     │ $25,000  │ 8       │
│ 1-30 days   │ $12,000  │ 4       │
│ 31-60 days  │ $5,000   │ 2       │
│ 61-90 days  │ $2,500   │ 1       │
│ 90+ days    │ $1,000   │ 1       │
└─────────────┴──────────┴─────────┘

Reconciliation Workflows

Bank Feed Matching

reconciliation_rules:
  - match_type: exact_amount
    tolerance: 0
    auto_match: true
  - match_type: invoice_reference
    field: memo
    auto_match: true
  - match_type: customer_name
    fuzzy_match: 0.9
    auto_match: false
    flag_for_review: true

Multi-Currency Support

currency_settings:
  base_currency: USD
  supported:
    - EUR
    - GBP
    - JPY
    - CNY
  exchange_rate_source: openexchangerates
  update_frequency: daily
  auto_convert: true

API Integration Examples

QuickBooks Invoice Creation

const invoice = {
  CustomerRef: { value: "123" },
  Line: [
    {
      DetailType: "SalesItemLineDetail",
      Amount: 1000,
      SalesItemLineDetail: {
        ItemRef: { value: "1" },
        Qty: 10,
        UnitPrice: 100
      }
    }
  ],
  DueDate: "2024-02-15",
  EmailStatus: "NeedToSend"
};

Stripe Invoice

const invoice = await stripe.invoices.create({
  customer: 'cus_xxx',
  collection_method: 'send_invoice',
  days_until_due: 30,
  auto_advance: true
});

await stripe.invoiceItems.create({
  customer: 'cus_xxx',
  invoice: invoice.id,
  price: 'price_xxx',
  quantity: 1
});

await stripe.invoices.sendInvoice(invoice.id);

Best Practices

  • Consistent Numbering: Use sequential, searchable invoice numbers
  • Clear Terms: Always specify payment terms and accepted methods
  • Timely Sending: Send invoices immediately upon delivery
  • Automated Reminders: Set up reminder sequences for overdue invoices
  • Regular Reconciliation: Match payments to invoices weekly
  • Backup Records: Maintain copies in multiple systems

Common Triggers

| Trigger | Action |

|---------|--------|

| Project completed | Generate final invoice |

| Timesheet approved | Bill for hours |

| Subscription renewal | Create recurring invoice |

| Payment received | Update status, send receipt |

| Invoice overdue | Send reminder |

| Month end | Generate aging report |

How to use it

Copy the folder

Take claude-office-skills/invoice automation from the repository into ~/.claude/skills for personal use, or into .claude/skills inside a project.

Check the name does not clash

The agent identifies a skill by the name field in its header. Two skills with the same name cannot sit side by side — one of them will be ignored.