Prepare immutable association statement from exact reviewed source
/hoa/statementsBank-bound verified customer person with customer scope, session/device and current association business membership required. Writes require fresh five-minute step-up; staff, services and API keys cannot impersonate the association. Independent review requires distinct user AND person identities. Reviewed unit roster, assessments, adjustments and collected lockbox allocations are customer receivables, never deposit ownership or bank GL postings. Pending source/invoice/dues and partial-release capacities are serialized against actual check returns. Current balances reopen unpaid dues only from exact committed return evidence. Statement preparation binds the expected current source SHA256 and retains an immutable association-receivables-json-1 artifact/outbox without claiming delivery. See services/payments/hoa/README.md.
Headers
Idempotency-KeystringRequiredSend on every write that creates or changes money or state; a replay with the same key returns the original result with 200.
Body parameters
account_idstringRequiredExample acct_2tVh8nqLxq4GbDe0K1F6S9zRcWm
expected_source_sha256stringRequiredformat_versionstringRequiredReturns
200 OK
artifact_sha256stringRequiredcreated_atstring · date-timeRequiredidstringRequiredprepared_byobjectRequired12 child attributes
account_idstringRequiredExample acct_2tVh8nqLxq4GbDe0K1F6S9zRcWm
device_sha256stringRequiredmembership_changed_bystringRequiredmembership_updated_atstring · date-timeRequiredobserved_atstring · date-timeRequiredorganization_customer_idstringRequiredExample cust_2tVh8nqLxq4GbDe0K1F6S9zRcWm
payment_limit_amountintegerRequiredperson_customer_idstringRequiredExample cust_2tVh8nqLxq4GbDe0K1F6S9zRcWm
rolestringRequiredsession_sha256stringRequiredstep_up_atstring · date-timeRequireduser_idstringRequiredExample user_2tVh8nqLxq4GbDe0K1F6S9zRcWm
requestobjectRequired3 child attributes
account_idstringRequiredExample acct_2tVh8nqLxq4GbDe0K1F6S9zRcWm
expected_source_sha256stringRequiredformat_versionstringRequiredsnapshotobjectRequired8 child attributes
account_idstringRequiredExample acct_2tVh8nqLxq4GbDe0K1F6S9zRcWm
balancesarray of objectsRequired12 child attributes
adjustment_amountintegerRequiredallocated_amountintegerRequiredassessed_amountintegerRequiredassessment_idstringRequiredExample cpas_2tVh8nqLxq4GbDe0K1F6S9zRcWm
due_datestring · dateRequiredA business date, YYYY-MM-DD
invoice_referencestringRequiredoccupancy_referencestringRequiredoutstanding_amountintegerRequiredreleased_amountintegerRequiredreturned_amountintegerRequiredunit_change_idstringRequiredunit_referencestringRequiredchangesarray of objectsRequired7 child attributes
content_sha256stringRequiredcreated_atstring · date-timeRequiredidstringRequiredrequestobjectRequired9 child attributes
account_idstringRequiredExample acct_2tVh8nqLxq4GbDe0K1F6S9zRcWm
adjustmentobject or nullOptionalallocationobject or nullOptionalassessmentobject or nullOptionalevidenceobjectRequiredkindstringRequiredreasonstringRequiredreleaseobject or nullOptionalunitobject or nullOptionalreviewobject or nullOptional6 child attributes
approvebooleanRequiredatstring · date-timeRequiredauthorityobjectRequiredcontent_sha256stringRequiredevidenceobjectRequiredreasonstringRequiredsourceobject or nullOptional13 child attributes
account_idstringRequiredExample acct_2tVh8nqLxq4GbDe0K1F6S9zRcWm
amountintegerRequiredcheck_deposit_idstringRequiredcollection_journalobjectRequiredcollection_journal_sha256stringRequiredcurrency_codestringRequiredcustomer_idstringRequiredExample cust_2tVh8nqLxq4GbDe0K1F6S9zRcWm
deposit_journalobjectRequireddeposit_journal_sha256stringRequiredinvoicesarray of objectsRequireditem_idstringRequiredlockbox_idstringRequiredremittance_idstringRequiredsubmitted_byobjectRequired12 child attributes
account_idstringRequiredExample acct_2tVh8nqLxq4GbDe0K1F6S9zRcWm
device_sha256stringRequiredmembership_changed_bystringRequiredmembership_updated_atstring · date-timeRequiredobserved_atstring · date-timeRequiredorganization_customer_idstringRequiredExample cust_2tVh8nqLxq4GbDe0K1F6S9zRcWm
payment_limit_amountintegerRequiredperson_customer_idstringRequiredExample cust_2tVh8nqLxq4GbDe0K1F6S9zRcWm
rolestringRequiredsession_sha256stringRequiredstep_up_atstring · date-timeRequireduser_idstringRequiredExample user_2tVh8nqLxq4GbDe0K1F6S9zRcWm
observed_atstring · date-timeRequiredorganization_customer_idstringRequiredExample cust_2tVh8nqLxq4GbDe0K1F6S9zRcWm
outstanding_amountintegerRequiredreceiptsarray of objectsRequired5 child attributes
return_journalobject or nullOptional18 child attributes
adjusts_periodstringOptionalA sealed period this journal corrects, YYYY-MM
approved_bystringOptionalbackdatedbooleanOptionalEffective_date is before posting_date (read only)
committed_atstring · date-timeOptionaleffective_datestring · dateRequiredA business date, YYYY-MM-DD
entriesarray of objectsRequiredfx_legsarray of objectsOptionalFXLegs is read only: the legs of a cross-currency journal the ledger's own conversion and close commands posted. A caller's posting never carries them.
idstringOptionalkindstringRequiredposted_bystringOptionalposting_datestring · dateOptionalA business date, YYYY-MM-DD
protected_command_idstringOptionalreasonstringOptionalRequired on a backdated journal
release_hold_idstringOptionalExample hold_2tVh8nqLxq4GbDe0K1F6S9zRcWm
require_availablebooleanOptionalreversal_ofstringOptionalsource_refstringRequiredsource_servicestringRequiredreturn_journal_sha256stringOptionalreturn_reasonstringOptionalreturnedbooleanRequiredsourceobjectRequired13 child attributes
account_idstringRequiredExample acct_2tVh8nqLxq4GbDe0K1F6S9zRcWm
amountintegerRequiredcheck_deposit_idstringRequiredcollection_journalobjectRequiredcollection_journal_sha256stringRequiredcurrency_codestringRequiredcustomer_idstringRequiredExample cust_2tVh8nqLxq4GbDe0K1F6S9zRcWm
deposit_journalobjectRequireddeposit_journal_sha256stringRequiredinvoicesarray of objectsRequireditem_idstringRequiredlockbox_idstringRequiredremittance_idstringRequiredsource_sha256stringRequiredErrors
Every error is a problem document with a stable code. See Errors.
400401403404409412413422424429500503