Skip to main content
The Billing & Invoicing system streamlines financial documentation by automatically generating itemized invoices from clinical notes or allowing manual bill creation with preset templates.

Overview

Billing supports two primary workflows:

AI-Generated Invoices

Automatically extract billable items from SOAP notes using AI, then review and adjust before finalizing

Manual Invoice Creation

Build invoices from scratch or use predefined templates for common visit types

Bill Item Types

All billable items are categorized into 8 standard types:

Procedure

Surgical or medical procedures performed during the visitExamples:
  • Spay/neuter surgery
  • Dental cleaning
  • Wound closure
  • Tumor removal

Medication

Pharmaceuticals administered or prescribedExamples:
  • Rabies vaccination
  • DHPP vaccination
  • Antibiotic prescriptions
  • Flea/tick prevention (monthly supply)

Diagnostic

Non-laboratory diagnostic servicesExamples:
  • Physical examination
  • Heartworm test
  • FIV/FeLV test
  • Blood pressure measurement

Invoice Templates

Pre-built templates for common visit types streamline billing:
Items included:
  • Annual Wellness Exam (Service) - $65
  • Rabies Vaccination (Medication) - $25
  • Complete Blood Count (Lab Test) - $55
  • Heartworm Test (Diagnostic) - $35
  • Fecal Analysis (Lab Test) - $28
Total: $208.00Use case: Routine annual checkup with standard preventive care
Items included:
  • Annual Wellness Exam (Service) - $65
  • Rabies Vaccination (Medication) - $25
  • DHPP Vaccination (Medication) - $28
  • Heartworm Test (Diagnostic) - $35
  • Flea/Tick Prevention 3-month supply (Medication) - $60
Total: $213.00Use case: Comprehensive wellness visit with extended preventive medications
Items included:
  • Dental Cleaning (Procedure) - $250
  • Dental X-Rays (Imaging) - $150
  • Pre-anesthetic Blood Work (Lab Test) - $95
  • IV Catheter & Fluids (Procedure) - $75
  • Anesthesia (Procedure) - $200
