Skip to main content

Overview

Invoices follow an approval workflow before being sent to customers.

Submit for Approval

POST /service/general-ledger/invoices/{invoice_id}/submit-for-approval
curl -X POST https://kube.acho.io/service/general-ledger/invoices/INV-2024-001/submit-for-approval \
  -H "Authorization: jwt YOUR_TOKEN"

Approve Invoice

POST /service/general-ledger/invoices/{invoice_id}/approve
curl -X POST https://kube.acho.io/service/general-ledger/invoices/INV-2024-001/approve \
  -H "Authorization: jwt YOUR_TOKEN" \
  -H "Content-Type: application/json" \
  -d '{"comments": "Approved - ready to send to customer"}'

Reject Invoice

POST /service/general-ledger/invoices/{invoice_id}/reject
curl -X POST https://kube.acho.io/service/general-ledger/invoices/INV-2024-001/reject \
  -H "Authorization: jwt YOUR_TOKEN" \
  -H "Content-Type: application/json" \
  -d '{"reason": "Incorrect pricing - please verify contract terms"}'

Request Change

POST /service/general-ledger/invoices/{invoice_id}/request-change
curl -X POST https://kube.acho.io/service/general-ledger/invoices/INV-2024-001/request-change \
  -H "Authorization: jwt YOUR_TOKEN" \
  -H "Content-Type: application/json" \
  -d '{"comments": "Please update the billing address and correct the line item descriptions"}'

Place on Hold

POST /service/general-ledger/invoices/{invoice_id}/hold
curl -X POST https://kube.acho.io/service/general-ledger/invoices/INV-2024-001/hold \
  -H "Authorization: jwt YOUR_TOKEN" \
  -H "Content-Type: application/json" \
  -d '{"reason": "Pending customer confirmation on scope"}'

Remove from Hold

POST /service/general-ledger/invoices/{invoice_id}/unhold
curl -X POST https://kube.acho.io/service/general-ledger/invoices/INV-2024-001/unhold \
  -H "Authorization: jwt YOUR_TOKEN"

Get Audit Trail

GET /service/general-ledger/invoices/{invoice_id}/audit-trail
curl -X GET https://kube.acho.io/service/general-ledger/invoices/INV-2024-001/audit-trail \
  -H "Authorization: jwt YOUR_TOKEN"