Invoicing

invoices.actionReview

Review an exact invoice action before confirming it. Pass action and its input fields, including the current expectedRevision. Returns complete invoice lines, taxes and currency totals, exact delivery recipients and message, dates, masked receiving methods, proposed payment or tax changes, effects and blockers. Show these records and consequences to the person. For issue, send, remind, approve, schedule, void, write-off, payment recording/removal and tax correction, MCP and Ask AI must pass the returned reviewHash with the same action/input after explicit human approval. A changed invoice, company, customer or payment source requires a fresh review. This read does not issue, send, schedule or record anything.

GETPOST/api/v1/accounting/invoices.actionReview

Permissions

accounting:read

Who can call it

admin, finance

Retries

Safe to retry: it only reads

MCP

accounting_invoices_action_review

Fields

  • actionenumRequired
    invoices.issueinvoices.sendinvoices.remindinvoices.approveinvoices.scheduleinvoices.voidinvoices.markUncollectibleinvoices.recordPaymentinvoices.removePaymentinvoices.correctTax
  • inputmapRequired

Example

curl https://app.getoatmilk.com/api/v1/accounting/invoices.actionReview \
  -H "Authorization: Bearer $OATMILK_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{
  "action": "invoices.issue",
  "input": {}
}'
Response
{
  "data": { … }
}

Try it

Try it

Checks your input with this action’s real schema and answers like the API, with synthetic data. No key needed, and nothing changes.

POST/api/v1/accounting/invoices.actionReview
curl https://app.getoatmilk.com/api/v1/accounting/invoices.actionReview \
  -H "Authorization: Bearer $OATMILK_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{
  "action": "invoices.issue",
  "input": {}
}'

More in Invoicing.