Total: $770.00Use case: Full dental cleaning under anesthesia with radiographs
Items included:
  • Surgical Procedure (Procedure) - $500
  • Anesthesia & Monitoring (Procedure) - $250
  • IV Fluids (Supply) - $50
  • Pain Management (3 days) (Medication) - 45(3×45 (3 × 15)
  • E-Collar (Supply) - $20
  • Suture Removal Follow-up (Service) - $0 (complimentary)
Total: $865.00Use case: Standard surgical procedure with post-op care and supplies

AI-Powered Invoice Generation

The system can automatically generate bills from SOAP notes:

How It Works

  1. Trigger AI generation: Click “AI Generate” button
  2. AI analyzes SOAP notes: Extracts procedures, medications, diagnostics from clinical documentation
  3. Matches to billing codes: Maps clinical activities to billable item types with standard pricing
  4. Presents for review: Displays generated invoice in editable table format
  5. Staff reviews and adjusts: Modify quantities, pricing, or add/remove items as needed
  6. Finalize: Lock invoice for payment processing
const handleGenerateAI = async () => {
  setIsGenerating(true);
  // AI analyzes SOAP notes and extracts billable items
  await new Promise(r => setTimeout(r, 1500));
  setBillItems(TEMPLATE_PRESETS.wellness);
  setIsGenerating(false);
  setSuccess('Billing items generated from SOAP notes');
};
Always review AI-generated invoices before finalizing. The system may not capture all nuances of the visit or may suggest items that weren’t actually performed.

Manual Invoice Editing

Bill Items Table

Interactive table for adding and editing line items:
ColumnInput TypeDescription
Item NameText inputDescription of the billable item
TypeDropdown selectOne of 8 item type categories
QtyNumber inputQuantity of items (minimum 1)
Unit CostNumber inputPrice per unit in dollars (supports decimals)
TotalCalculated displayAuto-calculated: Qty × Unit Cost
ActionsDelete buttonRemove item from invoice

Adding New Items

  1. Click “Add Item” button below the table
  2. New blank row appears at bottom
  3. Fill in item details:
    {
      id: Date.now(), // Unique identifier
      name: '',
      type: 'Other',
      quantity: 1,
      unitCost: 0,
      total: 0
    }
    
  4. Total auto-calculates as you enter quantity and unit cost

Editing Existing Items

  • Click in Qty column
  • Enter new number
  • Total recalculates automatically
if (field === 'quantity' || field === 'unitCost') {
  updated.total = Number(updated.quantity) * Number(updated.unitCost);
}

Financial Calculations

The system displays three calculated totals:

Subtotal

Sum of all item totals before tax
const subtotal = billItems.reduce(
  (sum, item) => sum + (item.total || 0), 
  0
);

Tax

Configurable tax rate applied to subtotal
const TAX_RATE = 0.0; // 0% by default
const tax = subtotal * TAX_RATE;
Most veterinary services are tax-exempt. Adjust TAX_RATE constant if your jurisdiction requires sales tax.

Total Due

Final amount owed by client
const total = subtotal + tax;
Displayed prominently in large green text

Currency Formatting

All monetary values use US dollar formatting:
const formatCurrency = (amount: number) =>
  new Intl.NumberFormat('en-US', {
    style: 'currency',
    currency: 'USD'
  }).format(amount);
Example output: $208.00

Notes Field

Free-text area below the bill items for:
  • Payment terms and conditions
  • Discount explanations
  • Special instructions for client
  • Internal accounting notes
<Textarea
  value={notes}
  onChange={e => setNotes(e.target.value)}
  placeholder="Add any additional notes or comments..."
/>
Use notes to document:
  • Applied discounts (“10% senior pet discount applied”)
  • Payment plans (“Client authorized 3-month payment plan”)
  • Insurance claims (“Invoice submitted to PetPlan insurance”)

Export and Distribution

PDF Export

Button: “PDF”Generates printable invoice in PDF format with:
  • Clinic letterhead and contact info
  • Client and pet details
  • Itemized bill table
  • Payment terms
Use for:
  • In-person payment collection
  • Client records
  • Physical mailing

Email Sending

Button: “Email”Sends invoice directly to client’s email address with:
  • PDF attachment
  • Payment instructions
  • Online payment link (if configured)
Use for:
  • Remote clients
  • Post-appointment billing
  • Payment reminders

Copy to Clipboard

Button: “Copy List”Copies formatted invoice text:
Annual Wellness Exam (1x) - $65.00
Rabies Vaccination (1x) - $25.00
Complete Blood Count (1x) - $55.00

Total: $208.00
Use for:
  • Pasting into other systems
  • Quick text messaging
  • Internal documentation

Finalization Workflow

1

Review all items

Verify quantities, pricing, and item types are accurate
2

Add notes if needed

Document discounts, payment terms, or special conditions
3

Click 'Finalize' button

Locks the invoice and marks it ready for payment
Finalized invoices cannot be edited. Create a credit memo or adjustment invoice for corrections.
4

Distribute to client

Send via email, print PDF, or process payment in-person

Status Messages

The system displays contextual feedback:
  • “Billing items generated from SOAP notes”: AI generation completed
  • “Copied to clipboard!”: Invoice text copied successfully
  • “Invoice finalized”: Bill locked and ready for payment
  • “Email sent to [client email]”: Invoice delivered successfully

Best Practices

  1. Ensure complete SOAP notes: AI extracts from clinical documentation, so thorough notes = accurate bills
  2. Review every AI suggestion: Don’t blindly accept generated items
  3. Check quantities: AI may default to 1× for all items; adjust multi-day medications
  4. Verify pricing: Ensure unit costs match current fee schedule
  5. Add manual items: Include any procedures/supplies not captured in SOAP notes
  • Standard fee schedule: Maintain a reference document with current pricing for all services
  • Regular updates: Review and update template pricing quarterly
  • Special pricing: Document any client-specific discounts or payment plans in notes
  • Supply costs: Track consumable supply costs to ensure margins are maintained
Choose Standard Visit for:
  • Annual wellness exams
  • Basic preventive care
  • Single-issue sick visits
Choose Wellness Template for:
  • Comprehensive annual care
  • Clients purchasing extended preventive supplies
  • Multi-pet wellness visits
Choose Dental Template for:
  • Full dental cleanings
  • Tooth extractions
  • Oral surgery procedures
Choose Surgery Template for:
  • Spay/neuter procedures
  • Tumor removals
  • Orthopedic surgeries
  • Any procedure requiring anesthesia and post-op care
Always include in notes field:
  1. Payment method: Cash, credit, check, insurance
  2. Discounts applied: Percentage and reason
  3. Payment plans: Terms and schedule
  4. Insurance: Claim numbers and status
  5. Outstanding balance: If not paid in full

SOAP Notes

Clinical documentation that feeds AI invoice generation

Templates

Configure custom invoice templates and pricing

Payment Processing

Accept and track client payments

Financial Reports

Revenue analytics and financial reporting

Build docs developers (and LLMs) love