Connecticut Open Expenditures - Every State Payment
Pricing
from $0.03 / 1,000 connecticut payment records
Connecticut Open Expenditures - Every State Payment
Every payment Connecticut's state government made for goods and services (public open data, ~6.16M payment lines, FY2020-2027): service, department, program, expense category, fund and type, vendor with exact vendor id, payment method and status, payment and invoice dates, and amount.
Pricing
from $0.03 / 1,000 connecticut payment records
Rating
0.0
(0)
Developer
Wenhao Yang
Maintained by CommunityActor stats
0
Bookmarked
2
Total users
1
Monthly active users
3 days ago
Last modified
Categories
Share
Every payment the State of Connecticut made for goods and services, straight from the State's open expenditure ledger. ~6.17 million payment lines, from fiscal 2020 through fiscal 2027.
Low cost
From $0.00005 per record, down to $0.00003 at Gold. Pay only for the records you actually receive - the whole ledger stays queryable, you are never billed for the scan behind it.
What you get
One row per payment line, with the full money trail attached:
- Who was paid - vendor name, plus the exact vendor id (a stable key, unlike the free-text name)
- What kind of vendor - Corporation, LLC, Sole Proprietor, Non-Profit, P-card Merchant, Governmental
- Who paid - the government function, the department (agency) and the budget program, and the account
- What for - the expense category, from the State's own chart
- Out of what - the fund and the fund type (General, Special Revenue, Capital Projects, Enterprise)
- When and how - payment date, invoice date, payment method and status
- How much - the amount, plus the contract and purchase-order references behind it
That is the full chain: function -> department -> program -> expense -> fund -> vendor -> amount.
One thing to know up front
The State publishes this ledger as two near-duplicate tables -
corpus=current (Ledger Current, the default) and corpus=archive (Ledger
Archive) - and they cover the same payments. As of 2026-10-01 their
per-fiscal-year row counts run ~1.7-2.5% apart (FY2027, the current year, is
~62% apart, since it is mid-year) - they are almost the same payments, but not
byte-for-byte. Read one; never sum them.
Which table advances tracks the State's migration - and the labels inverted
during a Sep-2026 maintenance window. As of 2026-10-01 the default
current is the live one (payments through 2026-09-30) while archive
stopped at 2026-09-25 - so the default already gives you the freshest data, and
you only pass corpus to reach the other table deliberately.
Filter it
- Vendor -
vendor="Amazon"(substring) orvendorId="0000053057"(exact). - Function, department, program -
service="HEALTH",department="Transportation"(agencies, ~90 of them),program="Tax Relief"(budget programs, ~3,400 of them).departmentandprogramare normalized across both tables, so the same field means the same thing whichever corpus you read. - Expense category -
expenseCategory="State Aid",expenseCategory="Electricity". 387 categories in total. - Fund -
fund="Federal"(the fund name, substring) orfundType="GENERAL"(the fund category: General, Special Revenue, Capital Projects, Enterprise, Agency, Internal Service, Pension Trust, Other Trust Funds - 8 in all). - Vendor type - Corporation, Non-Profit, Sole Proprietor
- Amount -
minAmount=1000000for seven-figure payments. - Date range and last-N-days.
Example inputs
Payments to one supplier - vendor is a substring match.
{ "vendor": "AMAZON", "maxResults": 25 }
One function's spending on one thing - combine function and category.
{ "service": "TRANSPORTATION", "expenseCategory": "Highway", "maxResults": 50 }
The largest payments - seven figures and up.
{ "minAmount": 1000000, "maxResults": 50 }
Where the money goes - mode=aggregate returns one count row per function;
every group comes back.
{ "mode": "aggregate", "groupBy": "service" }
Or roll it up
Set mode=aggregate and get a rolled-up count by service,
department, program, expense category, fund, fund type,
payment status, payment method, vendor type, fiscal year or
fiscal year period. Every group comes back - not cut off by maxResults.
The default dimension is service (10 values); program has ~3,400 values
and returns a long result.
Then follow the money
- Total state spending by function or department, over any window.
- Every payment a supplier has received from the State, and for what.
- General, Special Revenue, Capital Projects and Enterprise spend, side by side - or the fund breakdown, federal money included.
- Payments by method and status - what clears, what is stopped or void.
- The biggest payments, newest first.
Example output
One payment line - vendor="CDW", default corpus:
{"platform": "ct-open-expenditure","source": "ct-open-expenditures-current","mode": "rows","groupKey": "","groupCount": "","groupBy": "","fiscalYear": "2027","fiscalYearPeriod": "3","service": "EDUCATION","department": "State Dept of Education","program": "CT Tech Educ and Career Sys","account": "54154","expenseCategory": "IT Hardware Non-Controllable","fundCode": "11000","fund": "General Fund","fundType": "GENERAL","vendor": "CDW GOVERNMENT LLC","vendorId": "0000010232","vendorType": "LLC - Corporation","paymentId": "0020327484","paymentCount": "1","paymentMethod": "Automated Clearing House","paymentStatus": "Paid-Unreconciled","paymentDate": "2026-09-29T00:00:00.000","paymentDescription": "Paid","invoiceId": "TECM100109994","invoiceDate": "2026-09-29T00:00:00.000","invoiceLineNumber": "1","amount": "250.14","contractNumber": "24PSX0154AA","purchaseOrderNumber": "TECM10000031534","purchaseOrderLineNumber": "1","corpus": "current","sourceUpdatedAt": "2026-09-30"}
mode=aggregate, groupBy=service - one count row per government function
(default corpus; the archive table gives slightly different counts):
HEALTH & HOSPITALS 1,152,721TRANSPORTATION 896,973GENERAL GOVERNMENT 799,446JUDICIAL 710,735CORRECTIONS 669,113REGS & PROTECTION 641,626
Notes on the data, from the source
- A row is a payment line, not a payment. One payment id covers several accounting lines (~6.16M lines carry ~1.95M distinct payment ids). The payment id is a grouping key, not a row key.
- Refunds and reversals are in here. 59,707 lines are negative on
archiveand 116,639 oncurrent- real accounting entries, returned as they stand. SetminAmount=0.01for payments only. - Two ledger tables, near-duplicates. See above - read one, never sum them.
- Some rows have no vendor type. ~322,000 lines carry none; filtering on a vendor type excludes them.
- Vendor names are free text as typed into the system -
AMAZON RETAIL,AMAZON.COM*5H0SB5182andAMAZON MKTPL*5H1353XI1are all the same supplier. UsevendorIdwhen you need one identity. - The ledger follows the State's accounting cycle, not a daily feed;
sourceUpdatedAtcarries the dataset's own refresh date.
