accounts-payable-management

Manage supplier invoices and vendor payments with automated receipt matching, payment scheduling, early discount optimization, and reconciliation workflows

11 stars

Best use case

accounts-payable-management is best used when you need a repeatable AI agent workflow instead of a one-off prompt.

Manage supplier invoices and vendor payments with automated receipt matching, payment scheduling, early discount optimization, and reconciliation workflows

Teams using accounts-payable-management should expect a more consistent output, faster repeated execution, less prompt rewriting.

When to use this skill

  • You want a reusable workflow that can be run more than once with consistent structure.

When not to use this skill

  • You only need a quick one-off answer and do not need a reusable workflow.
  • You cannot install or maintain the underlying files, dependencies, or repository context.

Installation

Claude Code / Cursor / Codex

$curl -o ~/.claude/skills/accounts-payable-management/SKILL.md --create-dirs "https://raw.githubusercontent.com/finsilabs/awesome-ecommerce-skills/main/skills/business-operations/accounts-payable-management/SKILL.md"

Manual Installation

  1. Download SKILL.md from GitHub
  2. Place it in .claude/skills/accounts-payable-management/SKILL.md inside your project
  3. Restart your AI agent — it will auto-discover the skill

How accounts-payable-management Compares

Feature / Agentaccounts-payable-managementStandard Approach
Platform SupportNot specifiedLimited / Varies
Context Awareness High Baseline
Installation ComplexityUnknownN/A

Frequently Asked Questions

What does this skill do?

Manage supplier invoices and vendor payments with automated receipt matching, payment scheduling, early discount optimization, and reconciliation workflows

Where can I find the source code?

You can find the source code on GitHub using the link provided at the top of the page.

SKILL.md Source

# Accounts Payable Management

## Overview

Accounts payable (AP) management covers ingesting supplier invoices, matching them against purchase orders and goods receipts, scheduling payments, capturing early-payment discounts, and reconciling against the vendor ledger. For most e-commerce merchants, a dedicated AP tool or accounting software integration handles this far better than custom code.

## When to Use This Skill

- When your AP team is manually keying invoices from PDFs into spreadsheets and payment delays are causing vendor friction
- When you need automated three-way matching between purchase orders, goods receipts, and invoices
- When early-payment discounts (e.g., 2/10 net 30) are being missed because payment scheduling is reactive
- When preparing for an ERP integration (NetSuite, SAP, QuickBooks) and need a clean AP data model
- When audit requirements demand an immutable record of every invoice approval, payment authorization, and GL posting

## Core Instructions

### Step 1: Determine your current setup and choose the right AP tool

| Store Stage | Recommended Tool | Why |
|-------------|-----------------|-----|
| **Small (< $1M revenue)** | QuickBooks Online or Xero | Both handle AP with supplier invoices, payment scheduling, and bank reconciliation; integrate with Shopify/WooCommerce via native connectors |
| **Mid-market ($1M–$20M)** | BILL (formerly Bill.com) or Tipalti | BILL handles invoice capture via email, approval workflows, ACH/check payments, and vendor portals; Tipalti adds mass global payments |
| **Enterprise ($20M+)** | NetSuite ERP or SAP Business One | Full ERP with three-way matching, GL coding, and multi-entity consolidation |
| **Custom / Headless** | Build an AP data model + integrate with Stripe Treasury or Plaid for payments | For platforms with non-standard procurement workflows |

### Step 2: Connect your e-commerce platform to your AP system

#### Shopify

**Connect Shopify to QuickBooks Online:**
1. Install **QuickBooks Online** connector from the Shopify App Store (free, by Intuit) or use **A2X** (paid, more reliable for high-volume)
2. The connector syncs Shopify sales, refunds, and payouts to QuickBooks automatically
3. In QuickBooks → Expenses → Vendors, manage your supplier invoices and payment schedules
4. Enter vendor invoices manually in QuickBooks or forward supplier invoices to your QuickBooks inbox email (QuickBooks extracts invoice data via OCR)

**Connect Shopify to BILL:**
1. Install **BILL** from the Shopify App Store or connect via Zapier
2. BILL receives supplier invoices via email (forward to your BILL inbox address)
3. BILL extracts invoice data, routes for approval based on your rules, and schedules ACH or check payments
4. For Shopify inventory vendors: create purchase orders in BILL and match incoming invoices against them

#### WooCommerce

**Connect WooCommerce to QuickBooks:**
1. Install the **QuickBooks Online** plugin from WooCommerce.com (official extension)
2. Configure sync settings: sales orders, refunds, and fees sync automatically
3. Manage supplier invoices in QuickBooks → Expenses

