---
title: "Credit Memos API · COUNT Partner API"
description: "Credit memos reduce what a customer owes. They are invoice records with invoiceType memo and use the same /partners/invoices routes as invoices and estimates…"
canonical: "https://developers.getcount.com/reference/credit-memo"
source: "https://developers.getcount.com/reference/credit-memo"
---
API Reference

# Credit Memos

Credit memos reduce what a customer owes. They are invoice records with invoiceType memo and use the same /partners/invoices routes as invoices and estimates. Apply approved memos to open invoices with the credit-application endpoints.

Last updated 2026-10-03

## Overview

Credit memos are customer credits issued against prior billing. In COUNT they are stored as invoice-shaped records with `invoiceType: "memo"`. There is no separate `/partners/credit-memos` base path — every memo operation uses the Invoices API routes documented here with memo-specific examples.

Partner responses expose each memo UUID as `id`. Create memos with `invoiceType: "memo"` and optionally link them to an open invoice at create time via `appliedToInvoiceUuid`. Credit memos cannot be recurring; use Recurring Invoice Templates for scheduled invoices only.

## Key concepts

### Shared routes with invoices

List, retrieve, create, update, approve, delete, and apply credit using `/partners/invoices` paths. Filter lists with `invoiceType=memo`.

### Create with appliedToInvoiceUuid

POST /partners/invoices with `invoiceType: "memo"` and optional `appliedToInvoiceUuid` links the memo to an open invoice when created.

### Approve before applying

A memo must be approved before its balance can be applied to invoices. PATCH /{uuid}/approve accepts the same body as invoice approve (optional skipJesOnboarding).

### Applying credit

Apply one memo to many invoices with apply-credit-to-multiple-invoices (path is the memo UUID). Apply many memos to one invoice with apply-multiple-credit-to-invoice (path is the target invoice UUID).

### Refunding a memo

Record a refund paid out to the customer with PATCH /partners/invoices/{memoUuid}/add-transactions and Expense transactions. It is the only refund route: assign-to-bills-invoices rejects credit memos. MCP equivalent: COUNT_record_credit_memo_refund.

### Cannot recur

Credit memos cannot be recurring templates. Attempting invoiceType memo on recurring template create returns 400.

## The credit memo object

Same core shape as an invoice object, with invoiceType memo and optional appliedToInvoiceUuid linking to the credited invoice.

#### Attributes

`id` uuid

Credit memo identifier (UUID). Use in path parameters.

`invoiceNumber` string

Human-readable memo number (for example CM-0042).

`invoiceType` enum

Always memo for credit memos.

One of: `memo`

`customerUuid` uuid

UUID of the customer receiving the credit.

`appliedToInvoiceUuid` uuid

Optional UUID of the invoice this memo credits at create time.

`date` date

Memo date (ISO).

`currency` string

ISO 4217 currency code.

`status` string

Derived lifecycle status (draft, approved, sent, unpaid, partial, paid, void, etc.).

`isDraft` boolean

Whether the memo is still a draft.

`approved` boolean

Whether the memo has been approved.

`paymentStatus` string

Raw payment/application status.

`subtotal` number

Subtotal before tax.

`taxTotal` number

Total tax amount.

`total` number

Total credit amount.

`amountDue` number

Remaining credit balance available to apply.

`products` array

Products or services on the memo.

`createdAt` datetime

ISO 8601 creation timestamp.

`updatedAt` datetime

ISO 8601 last update timestamp.

Example

```json
{
  "id": "a1b2c3d4-e5f6-7890-abcd-ef1234567890",
  "invoiceNumber": "CM-0042",
  "invoiceType": "memo",
  "customerUuid": "dfa3219e-6af8-4c53-997a-037534f63a35",
  "appliedToInvoiceUuid": "f6a7b8c9-d0e1-2345-fabc-456789012345",
  "date": "2026-03-01",
  "dueDate": null,
  "currency": "USD",
  "status": "approved",
  "isDraft": false,
  "approved": true,
  "isSent": false,
  "paymentStatus": "unpaid",
  "subtotal": 500,
  "taxTotal": 0,
  "total": 500,
  "amountDue": 500,
  "products": [
    {
      "productUuid": "aa11bb22-cc33-dd44-ee55-ff6677889900",
      "description": "Credit for overbilling on prior invoice",
      "quantity": 1,
      "unitPrice": 500,
      "nonTaxable": true
    }
  ],
  "createdAt": "2026-03-01T09:00:00.000Z",
  "updatedAt": "2026-03-02T11:15:00.000Z"
}
```

Same handlers as invoices

Memo retrieve, update, approve, and delete use the same backend handlers as invoices. Response envelopes and derived status rules match the Invoices API.

All IDs in apply bodies are UUIDs

In credit-application requests, every id and memoId is the partner UUID from the id field on invoice or memo objects — not internal numeric ids.

