Skip to main content
PATCH
Update payments

Authorizations

Authorization
string
header
required

API key from Developers → API Keys, sent as Authorization: Bearer .

Path Parameters

id
integer
required

Body

application/json
amount
string | null

Money received: 2 dp, from 0.01 up to 99,999,999.99. A refund is its own call (POST /refunds), never a negative amount recorded here — reads of rows PracticeHub wrote (refunds, transfers) can be negative.

Pattern: ^-?\d+(\.\d{1,2})?$
Example:

"45.00"

payment_method_id
integer | null

A payment_methods id: an active method the clinic records by hand (GET /payment_methods). PracticeHub's special types (negative ids — refund, credit, write-off, transfers, rewards, card on file, direct debit) appear on payments PracticeHub wrote and are never recorded through the API (422 payment_method_not_recordable); provider-collected methods (card, direct debit) are refused too (422 card_payment_not_allowed).

note
string | null

Free-text note, up to 1000 characters.

Maximum string length: 1000
payment_date
string<date> | null

The payment's ledger date, YYYY-MM-DD in the account's timezone. Defaults to today on create; backdate freely for imported history.

metadata
object

Integrator-owned key/value metadata (max 50 keys). Values are strings (≤500 chars), numbers or booleans and read back with the type they were written with. On write, a null value removes the key. Filter with metadata[key]=op:value; number operands compare numerically.

Response

The resource

data
object
Example: