Record payment
Record money received against an invoice, with date, type and bank reference.
POST https://cotlet.dev/api/v1/invoice-ninja/invoices/{invoice_number}/payments
Records a payment for the invoice client and applies it to the invoice. Without an amount it covers the full balance. A smaller amount leaves the invoice in Partial status, and an amount above the balance leaves the extra on the payment as an unapplied balance. Payment date defaults to today; set it to the day the money arrived, because reports use it. Send email is on by default, as in Invoice Ninja, and sends the client a payment confirmation. By default you confirm each call; you can switch that off for this tool.
Parameters
| Name | Type | Description |
|---|---|---|
| company string | string | Company name, for accounts with several companies. Default: the company open when you signed in. |
| invoice_number string required | string | Invoice number from list_invoices or create_invoice, e.g. INV-0038. |
| amount number | number | Amount received. Default: the full invoice balance. |
| payment_date date | date | Day the money arrived. Default: today. |
| payment_type string | string | Payment type as listed in Invoice Ninja, e.g. Bank Transfer, Cash or Cheque. |
| transaction_reference string | string | Bank reference or cheque number. |
| private_notes string | string | Internal note, never shown to the client. |
| send_email boolean | boolean | Send the client a payment confirmation. Default: true. |
Request
curl -X POST https://cotlet.dev/api/v1/invoice-ninja/invoices/INV-0034/payments \
-H "Authorization: Bearer $COTLET_API_KEY" \
-H "Content-Type: application/json" \
-d '{"amount":1200,"payment_date":"2026-10-12","payment_type":"Bank Transfer","transaction_reference":"INV-0034 Oct"}' result = client.call("invoice-ninja", "record_payment", {"invoice_number":"INV-0034","amount":1200,"payment_date":"2026-10-12","payment_type":"Bank Transfer","transaction_reference":"INV-0034 Oct"}) const result = await cotlet.call('invoice-ninja', 'record_payment', {"invoice_number":"INV-0034","amount":1200,"payment_date":"2026-10-12","payment_type":"Bank Transfer","transaction_reference":"INV-0034 Oct"}); cotlet call invoice-ninja record_payment --data '{"invoice_number":"INV-0034","amount":1200,"payment_date":"2026-10-12","payment_type":"Bank Transfer","transaction_reference":"INV-0034 Oct"}' Example response
{
"payment_number": "0021",
"client": "Northwind Studio",
"payment_date": "2026-10-12",
"payment_type": "Bank Transfer",
"transaction_reference": "INV-0034 Oct",
"amount": 1200,
"status": "Paid",
"applied_to": [
{
"invoice_number": "INV-0034",
"amount": 1200
}
],
"invoice_status": "paid",
"invoice_balance": 0,
"confirmation_email": true
}