**Connect WooCommerce to Xero:**
1. Install **Xero** from WooCommerce.com or use a third-party connector like **WooSync** or **Xero for WooCommerce** by Codisto
2. Xero handles AP with a built-in bills module, payment approvals, and bank reconciliation

#### BigCommerce

**Connect BigCommerce to QuickBooks:**
1. Use **QuickBooks Online** connector from the BigCommerce App Marketplace or **A2X Accounting**
2. A2X is specifically designed for e-commerce accounting and handles Shopify/WooCommerce/BigCommerce → QuickBooks sync accurately

**Connect BigCommerce to NetSuite:**
1. Use the **NetSuite Connector** from the BigCommerce App Marketplace or a middleware like **Celigo** or **Boomi**
2. NetSuite provides enterprise AP with full three-way matching, multi-entity support, and audit trails

### Step 3: Set up invoice capture and approval workflows

#### Using BILL (best-in-class dedicated AP tool)

1. **Invoice capture:** Forward supplier invoices to your BILL inbox email or have suppliers submit directly via a BILL supplier portal link
2. **AP inbox in BILL:** Review captured invoices at BILL → Payables → Inbox; BILL's OCR extracts vendor name, invoice number, date, amount, and due date
3. **Approval routing:** Go to BILL → Settings → Approval Policies to configure amount-based routing:
   - Under $500: auto-approve
   - $500–$5,000: AP Manager approval
   - $5,000–$50,000: Controller approval
   - Over $50,000: CFO approval
4. **Approvers** receive an email with a one-click approve/reject link
5. **Payment scheduling:** BILL schedules payments based on vendor due dates; you can also set to pay X days before due date to capture 2/10 early discounts

#### Using QuickBooks Online for smaller operations

1. Go to **Expenses → Vendors → [Vendor] → New Transaction → Bill**
2. Enter invoice details manually or forward the invoice PDF to your QuickBooks inbox email
3. Set the due date based on vendor terms (e.g., net 30)
4. To pay: go to **Expenses → Pay Bills**, select invoices due, choose payment method (bank transfer, check)
5. QuickBooks tracks outstanding AP and generates an aging report (Reports → Accounts Payable Aging)

### Step 4: Implement three-way matching

Three-way matching compares: the purchase order (what you ordered), the goods receipt (what you received), and the vendor invoice (what the vendor is charging).

**In NetSuite:**
- NetSuite handles three-way matching natively — create a PO, receive the goods (Inventory → Receive Inventory), then match the vendor bill against both; discrepancies auto-flag as exceptions

**In QuickBooks:**
- QuickBooks does not do three-way matching automatically
- Workflow: create a PO in QuickBooks (Expenses → Purchase Orders), receive the items in inventory, then match the bill to the PO manually
- Third-party add-on: **Zahara** or **Lightyear** add PO matching and approval automation on top of QuickBooks

**In BILL:**
- BILL supports PO matching — create POs in BILL, then when an invoice arrives, BILL prompts you to match it against an open PO

### Step 5: Capture early-payment discounts

Common vendor terms are "2/10 net 30" — 2% discount if paid within 10 days, full amount due in 30.

**In BILL:**
1. In your vendor record, set payment terms to "2/10 Net 30"
2. BILL automatically flags invoices where early payment would save money
3. Go to BILL → Payables → Early Pay to see all discount opportunities sorted by savings amount

**In QuickBooks:**
1. When entering a vendor bill, set the payment terms to "2/10 Net 30"
2. QuickBooks calculates the discount amount automatically
3. When paying: select the bill and QuickBooks shows the discount available if paid today

**Key rule:** Set a weekly payment run on a fixed day (e.g., every Tuesday). Pay all invoices due in the next 10 days. This captures early discounts systematically without manual review.

### Step 6: Reconcile and report

#### AP aging report

Run monthly to see all outstanding payables by age:
- **QuickBooks:** Reports → Accounts Payable Aging Summary
- **BILL:** Reports → AP Aging
- **Xero:** Reports → Aged Payables Summary

This shows you what's current, 30–60 days, 60–90 days, and 90+ days overdue.

#### Cash flow forecast

- **QuickBooks:** Reports → Cash Flow Forecast (shows projected outflows based on bill due dates)
- **Float** (add-on for QuickBooks/Xero): provides a more accurate 90-day cash flow forecast including AP obligations

#### Custom / Headless — core AP data model

