Combined Federal/State Filing (CF/SF) lets a single IRIS submission carry your 1099 information to participating state revenue agencies, so you don’t have to transmit the same data twice. You turn it on with one header flag, CFSFElectionInd, and you tell IRIS which states to forward to with one or more CFSFElectionStateCd values on each record. The catch that trips up most filers is structural rather than clerical: when your transmission contains more than one submission, IRIS only honors a CF/SF election that sits in the first submission group — an election in any later group is silently dropped and reported back as SHAREDIRFORM020 and SHAREDIRFORM022. CF/SF also forwards data only; it does not satisfy state withholding reconciliation, so many states still need a direct filing on top.
In this story
What Combined Federal/State Filing Actually Is
Combined Federal/State Filing is a data-forwarding arrangement, not a magic button that discharges every state obligation. When you elect CF/SF on a 1099, you are asking the IRS to pass that information return along to the state revenue agency you name, so the state receives the same figures you filed federally without you submitting a separate state transmission.
It helps to understand exactly what travels and what does not. CF/SF forwards the information-return content — the recipient, the payer, the amounts in the federal boxes, and the per-state income and withholding totals you provide. What it does not do is reconcile your state withholding account, generate a state transmittal or annual reconciliation form, or relieve any state-specific mandate a state imposes on its own authority. In practice that means CF/SF can remove the duplicate-data-entry burden for some forms in some states, while leaving a direct state filing fully in place for others. Treating the election as a blanket “file once, satisfy everyone” switch is the single most expensive misconception in this area, because it leads filers to skip direct filings the state still expects.
On IRIS specifically, CF/SF is expressed in your XML rather than on a paper transmittal. A submission-level flag declares that the submission is making a CF/SF election, and a record-level element names each state the record should be forwarded to. Both pieces have to agree, and both have to clear the IRS business rules before any state ever sees your data. The rest of this guide walks through which states and forms are eligible, the exact elements involved, and the placement rule that quietly invalidates more CF/SF elections than any data error.
The CF/SF election fields and the business rules that validate them are defined in the IRIS A2A specification and the TY2025 v1.4 schema and business-rule package. The IRS Publication 5717 series (irs.gov/pub/irs-pdf/p5717.pdf) governs the A2A transmission your CF/SF election rides inside, and the participating-state list is fixed by the schema rule SHAREDIRFORM019_002. The IRS e-Services hub for IRIS is at irs.gov/e-services.
Which States and Forms Are Eligible
Two separate eligibility gates apply to every CF/SF election, and IRIS checks both. The first is the state: the value you put in CFSFElectionStateCd has to be one of the 33 participating jurisdictions the schema recognizes. The second is the form type: only certain 1099-series forms (plus the 5498) can carry a CF/SF election at all. If either gate fails, the rule engine flags the record, so it pays to confirm both before you build the file.
The 33 participating states
Per the schema rule SHAREDIRFORM019_002, a valid CFSFElectionStateCd must be one of: AL, AZ, AR, CA, CT, CO, DC, DE, GA, HI, ID, IN, KS, LA, MA, MD, ME, MI, MN, MS, MT, NE, NJ, NM, NC, ND, OH, OK, OR, PA, RI, SC, and WI. Any other code — including a non-participating state such as New York — will be rejected by the validator as out of list. It is worth stressing that being on this federal list is not the same as a state actually using CF/SF to reduce your filing burden; the list governs what the IRS schema accepts, while each state’s own rules govern whether you still owe a direct filing.
The forms that can elect CF/SF
The business rule S1H003_001 restricts the election to a fixed set of form types. When CFSFElectionInd equals 1, the form has to be one of 1099-B, 1099-DIV, 1099-G, 1099-INT, 1099-K, 1099-MISC, 1099-NEC, 1099-OID, 1099-PATR, 1099-R, or the 5498. A 1099 outside that set cannot make a CF/SF election, and trying to set the flag on an ineligible form is a data mismatch the validator will report.
| Gate | Rule | What it requires |
|---|---|---|
| State code | SHAREDIRFORM019_002 | CFSFElectionStateCd must be one of the 33 listed states |
| Form type | S1H003_001 | Form must be 1099-B/DIV/G/INT/K/MISC/NEC/OID/PATR/R or 5498 |
| TCC enrollment | S1H002 | Your TCC must be enrolled in the CF/SF program for the election to be honored |
The third row is the one filers forget. Rule S1H002 says that if CFSFElectionInd equals 1, the transmitter control code on the transmission must itself participate in the CF/SF program. Eligibility for CF/SF is something you opt into when you apply for or maintain your TCC; setting the flag without that enrollment in place produces a data mismatch rather than a forwarded return. For a fuller picture of which states honor CF/SF in practice and which still demand a direct submission, see our companion guide to state 1099 filing requirements where CF/SF isn’t enough.
The Two Elements That Make CF/SF Work
CF/SF on IRIS comes down to two XML pieces that have to be consistent with each other. The first lives in the submission header and announces the election for the whole submission; the second lives on each record and names the states that record should be forwarded to. A third structure, the per-state totals group, then carries the dollar figures each state receives.
CFSFElectionInd — the submission-level switch
CFSFElectionInd is a single boolean in the submission header. When you set it to 1, you are declaring that this submission is making a CF/SF election; 0 means it is a federal-only submission. This flag is the gate that rules S1H002 and S1H003_001 check, and it is also the flag the per-record state codes must agree with. If a record names a state but the header flag is 0, the election is contradictory and the IRS treats the state data as if it were never there.
CFSFElectionStateCd — the per-record target
CFSFElectionStateCd sits on the individual form record and names the state to forward to. Because a single recipient can have income sourced to more than one participating state, the schema lets this element repeat many times on one record — up to roughly sixty occurrences on a 1099-NEC, MISC, or INT, for example. Each value has to be drawn from the 33-state list above, and each one that you include also has to be backed by a matching per-state totals group, which is where the third piece comes in.
Form{X}TotalByStateGrp — the dollars each state sees
Forwarding a state code with no money behind it is not enough. For each form type, IRIS expects a per-state totals group — named after the form, such as Form1099NECTotalByStateGrp for a 1099-NEC — that carries the income and withholding amounts attributable to that state, including the StateTaxWithheldAmt line. This is the structure that actually delivers numbers to the state agency, and its absence is one of the most common reasons a well-formed-looking CF/SF election still fails validation.
<!-- Illustrative only; the real elements and XSD order are defined in Pub 5717
and the IRIS TY2025 v1.4 schema. -->
<IRSubmission1Header>
<CFSFElectionInd>1</CFSFElectionInd> <!-- submission-level switch -->
</IRSubmission1Header>
...
<Form1099NECDetail>
<CFSFElectionStateCd>CA</CFSFElectionStateCd> <!-- per-record target -->
</Form1099NECDetail>
...
<Form1099NECTotalByStateGrp>
<StateAbbreviationCd>CA</StateAbbreviationCd>
<StateTaxWithheldAmt>125.00</StateTaxWithheldAmt> <!-- dollars CA receives -->
</Form1099NECTotalByStateGrp>The header flag, every record-level state code, and a matching per-state totals group form one chain. If the flag is on but no record names a state, nothing is forwarded; if a record names a state but the flag is off or the totals group is missing, the IRS reports a rule error and drops the election. Build all three together, or none of them.
The Rule No One Warns You About: CF/SF Must Ride the First Submission
Here is the trap that turns a perfectly valid file into a rejected one. An IRIS A2A transmission can carry several submission groups, and the IRS only honors a CF/SF election that sits in the very first one. An election placed in any later submission group is silently ignored, no matter how clean the data inside it is.
The reason this surprises people is that the bytes you transmit are correct. A CF/SF election in, say, the second submission group is locally well-formed: the header flag is set, the state codes are valid, and the totals groups are present. But the IRS Assurance Testing System keys the rule off position, not content. It reads the CF/SF election from the first submission group (IRSubmission1Grp) and disregards an election that lives anywhere else. The transmission you sent was right; the location was wrong, and location is what the rule cares about.
When the election lands in the wrong group, the rejection arrives as a pair of familiar codes. SHAREDIRFORM020 fires because, from the IRS’s point of view, a record carries a CFSFElectionStateCd while the effective header flag reads 0 — the election in the later group was never read, so the system sees a state code with no matching election. SHAREDIRFORM022 fires for the same reason against the totals: a state code is present but no honored TotalByStateGrp backs it. Both are reported against the first submission group even though the data the validator is complaining about lives elsewhere, which is exactly why this error is so confusing to diagnose.
The fix is simply to order any CF/SF-electing submission first in the transmission. If you batch multiple form types into one transmission — a common pattern when you build files alphabetically by form — a CF/SF-electing 1099-NEC can end up last, behind a federal-only 1099-INT, and the election is lost. Sort so that the submission carrying the election is the first group, and the SHAREDIRFORM020/022 pair disappears. This is the recurring failure behind most “my state data vanished” reports, and it is worth a dedicated pre-flight check in whatever builds your XML.
Tired of CF/SF elections that vanish on the wire?
e1099f sets the header flag, the per-record state codes, and the totals groups together — and orders any CF/SF-electing submission first automatically, so SHAREDIRFORM020/022 never fires.
Common Rejection Reasons (and How to Avoid Them)
Almost every CF/SF rejection traces back to one of a handful of mismatches between the header flag, the record-level state codes, the totals groups, and the position of the electing submission. Each one is easy to prevent once you know the pattern that triggers it.
Cause: the CF/SF election sits in the second or later submission group, so the IRS reads the first group’s flag as 0 and ignores the real election — surfacing as SHAREDIRFORM020 and SHAREDIRFORM022 against the first group. Fix: order the CF/SF-electing submission first in the transmission so the election rides IRSubmission1Grp; never let alphabetical form ordering push it to the back.
Cause: a record carries a CFSFElectionStateCd, but the submission header’s CFSFElectionInd is 0 — the two pieces contradict each other. Fix: set CFSFElectionInd to 1 in the header of any submission whose records name a state, so the election and the state codes agree.
Cause: a record names a state with CFSFElectionStateCd, but no matching Form{X}TotalByStateGrp is present to carry the dollars that state should receive. Fix: emit a per-state totals group — for example Form1099NECTotalByStateGrp — with the income and StateTaxWithheldAmt for each elected state.
Cause: CFSFElectionStateCd holds a value the schema doesn’t recognize as a participating state — a non-CF/SF state like New York, or a typo. Fix: validate every state code against the 33-state list (AL/AZ/AR/CA/CT/CO/DC/DE/GA/HI/ID/IN/KS/LA/MA/MD/ME/MI/MN/MS/MT/NE/NJ/NM/NC/ND/OH/OK/OR/PA/RI/SC/WI) before you build the file.
Cause: you set CFSFElectionInd to 1 while your TCC isn’t enrolled in the CF/SF program (S1H002), or the form type can’t carry a CF/SF election at all (S1H003_001). Fix: confirm CF/SF enrollment on your TCC and restrict the flag to the eligible forms — 1099-B/DIV/G/INT/K/MISC/NEC/OID/PATR/R and 5498.
Why CF/SF Forwarding Isn't the Whole State Story
Even a flawless CF/SF election leaves real state obligations untouched, and that gap is where compliant-looking filers get penalty notices. CF/SF forwards information-return data, but it does not reconcile a state withholding account, it does not produce a state-specific transmittal or annual reconciliation form, and it does not discharge a state’s independent mandate on a form like the 1099-K. A state can receive your forwarded 1099 and still consider its filing requirement unmet because the reconciliation it actually grades you on never arrived.
The practical consequence is that many of the 33 federally listed states still expect a direct filing in at least some scenarios — most often whenever there is state income tax withheld — and a few states listed federally have told their own filers not to rely on CF/SF at all. The right mental model is to treat CF/SF as a way to avoid duplicate data entry where a state genuinely accepts it, while you separately determine, state by state and form by form, whether a direct submission is still required. The reject codes behind these mechanics are catalogued alongside the rest of the IRIS error set in our reference on IRIS reject codes including SHAREDIRFORM020, and the full validation logic lives in the IRIS business-rule catalog that enforces the first-submission rule.
CF/SF is a convenience for data forwarding, not a substitute for understanding each state’s requirements. Use it where a state accepts it, set it correctly with all three elements in agreement, place the election in the first submission group, and still check whether a direct state filing is owed on top.
Skip the CF/SF Plumbing Entirely
All three pieces, in sync
The header flag, every per-record state code, and the matching totals group are emitted together — no orphaned state codes, no missing totals.
First-submission ordering
Any CF/SF-electing submission is placed first automatically, so SHAREDIRFORM020 and SHAREDIRFORM022 never fire on position.
Validated against the list
Every state code is checked against the 33-state list and every form against the eligible set before anything leaves your account.
A forwarded election that actually lands — for every participating state you elect.
Frequently Asked Questions
What does CF/SF actually send to the states?
Form{X}TotalByStateGrp. It does not send a state reconciliation form or settle a state withholding account.Which states participate in CF/SF on IRIS?
SHAREDIRFORM019_002: AL, AZ, AR, CA, CT, CO, DC, DE, GA, HI, ID, IN, KS, LA, MA, MD, ME, MI, MN, MS, MT, NE, NJ, NM, NC, ND, OH, OK, OR, PA, RI, SC, and WI. New York is not among them.Which forms can carry a CF/SF election?
S1H003_001: 1099-B, 1099-DIV, 1099-G, 1099-INT, 1099-K, 1099-MISC, 1099-NEC, 1099-OID, 1099-PATR, 1099-R, and the 5498. Any other form cannot set CFSFElectionInd to 1.Why does my CF/SF election have to be in the first submission?
IRSubmission1Grp). An election in a later group is ignored regardless of how clean its data is — the rule keys off the submission’s position, not its content.What do SHAREDIRFORM020 and SHAREDIRFORM022 mean?
SHAREDIRFORM020 means a record has a CFSFElectionStateCd while the header CFSFElectionInd reads 0; SHAREDIRFORM022 means a state code is present with no matching Form{X}TotalByStateGrp. Both commonly appear together when a CF/SF election lands in a later submission group.Can one record forward to more than one state?
CFSFElectionStateCd can repeat many times on a single record — up to roughly sixty occurrences on a 1099-NEC, MISC, or INT — with a matching per-state totals group for each state you elect.Does my TCC need anything special for CF/SF?
S1H002 requires the transmitter control code on the transmission to be enrolled in the CF/SF program before an election is honored. Setting the flag without that enrollment is a data mismatch.If I elect CF/SF, am I done with state filing?
Can I add CF/SF to a return I already filed federally?
Why was my state code rejected as invalid?
CFSFElectionStateCd isn’t on the 33-state participating list checked by SHAREDIRFORM019_002 — usually a non-CF/SF state like New York or a simple typo. Validate codes against the list before building the file.Does e1099f handle the first-submission rule for me?
Not tax advice. This is general information about IRS procedures and the IRIS Combined Federal/State Filing program; the rules and schema may change as the IRS updates IRIS, and the published IRS materials are authoritative. State requirements vary — consult a tax professional for your specific situation.