SEC Accession Numbers: How to Read and Look Up a Filing
What an SEC accession number is, how its 18 digits are built, how to find the filing on EDGAR from one, and how Valuein ties every fact to the accession of its source filing.
What an accession number is
An accession number is the unique identifier EDGAR assigns to each submission. It has 18 digits written as three hyphenated parts: ten digits, two digits, six digits, for example 0000040987-26-000003. The SEC's public dissemination specification describes the layout as ##########-YY-SSSSSS.
How to read it
The first ten digits are the CIK of the login that submitted the filing. That is often the company, but can be a filing agent, so it is not always the issuer's CIK. The next two digits are the year. The last six digits are a sequence number assigned to that submitter, starting from one each year (the SEC notes the count is usually, but not always, reset at the start of the calendar year). Example: 0000040987-26-000003 is the third submission in 2026 made under CIK 0000040987.
Find the filing from an accession number
On EDGAR, filing index pages sit under the Archives path: https://www.sec.gov/Archives/edgar/data/<CIK>/<accession-without-hyphens>/<accession-with-hyphens>-index.htm. Remove the hyphens for the folder name and keep them in the index file name. If the first block is a filing agent rather than the company, use the company's own CIK from EDGAR company search together with the same accession number.
How Valuein uses accession numbers
Each filing in Valuein is keyed by its accession (the accession_id column in the filing table), and each fact carries that accession_id as a foreign key plus a fact_id. Through the MCP server, verify_fact_lineage takes a fact_id and returns the source accession number and filing timestamps, so you can open the exact SEC filing behind a figure. Company pages under /data/<ticker> list recent filings by accession.
from valuein_sdk import ValueinClientwith ValueinClient() as client: df = client.run_query(""" SELECT accession_id, period_end, accepted_at FROM filing LIMIT 5 """) print(df)Where to go next
Read /guides/sec-financial-statement-data-sets for how accession numbers (adsh) join the SEC's raw data sets, /methodology for how facts are checked, and /developers/pit for point-in-time queries.
You've finished all guides
Ready to run code? See the examples.