```typescript
// Minimal AP invoice schema for custom implementations
interface ApInvoice {
  id: string;
  vendorId: string;
  invoiceNumber: string;      // unique per vendor
  invoiceDate: Date;
  dueDate: Date;
  currency: string;           // 'USD'
  totalCents: number;
  paidCents: number;          // increments as payments are applied
  status: 'received' | 'pending_approval' | 'approved' | 'scheduled' | 'paid' | 'disputed';
  poId?: string;              // linked purchase order for matching
  earlyDiscountRate?: number; // e.g., 0.02 for 2%
  earlyDiscountDeadline?: Date;
}

// Identify invoices where early payment saves money
function findEarlyPaymentOpportunities(
  invoices: ApInvoice[],
  todayDate: Date
): { invoiceId: string; discountCents: number; deadline: Date }[] {
  return invoices
    .filter(inv => inv.status === 'approved')
    .filter(inv => inv.earlyDiscountRate && inv.earlyDiscountDeadline! > todayDate)
    .map(inv => ({
      invoiceId: inv.id,
      discountCents: Math.round(inv.totalCents * inv.earlyDiscountRate!),
      deadline: inv.earlyDiscountDeadline!,
    }))
    .sort((a, b) => b.discountCents - a.discountCents);
}
```

## Best Practices

- **Separate invoice approval from payment authorization** — the person who approves an invoice should not be the person who initiates the payment; this is a basic internal control
- **Run payment runs on a fixed weekly cadence** — predictable payment dates reduce bank fees, simplify cash forecasting, and vendors learn to expect payment on those days
- **Store original invoice PDFs for 7 years** — attach the PDF to every bill in QuickBooks/BILL; required for tax audits and vendor disputes
- **Send remittance advice** — when paying multiple invoices in one ACH batch, email the vendor a list of which invoices were paid and for what amounts so they can reconcile their AR
- **Lock invoice amounts after approval** — never edit a bill's total after it's been approved; create a credit memo or debit memo for adjustments instead

## Common Pitfalls

| Problem | Solution |
|---------|----------|
| Duplicate invoice payments | QuickBooks and BILL both alert on duplicate invoice numbers per vendor — enable these warnings and require staff to acknowledge them before saving |
| Early discount window missed because invoice sat in approval queue | Add a "discount deadline" badge in your approval tool; BILL shows this prominently; set escalation reminders 2 days before the discount expires |
| AP aging report shows negative balances | Vendor credits and credit memos can create negative balances; ensure credits are applied against open invoices as part of your payment run |
| Vendor disputes payment amount | Always store the PO, goods receipt, and invoice together with your matching result; this is your paper trail for disputes |

## Related Skills

- @vendor-management
- @order-management-system
- @returns-refund-policy

Related Skills

coupon-management

11
from finsilabs/awesome-ecommerce-skills

Build a coupon system with percentage and fixed discounts, usage limits per customer, expiration dates, and bulk unique-code generation

payout-split-management

11
from finsilabs/awesome-ecommerce-skills

Manage complex payout splits for marketplaces and platforms with seller disbursements, commission calculation, tax withholding, and 1099 reporting

currency-hedging-management

11
from finsilabs/awesome-ecommerce-skills

Manage foreign exchange risk for multi-currency ecommerce with FX rate tracking, hedging strategies, and realized/unrealized gain-loss accounting

chargeback-management-prevention

11
from finsilabs/awesome-ecommerce-skills

Prevent and manage chargebacks with fraud scoring, compelling evidence automation, Visa CE 3.0 / Mastercom integration, and win-rate optimization

accounts-receivable-automation

11
from finsilabs/awesome-ecommerce-skills

Automate B2B accounts receivable with invoice generation, payment tracking, dunning sequences for past-due invoices, and aging analysis dashboards

ugc-campaign-management

11
from finsilabs/awesome-ecommerce-skills

Source, curate, and display user-generated content at scale with rights management, brand safety moderation, and trust-building social proof galleries

product-information-management

11
from finsilabs/awesome-ecommerce-skills

Centralize product data in a PIM system like Akeneo or Salsify and syndicate enriched content to all your sales channels automatically

returns-management

11
from finsilabs/awesome-ecommerce-skills

Process returns end to end — generate prepaid labels, apply refund or exchange logic, update inventory, and notify customers automatically

customer-accounts

11
from finsilabs/awesome-ecommerce-skills

Let shoppers register, manage their profile, save multiple addresses, and view their full order history using your platform's built-in customer account system

vendor-management

11
from finsilabs/awesome-ecommerce-skills

Manage supplier relationships with a portal for purchase orders, dropship routing, delivery tracking, and vendor performance scorecards

order-management-system

11
from finsilabs/awesome-ecommerce-skills

Design an order management system that routes orders to the right warehouse, handles split shipments, and manages backorders gracefully

wishlist-save-for-later

11
from finsilabs/awesome-ecommerce-skills

Let shoppers save products to a wishlist, share it with friends, and get notified when saved items come back in stock or drop in price