Skip to content
PharmaFlow Knowledgebase
Esc
↑↓navigate↵open⌘Jpreview

Get a customer ledger

Any signed in user. Returns ledger entries for one customer, newest first, with the balance. An unknown customer answers 404 before the read, and each row carries the staff name.

GET/api/v1/customers/{customerId}/ledger
Authorization
AuthorizationBearer token (JWT) · headerrequired

JWT from POST /api/v1/auth/login sent as Authorization Bearer.

Path parameters
customerIdstringrequired

The customer id.

Query parameters
pageinteger

Page number, 1 based. Defaults to 1.

page_sizeinteger

Rows per page, capped at 200. Defaults to 20.

Responses
200

A page of ledger entries

totalintegerrequired
min -9007199254740991 · max 9007199254740991
pageintegerrequired
min -9007199254740991 · max 9007199254740991
page_sizeintegerrequired
min -9007199254740991 · max 9007199254740991
itemsobject[]required
Show properties
Array of object
idstringrequired
customer_idstringrequired
transaction_typestringrequired
amountstringrequired
balance_afterstringrequired
reference_idstring | nullrequired
notesstring | nullrequired
created_bystringrequired
created_atstringrequired
created_by_namestring | nullrequired
401

Not authenticated

detailstringrequired
404

Customer not found

detailstringrequired
Try it
Server
Authorization
Parameters
Request
curl -X GET 'http://localhost:8000/api/v1/customers/string/ledger' \
  -H 'Authorization: Bearer YOUR_TOKEN'
Response
{
  "total": -9007199254740991,
  "page": -9007199254740991,
  "page_size": -9007199254740991,
  "items": [
    {
      "id": "string",
      "customer_id": "string",
      "transaction_type": "string",
      "amount": "string",
      "balance_after": "string",
      "reference_id": "string",
      "notes": "string",
      "created_by": "string",
      "created_at": "string",
      "created_by_name": "string"
    }
  ]
}