## Related

- [Invoices API](https://developers.getcount.com/reference/invoices)

## Recent changes

2026-10-03

Bill submit and refunds, reconciliation drafts, report filters, 30 MCP tools, and the Claude plugin

Documented the five partner routes the reference was missing: POST /partners/bills/{uuid}/submit, POST /partners/bills/{uuid}/assign-transaction (pay a bill, or refund a vendor memo with an income transaction), PATCH /partners/invoices/{uuid}/add-transactions (including credit memo refunds), and PATCH and DELETE /partners/reconciliations/{uuid} for correcting or discarding a draft. The account transactions report gains a reference-number range (checkNumberFrom/checkNumberTo) and the unknown-counterparty drill-down (unknownCustomerAr/unknownVendorAp), both accrual-only. Invoice and credit memo lines accept free-text Custom lines with categoryAccountUuid and name. Corrected the reference where it disagreed with the backend: dueDate is required on invoices and estimates, bills move through submitted and rejected as well as draft and approved, and a bill does have its own assign-transaction route. npm run check:parity now reports 178 documented routes against 178 backend routes. The MCP catalog adds 30 tools — customer contacts, addresses, notes, merge and revenue overview, GST settings, bill submit and memo refunds, reconciliation draft update/delete, COUNT_find_tool, COUNT_report_problem, and saved AI skills — moving the advertised count from 180 to 210. New pages cover the COUNT Claude plugin (/tools/claude-plugin) and the MCP brain, workspace memory and problem reports (/guides/mcp-brain-and-memory), and the FAQ gains the connector and API topics COUNT_knowledge serves to agents.

2026-09-07

Accounting Playbooks and Ledger Semantics published as documentation

The workflows and behaviour rules the MCP server serves to agents through COUNT_playbooks and COUNT_knowledge are now readable documentation. Accounting Playbooks (/guides/playbooks) covers nine ordered workflows across 54 steps — invoicing, credit memos, recurring templates, vendor bill payment, chart-of-accounts setup, migration imports, budget planning and round-trip, and month-end review — each naming the exact tool per step. Ledger Semantics & Lifecycles (/guides/ledger-semantics) documents 33 confirmed behaviours across twelve resources: the state each operation is valid in, the fields accepted and then ignored, and the calls that cannot be undone, with every irreversible behaviour collected in one table at the top of the page. Both pages carry the COUNT_playbooks and COUNT_knowledge ids they were ported from so the agent-facing and human-facing copies stay in step. Playbooks, lifecycle sections, and individual behaviour rules are indexed into site search.

2026-06-21

Complete Partner API reference

Documented all remaining API reference groups: Chart of Accounts, Vendors, Products & Services, Recurring Invoice Templates, Credit Memos, Bills, Journal Entries, Tags, People, Projects, Tasks, Time Entries, Expense Receipts, Reports, and Workspace Stats. Added missing invoice endpoints (audit log, attachments, credit application, remove transaction) and group overviews for Invoices and Transactions.

## Endpoints

[GET List credit memos `/partners/invoices` Returns a paginated list of credit memos in the workspace.](https://developers.getcount.com/reference/credit-memo/list-credit-memos) [GET Get a credit memo `/partners/invoices/{uuid}` Retrieves a single credit memo by its UUID.](https://developers.getcount.com/reference/credit-memo/get-credit-memo) [POST Create a credit memo `/partners/invoices` Creates a credit memo for a customer.](https://developers.getcount.com/reference/credit-memo/create-credit-memo) [PATCH Update a credit memo `/partners/invoices/{uuid}` Updates a credit memo. Edits to non-draft memos are field-specific and may be rejected.](https://developers.getcount.com/reference/credit-memo/update-credit-memo) [PATCH Approve a credit memo `/partners/invoices/{uuid}/approve` Approves a draft credit memo so its balance can be applied to invoices.](https://developers.getcount.com/reference/credit-memo/approve-credit-memo) [DELETE Delete a credit memo `/partners/invoices/{uuid}` Deletes a credit memo.](https://developers.getcount.com/reference/credit-memo/delete-credit-memo) [PATCH Apply multiple credits to an invoice `/partners/invoices/{uuid}/apply-multiple-credit-to-invoice` Applies one or more credit memos to the target invoice.](https://developers.getcount.com/reference/credit-memo/apply-multiple-credit-to-invoice) [PATCH Apply credit to multiple invoices `/partners/invoices/{uuid}/apply-credit-to-multiple-invoices` Applies a credit memo to one or more target invoices.](https://developers.getcount.com/reference/credit-memo/apply-credit-to-multiple-invoices) [PATCH Remove credit from an invoice `/partners/invoices/{uuid}/remove-credit` Unapplies a credit memo from an invoice.](https://developers.getcount.com/reference/credit-memo/remove-credit-from-invoice)
