Documentation
¶
Index ¶
Constants ¶
View Source
const ( // TRecordType indicates type of transmitter “T” record TRecordType = "T" // ARecordType indicates type of payer “A” record ARecordType = "A" // BRecordType indicates type of payee “B” record BRecordType = "B" // CRecordType indicates type of end payer “C” record CRecordType = "C" // KRecordType indicates type of totals “K” record KRecordType = "K" // FRecordType indicates name of transmission “F” record FRecordType = "F" // Sub1097BtcType indicates extension block type of payee “B” record for form 1097-BTC Sub1097BtcType = "1097-BTC" // Sub1098Type indicates extension block type of payee “B” record for form 1098 Sub1098Type = "1098" // Sub1098CType indicates extension block type of payee “B” record for form 1098-C Sub1098CType = "1098-C" // Sub1098EType indicates extension block type of payee “B” record for form 1098-E Sub1098EType = "1098-E" // Sub1098FType indicates extension block type of payee “B” record for form 1098-F Sub1098FType = "1098-F" // Sub1098QType indicates extension block type of payee “B” record for form 1098-Q Sub1098QType = "1098-Q" // Sub1098TType indicates extension block type of payee “B” record for form 1098-Q Sub1098TType = "1098-T" // Sub1099AType indicates extension block type of payee “B” record for form 1099-A Sub1099AType = "1099-A" // Sub1099BType indicates extension block type of payee “B” record for form 1099-B Sub1099BType = "1099-B" // Sub1099CType indicates extension block type of payee “B” record for form 1099-C Sub1099CType = "1099-C" // Sub1099CapType indicates extension block type of payee “B” record for form 1099-CAP Sub1099CapType = "1099-CAP" // Sub1099DivType indicates extension block type of payee “B” record for form 1099-DIV Sub1099DivType = "1099-DIV" // Sub1099GType indicates extension block type of payee “B” record for form 1099-G Sub1099GType = "1099-G" // Sub1099HType indicates extension block type of payee “B” record for form 1099-H Sub1099HType = "1099-H" // Sub1099IntType indicates extension block type of payee “B” record for form 1099-INT Sub1099IntType = "1099-INT" // Sub1099KType indicates extension block type of payee “B” record for form 1099-K Sub1099KType = "1099-K" // Sub1099LsType indicates extension block type of payee “B” record for form 1099-LS Sub1099LsType = "1099-LS" // Sub1099LtcType indicates extension block type of payee “B” record for form 1099-LTC Sub1099LtcType = "1099-LTC" // Sub1099MiscType indicates extension block type of payee “B” record for form 1099-MISC Sub1099MiscType = "1099-MISC" // Sub1099NecType indicates extension block type of payee “B” record for form 1099-NEC Sub1099NecType = "1099-NEC" // Sub1099OidType indicates extension block type of payee “B” record for form 1099-OID Sub1099OidType = "1099-OID" // Sub1099PatrType indicates extension block type of payee “B” record for form 1099-PATR Sub1099PatrType = "1099-PATR" // Sub1099QType indicates extension block type of payee “B” record for form 1099-Q Sub1099QType = "1099-Q" // Sub1099RType indicates extension block type of payee “B” record for form 1099-R Sub1099RType = "1099-R" // Sub1099SType indicates extension block type of payee “B” record for form 1099-S Sub1099SType = "1099-S" // Sub1099SaType indicates extension block type of payee “B” record for form 1099-SA Sub1099SaType = "1099-SA" // Sub1099SbType indicates extension block type of payee “B” record for form 1099-SB Sub1099SbType = "1099-SB" // Sub3921Type indicates extension block type of payee “B” record for form 3921 Sub3921Type = "3921" // Sub3922Type indicates extension block type of payee “B” record for form 3922 Sub3922Type = "3922" // Sub5498Type indicates extension block type of payee “B” record for form 5498 Sub5498Type = "5498" // Sub5498EsaType indicates extension block type of payee “B” record for form 5498-ESA Sub5498EsaType = "5498ESA" // Sub5498SaType indicates extension block type of payee “B” record for form 5498-SA Sub5498SaType = "5498SA" // SubW2GType indicates extension block type of payee “B” record for form W-2G SubW2GType = "W2G" )
View Source
const ( // RecordLength indicates length of general record RecordLength = 750 // SubRecordLength indicates length of sub record for payee “B” record SubRecordLength = 207 )
View Source
const ( // BlankString indicates the empty string BlankString = " " // ZeroString indicates the zero string ZeroString = "0" // dateFormat indicates data format like as YYYYMMDD DateFormat = "20060102" )
View Source
const ( // PriorYearDataIndicator indicates that reporting prior year data PriorYearDataIndicator = "P" // TestFileIndicator indicates this is a test file TestFileIndicator = "T" // ForeignEntityIndicator indicates the transmitter is a foreign entity ForeignEntityIndicator = "1" // Software was purchased from a vendor or other source VendorIndicatorPurchased = "V" // Software was produced by in-house programmers VendorIndicatorProduced = "I" // FSFilingProgramApproved indicates approved and submitting information as part of the CF/SF Program FSFilingProgramApproved = "1" // LastFilingIndicator indicates this is the last year this payer name and TIN will file information returns electronically or on paper LastFilingIndicator = "1" // The entity in the Second Payer Name Line Field is the transfer (or paying) agent TransferAgentIndicator = "1" // The entity shown is not the transfer agent NotTransferAgentIndicator = "0" // For a one-transaction correction or the first of a two transaction correction CorrectedReturnIndicatorG = "G" // For a second transaction of a two-transaction correction CorrectedReturnIndicatorC = "C" // TinType1 is used to identify an employer identification number (EIN) TinType1 = "1" // TinType2 is used to identify SSN, ITIN, ATIN TinType2 = "2" // the address of the payee is in a foreign country ForeignCountryIndicator = "1" // SecondTINNotice indicates notification by the IRS twice within // three calendar years that the payee provided an incorrect name and/or TIN combination SecondTINNotice = "2" // FatcaFilingRequirementIndicator indicates there is a FATCA Filing Requirement FatcaFilingRequirementIndicator = "1" // DirectSalesIndicator indicates sales of $5,000 or more of // consumer products to a person on a buy-sell, depositcommission, or any other commission basis for resale // anywhere other than in a permanent retail establishment DirectSalesIndicator = "1" // Enter “1” (one) if Property Securing Mortgage is the same as payer/borrowers’ address. PropertySecuringMortgageIndicator = "1" // Enter “1” (one) for general field GeneralOneIndicator = "1" // Enter “2” (one) for general field GeneralTwoIndicator = "2" )
View Source
const ( OutputJsonFormat = "json" OutputIrsFormat = "irs" )
View Source
const ( Nullable = "" Required = "Y" Applicable = "A" Expandable = "E" Omitted = "O" )
field properties
View Source
const ( Alphanumeric = 1 << iota AlphanumericRightAlign Numeric ZeroNumeric TelephoneNumber Percent Email DateYear Date )
field types
Variables ¶
View Source
var ( // Transmitter “T” Record TRecordLayout = map[string]SpecField{ "RecordType": {0, 1, Alphanumeric, Required}, "PaymentYear": {1, 4, DateYear, Required}, "PriorYearDataIndicator": {5, 1, Alphanumeric, Required}, "TIN": {6, 9, Numeric, Required}, "TCC": {15, 5, Alphanumeric, Required}, "Blank1": {20, 7, Alphanumeric, Nullable}, "TestFileIndicator": {27, 1, Alphanumeric, Applicable}, "ForeignEntityIndicator": {28, 1, Alphanumeric, Applicable}, "TransmitterName": {29, 40, Alphanumeric, Required}, "TransmitterNameContinuation": {69, 40, Alphanumeric, Applicable}, "CompanyName": {109, 40, Alphanumeric, Required}, "CompanyNameContinuation": {149, 40, Alphanumeric, Applicable}, "CompanyMailingAddress": {189, 40, Alphanumeric, Required}, "CompanyCity": {229, 40, Alphanumeric, Required}, "CompanyState": {269, 2, Alphanumeric, Required}, "CompanyZipCode": {271, 9, Numeric, Required}, "Blank2": {280, 15, Alphanumeric, Nullable}, "TotalNumberPayees": {295, 8, ZeroNumeric, Applicable}, "ContactName": {303, 40, Alphanumeric, Required}, "ContactTelephoneNumber": {343, 15, TelephoneNumber, Required}, "ContactEmailAddress": {358, 50, Email, Applicable}, "Blank3": {408, 91, Alphanumeric, Nullable}, "RecordSequenceNumber": {499, 8, ZeroNumeric, Required}, "Blank4": {507, 10, Alphanumeric, Nullable}, "VendorIndicator": {517, 1, Alphanumeric, Required}, "VendorName": {518, 40, Alphanumeric, Required}, "VendorMailingAddress": {558, 40, Alphanumeric, Required}, "VendorCity": {598, 40, Alphanumeric, Required}, "VendorState": {638, 2, Alphanumeric, Required}, "VendorZipCode": {640, 9, Numeric, Required}, "VendorContactName": {649, 40, Alphanumeric, Required}, "VendorContactTelephoneNumber": {689, 15, TelephoneNumber, Required}, "Blank5": {704, 35, Alphanumeric, Nullable}, "VendorForeignEntityIndicator": {739, 1, Alphanumeric, Applicable}, "Blank6": {740, 8, Alphanumeric, Nullable}, "Blank7": {748, 2, Alphanumeric, Nullable}, } // Payer “A” Record ARecordLayout = map[string]SpecField{ "RecordType": {0, 1, Alphanumeric, Required}, "PaymentYear": {1, 4, DateYear, Required}, "CombinedFSFilingProgram": {5, 1, Alphanumeric, Applicable}, "Blank1": {6, 5, Alphanumeric, Nullable}, "TIN": {11, 9, Numeric, Required}, "PayerNameControl": {20, 4, Alphanumeric, Applicable}, "LastFilingIndicator": {24, 1, Alphanumeric, Applicable}, "TypeOfReturn": {25, 2, Alphanumeric, Required}, "AmountCodes": {27, 16, Alphanumeric, Required}, "Blank2": {43, 8, Alphanumeric, Nullable}, "ForeignEntityIndicator": {51, 1, Alphanumeric, Applicable}, "FirstPayerNameLine": {52, 40, Alphanumeric, Required}, "SecondPayerNameLine": {92, 40, Alphanumeric, Applicable}, "TransferAgentIndicator": {132, 1, Alphanumeric, Required}, "PayerShippingAddress": {133, 40, Alphanumeric, Required}, "PayerCity": {173, 40, Alphanumeric, Required}, "PayerState": {213, 2, Alphanumeric, Required}, "PayerZipCode": {215, 9, Numeric, Required}, "PayerTelephoneNumber": {224, 15, TelephoneNumber, Required}, "Blank3": {239, 260, Alphanumeric, Nullable}, "RecordSequenceNumber": {499, 8, ZeroNumeric, Required}, "Blank4": {507, 241, Alphanumeric, Nullable}, "Blank5": {748, 2, Alphanumeric, Nullable}, } // Payee “B” Record BRecordLayout = map[string]SpecField{ "RecordType": {0, 1, Alphanumeric, Required}, "PaymentYear": {1, 4, DateYear, Required}, "CorrectedReturnIndicator": {5, 1, Alphanumeric, Applicable}, "NameControl": {6, 4, Alphanumeric, Applicable}, "TypeOfTIN": {10, 1, Numeric, Applicable}, "TIN": {11, 9, Numeric, Required}, "PayerAccountNumber": {20, 20, Alphanumeric, Applicable}, "PayerOfficeCode": {40, 4, Alphanumeric, Applicable}, "Blank1": {44, 10, Alphanumeric, Nullable}, "PaymentAmount1": {54, 12, ZeroNumeric, Applicable}, "PaymentAmount2": {66, 12, ZeroNumeric, Applicable}, "PaymentAmount3": {78, 12, ZeroNumeric, Applicable}, "PaymentAmount4": {90, 12, ZeroNumeric, Applicable}, "PaymentAmount5": {102, 12, ZeroNumeric, Applicable}, "PaymentAmount6": {114, 12, ZeroNumeric, Applicable}, "PaymentAmount7": {126, 12, ZeroNumeric, Applicable}, "PaymentAmount8": {138, 12, ZeroNumeric, Applicable}, "PaymentAmount9": {150, 12, ZeroNumeric, Applicable}, "PaymentAmountA": {162, 12, ZeroNumeric, Applicable}, "PaymentAmountB": {174, 12, ZeroNumeric, Applicable}, "PaymentAmountC": {186, 12, ZeroNumeric, Applicable}, "PaymentAmountD": {198, 12, ZeroNumeric, Applicable}, "PaymentAmountE": {210, 12, ZeroNumeric, Applicable}, "PaymentAmountF": {222, 12, ZeroNumeric, Applicable}, "PaymentAmountG": {234, 12, ZeroNumeric, Applicable}, "PaymentAmountH": {246, 12, ZeroNumeric, Applicable}, "PaymentAmountJ": {258, 12, ZeroNumeric, Applicable}, "Blank2": {270, 16, Alphanumeric, Nullable}, "ForeignCountryIndicator": {286, 1, Alphanumeric, Applicable}, "FirstPayeeNameLine": {287, 40, Alphanumeric, Required}, "SecondPayeeNameLine": {327, 40, Alphanumeric, Applicable}, "PayeeMailingAddress": {367, 40, Alphanumeric, Required}, "Blank3": {407, 40, Alphanumeric, Nullable}, "PayeeCity": {447, 40, Alphanumeric, Required}, "PayeeState": {487, 2, Alphanumeric, Required}, "PayeeZipCode": {489, 9, Numeric, Required}, "Blank4": {498, 1, Alphanumeric, Nullable}, "RecordSequenceNumber": {499, 8, ZeroNumeric, Required}, "Blank5": {507, 36, Alphanumeric, Nullable}, "Reserved": {543, 207, Alphanumeric, Expandable}, } // End of Payer “C” Record CRecordLayout = map[string]SpecField{ "RecordType": {0, 1, Alphanumeric, Required}, "NumberPayees": {1, 8, ZeroNumeric, Required}, "Blank1": {9, 6, Alphanumeric, Nullable}, "ControlTotal1": {15, 18, ZeroNumeric, Applicable}, "ControlTotal2": {33, 18, ZeroNumeric, Applicable}, "ControlTotal3": {51, 18, ZeroNumeric, Applicable}, "ControlTotal4": {69, 18, ZeroNumeric, Applicable}, "ControlTotal5": {87, 18, ZeroNumeric, Applicable}, "ControlTotal6": {105, 18, ZeroNumeric, Applicable}, "ControlTotal7": {123, 18, ZeroNumeric, Applicable}, "ControlTotal8": {141, 18, ZeroNumeric, Applicable}, "ControlTotal9": {159, 18, ZeroNumeric, Applicable}, "ControlTotalA": {177, 18, ZeroNumeric, Applicable}, "ControlTotalB": {195, 18, ZeroNumeric, Applicable}, "ControlTotalC": {213, 18, ZeroNumeric, Applicable}, "ControlTotalD": {231, 18, ZeroNumeric, Applicable}, "ControlTotalE": {249, 18, ZeroNumeric, Applicable}, "ControlTotalF": {267, 18, ZeroNumeric, Applicable}, "ControlTotalG": {285, 18, ZeroNumeric, Applicable}, "ControlTotalH": {303, 18, ZeroNumeric, Applicable}, "ControlTotalJ": {321, 18, ZeroNumeric, Applicable}, "Blank2": {339, 160, Alphanumeric, Nullable}, "RecordSequenceNumber": {499, 8, ZeroNumeric, Required}, "Blank3": {507, 241, Alphanumeric, Nullable}, "Blank4": {748, 2, Alphanumeric, Nullable}, } // State Totals “K” Record KRecordLayout = map[string]SpecField{ "RecordType": {0, 1, Alphanumeric, Required}, "NumberPayees": {1, 8, ZeroNumeric, Required}, "Blank1": {9, 6, Alphanumeric, Nullable}, "ControlTotal1": {15, 18, ZeroNumeric, Applicable}, "ControlTotal2": {33, 18, ZeroNumeric, Applicable}, "ControlTotal3": {51, 18, ZeroNumeric, Applicable}, "ControlTotal4": {69, 18, ZeroNumeric, Applicable}, "ControlTotal5": {87, 18, ZeroNumeric, Applicable}, "ControlTotal6": {105, 18, ZeroNumeric, Applicable}, "ControlTotal7": {123, 18, ZeroNumeric, Applicable}, "ControlTotal8": {141, 18, ZeroNumeric, Applicable}, "ControlTotal9": {159, 18, ZeroNumeric, Applicable}, "ControlTotalA": {177, 18, ZeroNumeric, Applicable}, "ControlTotalB": {195, 18, ZeroNumeric, Applicable}, "ControlTotalC": {213, 18, ZeroNumeric, Applicable}, "ControlTotalD": {231, 18, ZeroNumeric, Applicable}, "ControlTotalE": {249, 18, ZeroNumeric, Applicable}, "ControlTotalF": {267, 18, ZeroNumeric, Applicable}, "ControlTotalG": {285, 18, ZeroNumeric, Applicable}, "ControlTotalH": {303, 18, ZeroNumeric, Applicable}, "ControlTotalJ": {321, 18, ZeroNumeric, Applicable}, "Blank2": {339, 160, Alphanumeric, Nullable}, "RecordSequenceNumber": {499, 8, ZeroNumeric, Required}, "Blank3": {507, 199, Alphanumeric, Nullable}, "StateIncomeTaxWithheldTotal": {706, 18, Numeric, Applicable}, "LocalIncomeTaxWithheldTotal": {724, 18, Numeric, Applicable}, "Blank4": {742, 4, Alphanumeric, Nullable}, "CombinedFederalStateCode": {746, 2, Alphanumeric, Required}, "Blank5": {748, 2, Alphanumeric, Nullable}, } // End of Transmission “F” Record FRecordLayout = map[string]SpecField{ "RecordType": {0, 1, Alphanumeric, Required}, "NumberPayerRecords": {1, 8, ZeroNumeric, Required}, "Zero": {9, 21, ZeroNumeric, Applicable}, "Blank2": {30, 19, Alphanumeric, Nullable}, "TotalNumberPayees": {49, 8, ZeroNumeric, Applicable}, "Blank3": {57, 442, Alphanumeric, Nullable}, "RecordSequenceNumber": {499, 8, ZeroNumeric, Required}, "Blank4": {507, 241, Alphanumeric, Nullable}, "Blank5": {748, 2, Alphanumeric, Nullable}, } )
View Source
var ( // Record Layout Positions 544-750 for Form 1097-BTC Sub1097BTCLayout = map[string]SpecField{ "Blank1": {0, 3, Alphanumeric, Nullable}, "IssuerIndicator": {3, 1, Numeric, Required}, "Blank2": {4, 8, Alphanumeric, Nullable}, "Code": {12, 1, Alphanumeric, Required}, "Blank3": {13, 3, Alphanumeric, Nullable}, "UniqueIdentifier": {16, 39, AlphanumericRightAlign, Applicable}, "BondType": {55, 3, Alphanumeric, Required}, "Blank4": {58, 61, Alphanumeric, Nullable}, "SpecialDataEntries": {119, 60, Alphanumeric, Applicable}, "Blank5": {179, 26, Alphanumeric, Nullable}, "Blank6": {205, 2, Alphanumeric, Nullable}, } // Record Layout Positions 544-750 for Form 1098 Sub1098Layout = map[string]SpecField{ "MortgageOriginationDate": {0, 8, Date, Applicable}, "PropertySecuringMortgageIndicator": {8, 1, Alphanumeric, Applicable}, "PropertyADSecuringMortgage": {9, 39, Alphanumeric, Applicable}, "Other": {48, 39, Alphanumeric, Applicable}, "Blank1": {87, 39, Alphanumeric, Nullable}, "NumberMortgagedProperties": {126, 4, ZeroNumeric, Applicable}, "SpecialDataEntries": {130, 49, Alphanumeric, Applicable}, "MortgageAcquisitionDate": {179, 8, Date, Applicable}, "Blank2": {187, 18, Alphanumeric, Nullable}, "Blank3": {205, 2, Alphanumeric, Nullable}, } // Record Layout Positions 544-750 for Form 1098-C Sub1098CLayout = map[string]SpecField{ "Blank1": {0, 2, Alphanumeric, Nullable}, "TransactionIndicator": {2, 1, Alphanumeric, Applicable}, "TransferAfterImprovementsIndicator": {3, 1, Alphanumeric, Applicable}, "TransferMarketValueIndicator": {4, 1, Alphanumeric, Applicable}, "Year": {5, 4, DateYear, Applicable}, "Make": {9, 13, Alphanumeric, Applicable}, "Model": {22, 22, Alphanumeric, Applicable}, "VehicleIdentificationNumber": {44, 25, Alphanumeric, Applicable}, "VehicleDescription": {69, 39, Alphanumeric, Applicable}, "DateContribution": {108, 8, Date, Applicable}, "DoneeIndicator": {116, 1, Alphanumeric, Applicable}, "IntangibleReligiousBenefitsIndicator": {117, 1, Alphanumeric, Applicable}, "DeductionLessIndicator": {118, 1, Alphanumeric, Applicable}, "SpecialDataEntries": {119, 60, Alphanumeric, Applicable}, "DateSale": {179, 8, Date, Applicable}, "GoodsServices": {187, 16, Alphanumeric, Applicable}, "Blank2": {203, 2, Alphanumeric, Nullable}, "Blank3": {205, 2, Alphanumeric, Nullable}, } // Record Layout Positions 544-750 for Form 1098-E Sub1098ELayout = map[string]SpecField{ "Blank1": {0, 3, Alphanumeric, Nullable}, "OriginationInterestIndicator": {3, 1, Alphanumeric, Applicable}, "Blank2": {4, 115, Alphanumeric, Nullable}, "SpecialDataEntries": {119, 60, Alphanumeric, Applicable}, "Blank3": {179, 26, Alphanumeric, Nullable}, "Blank4": {205, 2, Alphanumeric, Nullable}, } // Record Layout Positions 544-750 for Form 1098-F Sub1098FLayout = map[string]SpecField{ "DateOrderAgreement": {0, 8, Date, Applicable}, "Jurisdiction": {8, 39, Alphanumeric, Applicable}, "CaseNumber": {47, 39, Alphanumeric, Applicable}, "MatterSuitAgreement": {86, 39, Alphanumeric, Applicable}, "PaymentCode": {125, 6, Alphanumeric, Applicable}, "SpecialDataEntries": {131, 60, Alphanumeric, Applicable}, "Blank1": {191, 16, Alphanumeric, Nullable}, } // Record Layout Positions 544-750 for Form 1098-Q Sub1098QLayout = map[string]SpecField{ "Blank1": {0, 2, Alphanumeric, Nullable}, "AnnuityStartDate": {2, 8, Date, Applicable}, "AcceleratedIndicator": {10, 1, Alphanumeric, Applicable}, "January": {11, 2, ZeroNumeric, Omitted}, "February": {13, 2, ZeroNumeric, Omitted}, "March": {15, 2, ZeroNumeric, Omitted}, "April": {17, 2, ZeroNumeric, Omitted}, "May": {19, 2, ZeroNumeric, Omitted}, "June": {21, 2, ZeroNumeric, Omitted}, "July": {23, 2, ZeroNumeric, Omitted}, "August": {25, 2, ZeroNumeric, Omitted}, "September": {27, 2, ZeroNumeric, Omitted}, "October": {29, 2, ZeroNumeric, Omitted}, "November": {31, 2, ZeroNumeric, Omitted}, "December": {33, 2, ZeroNumeric, Omitted}, "Blank2": {35, 1, Alphanumeric, Nullable}, "NamePlan": {36, 39, Alphanumeric, Applicable}, "PlanNumber": {75, 20, Alphanumeric, Applicable}, "EmployerIdentificationNumber": {95, 9, Alphanumeric, Applicable}, "Blank3": {104, 101, Alphanumeric, Nullable}, "Blank4": {205, 2, Alphanumeric, Nullable}, } // Record Layout Positions 544-750 for Form 1098-T Sub1098TLayout = map[string]SpecField{ "IdentificationNumber": {0, 1, Alphanumeric, Applicable}, "Blank1": {1, 2, Alphanumeric, Nullable}, "HalfTimeStudentIndicator": {3, 1, Alphanumeric, Applicable}, "GraduateStudentIndicator": {4, 1, Numeric, Applicable}, "AcademicPeriodIndicator": {5, 1, Numeric, Applicable}, "Blank2": {6, 1, Alphanumeric, Nullable}, "Blank3": {7, 112, Alphanumeric, Nullable}, "SpecialDataEntries": {119, 60, Alphanumeric, Applicable}, "Blank4": {179, 26, Alphanumeric, Nullable}, "Blank5": {205, 2, Alphanumeric, Nullable}, } // Record Layout Positions 544-750 for Form 1099-A Sub1099ALayout = map[string]SpecField{ "Blank1": {0, 3, Alphanumeric, Nullable}, "PersonalLiabilityIndicator": {3, 1, Alphanumeric, Applicable}, "DateAcquisitionKnowledgeAbandonment": {4, 8, Date, Applicable}, "DescriptionProperty": {12, 39, Alphanumeric, Applicable}, "Blank2": {51, 68, Alphanumeric, Nullable}, "SpecialDataEntries": {119, 60, Alphanumeric, Applicable}, "Blank3": {179, 26, Alphanumeric, Nullable}, "Blank4": {205, 2, Alphanumeric, Nullable}, } // Record Layout Positions 544-750 for Form 1099-B Sub1099BLayout = map[string]SpecField{ "SecondTinNotice": {0, 1, Alphanumeric, Applicable}, "NoncoveredSecurityIndicator": {1, 1, Alphanumeric, Applicable}, "TypeGainLossIndicator": {2, 1, Alphanumeric, Applicable}, "GrossProceedsIndicator": {3, 1, Alphanumeric, Applicable}, "DateSoldDisposed": {4, 8, Date, Applicable}, "CUSIP": {12, 13, AlphanumericRightAlign, Applicable}, "DescriptionProperty": {25, 39, Alphanumeric, Applicable}, "DateAcquired": {64, 8, Date, Applicable}, "LossNotAllowedIndicator": {72, 1, Alphanumeric, Applicable}, "ApplicableCheckboxForm8949": {73, 1, Alphanumeric, Applicable}, "ApplicableCheckboxCollectables": {74, 1, Alphanumeric, Applicable}, "FATCA": {75, 1, Alphanumeric, Applicable}, "ApplicableCheckboxQOF": {76, 1, Alphanumeric, Applicable}, "Blank2": {77, 42, Alphanumeric, Nullable}, "SpecialDataEntries": {119, 60, Alphanumeric, Applicable}, "StateIncomeTaxWithheld": {179, 12, ZeroNumeric, Applicable}, "LocalIncomeTaxWithheld": {191, 12, ZeroNumeric, Applicable}, "CombinedFSCode": {203, 2, ZeroNumeric, Required}, "Blank3": {205, 2, Alphanumeric, Nullable}, } // Record Layout Positions 544-750 for Form 1099-C Sub1099CLayout = map[string]SpecField{ "Blank1": {0, 3, Alphanumeric, Nullable}, "IdentifiableEventCode": {3, 1, Alphanumeric, Required}, "DateIdentifiableEvent": {4, 8, Date, Applicable}, "DebtDescription": {12, 39, Alphanumeric, Applicable}, "PersonalLiabilityIndicator": {51, 1, Alphanumeric, Applicable}, "Blank2": {52, 67, Alphanumeric, Nullable}, "SpecialDataEntries": {119, 60, Alphanumeric, Applicable}, "Blank3": {179, 26, Alphanumeric, Nullable}, "Blank4": {205, 2, Alphanumeric, Nullable}, } // Record Layout Positions 544-750 for Form 1099-CAP Sub1099CAPLayout = map[string]SpecField{ "Blank1": {0, 4, Alphanumeric, Nullable}, "DateSaleExchange": {4, 8, Date, Applicable}, "Blank2": {12, 52, Alphanumeric, Nullable}, "NumberSharesExchanged": {64, 8, ZeroNumeric, Applicable}, "ClassesStockExchanged": {72, 10, Alphanumeric, Applicable}, "Blank3": {82, 37, Alphanumeric, Nullable}, "SpecialDataEntries": {119, 60, Alphanumeric, Applicable}, "Blank4": {179, 26, Alphanumeric, Nullable}, "Blank5": {205, 2, Alphanumeric, Nullable}, } // Record Layout Positions 544-750 for Form 1099-DIV Sub1099DIVLayout = map[string]SpecField{ "SecondTinNotice": {0, 1, Alphanumeric, Applicable}, "Blank1": {1, 2, Alphanumeric, Nullable}, "ForeignCountryPossession": {3, 40, Alphanumeric, Applicable}, "FATCA": {43, 1, Alphanumeric, Applicable}, "Blank2": {44, 75, Alphanumeric, Nullable}, "SpecialDataEntries": {119, 60, Alphanumeric, Applicable}, "StateIncomeTaxWithheld": {179, 12, ZeroNumeric, Applicable}, "LocalIncomeTaxWithheld": {191, 12, ZeroNumeric, Applicable}, "CombinedFSCode": {203, 2, ZeroNumeric, Required}, "Blank3": {205, 2, Alphanumeric, Nullable}, } // Record Layout Positions 544-750 for Form 1099-G Sub1099GLayout = map[string]SpecField{ "SecondTinNotice": {0, 1, Alphanumeric, Applicable}, "Blank1": {1, 2, Alphanumeric, Nullable}, "TradeBusinessIndicator": {3, 1, Alphanumeric, Applicable}, "TaxYearRefund": {4, 4, DateYear, Applicable}, "Blank2": {8, 111, Alphanumeric, Nullable}, "SpecialDataEntries": {119, 60, Alphanumeric, Applicable}, "StateIncomeTaxWithheld": {179, 12, ZeroNumeric, Applicable}, "LocalIncomeTaxWithheld": {191, 12, ZeroNumeric, Applicable}, "CombinedFSCode": {203, 2, ZeroNumeric, Required}, "Blank3": {205, 2, Alphanumeric, Nullable}, } // Record Layout Positions 544-750 for Form 1099-H Sub1099HLayout = map[string]SpecField{ "Blank1": {0, 3, Alphanumeric, Nullable}, "NumberMonthsEligible": {3, 2, Numeric, Required}, "Blank2": {5, 114, Alphanumeric, Nullable}, "SpecialDataEntries": {119, 60, Alphanumeric, Applicable}, "Blank4": {179, 26, Alphanumeric, Nullable}, "Blank5": {205, 2, Alphanumeric, Nullable}, } // Record Layout Positions 544-750 for Form 1099-INT Sub1099INTLayout = map[string]SpecField{ "SecondTinNotice": {0, 1, Alphanumeric, Applicable}, "Blank1": {1, 2, Alphanumeric, Nullable}, "ForeignCountry": {3, 40, Alphanumeric, Applicable}, "CUSIP": {43, 13, AlphanumericRightAlign, Applicable}, "FATCA": {56, 1, Alphanumeric, Applicable}, "Blank2": {57, 62, Alphanumeric, Nullable}, "SpecialDataEntries": {119, 60, Alphanumeric, Applicable}, "StateIncomeTaxWithheld": {179, 12, ZeroNumeric, Applicable}, "LocalIncomeTaxWithheld": {191, 12, ZeroNumeric, Applicable}, "CombinedFSCode": {203, 2, ZeroNumeric, Required}, "Blank3": {205, 2, Alphanumeric, Nullable}, } // Record Layout Positions 544-750 for Form 1099-K Sub1099KLayout = map[string]SpecField{ "SecondTinNotice": {0, 1, Alphanumeric, Applicable}, "Blank1": {1, 2, Alphanumeric, Nullable}, "TypeFilerIndicator": {3, 1, Alphanumeric, Required}, "TypePaymentIndicator": {4, 1, Alphanumeric, Required}, "NumberPaymentTransactions": {5, 13, ZeroNumeric, Applicable}, "Blank2": {18, 3, Alphanumeric, Nullable}, "PaymentSettlementNamePhoneNumber": {21, 40, Alphanumeric, Applicable}, "MerchantCategoryCode": {61, 4, ZeroNumeric, Applicable}, "Blank3": {69, 54, Alphanumeric, Nullable}, "SpecialDataEntries": {119, 60, Alphanumeric, Applicable}, "StateIncomeTaxWithheld": {179, 12, ZeroNumeric, Applicable}, "LocalIncomeTaxWithheld": {191, 12, ZeroNumeric, Applicable}, "CombinedFSCode": {203, 2, ZeroNumeric, Required}, "Blank4": {205, 2, Alphanumeric, Nullable}, } // Record Layout Positions 544-750 for Form 1099-LS Sub1099LSLayout = map[string]SpecField{ "Blank1": {0, 2, Alphanumeric, Nullable}, "DateSale": {2, 8, Date, Applicable}, "Blank2": {10, 109, Alphanumeric, Nullable}, "IssuersInformation": {119, 39, Alphanumeric, Applicable}, "Blank3": {158, 47, Alphanumeric, Nullable}, "Blank4": {205, 2, Alphanumeric, Nullable}, } // Record Layout Positions 544-750 for Form 1099-LTC Sub1099LTCLayout = map[string]SpecField{ "Blank1": {0, 3, Alphanumeric, Nullable}, "TypePaymentIndicator": {3, 1, Alphanumeric, Applicable}, "SocialSecurityNumberInsured": {4, 9, Alphanumeric, Required}, "NameInsured": {13, 40, Alphanumeric, Required}, "AddressInsured": {53, 40, Alphanumeric, Applicable}, "CityInsured": {93, 40, Alphanumeric, Applicable}, "StateInsured": {133, 2, Alphanumeric, Required}, "ZipCodeInsured": {135, 9, Numeric, Required}, "StatusIllnessIndicator": {144, 1, Alphanumeric, Applicable}, "DateCertified": {145, 8, Date, Applicable}, "QualifiedContractIndicator": {153, 1, Alphanumeric, Applicable}, "Blank2": {154, 25, Alphanumeric, Nullable}, "StateIncomeTaxWithheld": {179, 12, ZeroNumeric, Applicable}, "LocalIncomeTaxWithheld": {191, 12, ZeroNumeric, Applicable}, "Blank3": {203, 2, Alphanumeric, Nullable}, "Blank4": {205, 2, Alphanumeric, Nullable}, } // Record Layout Positions 544-750 for Form 1099-MISC Sub1099MISCLayout = map[string]SpecField{ "SecondTinNotice": {0, 1, Alphanumeric, Applicable}, "Blank1": {1, 2, Alphanumeric, Nullable}, "DirectSalesIndicator": {3, 1, Alphanumeric, Applicable}, "FATCA": {4, 1, Alphanumeric, Applicable}, "Blank2": {5, 114, Alphanumeric, Nullable}, "SpecialDataEntries": {119, 60, Alphanumeric, Applicable}, "StateIncomeTaxWithheld": {179, 12, ZeroNumeric, Applicable}, "LocalIncomeTaxWithheld": {191, 12, ZeroNumeric, Applicable}, "CombinedFSCode": {203, 2, ZeroNumeric, Required}, "Blank3": {205, 2, Alphanumeric, Nullable}, } // Record Layout Positions 544-750 for Form 1099-NEC Sub1099NECLayout = map[string]SpecField{ "SecondTinNotice": {0, 1, Alphanumeric, Applicable}, "Blank1": {1, 2, Alphanumeric, Nullable}, "DirectSalesIndicator": {3, 1, Alphanumeric, Applicable}, "Blank2": {4, 175, Alphanumeric, Nullable}, "StateIncomeTaxWithheld": {179, 12, ZeroNumeric, Applicable}, "LocalIncomeTaxWithheld": {191, 12, ZeroNumeric, Applicable}, "CombinedFSCode": {203, 2, ZeroNumeric, Required}, "Blank3": {205, 2, Alphanumeric, Nullable}, } // Record Layout Positions 544-750 for Form 1099-OID Sub1099OIDLayout = map[string]SpecField{ "SecondTinNotice": {0, 1, Alphanumeric, Applicable}, "Blank1": {1, 2, Alphanumeric, Nullable}, "Description": {3, 39, Alphanumeric, Applicable}, "FATCA": {42, 1, Alphanumeric, Applicable}, "Blank2": {43, 76, Alphanumeric, Nullable}, "SpecialDataEntries": {119, 60, Alphanumeric, Applicable}, "StateIncomeTaxWithheld": {179, 12, ZeroNumeric, Applicable}, "LocalIncomeTaxWithheld": {191, 12, ZeroNumeric, Applicable}, "CombinedFSCode": {203, 2, ZeroNumeric, Required}, "Blank3": {205, 2, Alphanumeric, Nullable}, } // Record Layout Positions 544-750 for Form 1099-PATR Sub1099PATRLayout = map[string]SpecField{ "SecondTinNotice": {0, 1, Alphanumeric, Applicable}, "Blank1": {1, 118, Alphanumeric, Nullable}, "SpecialDataEntries": {119, 60, Alphanumeric, Applicable}, "StateIncomeTaxWithheld": {179, 12, ZeroNumeric, Applicable}, "LocalIncomeTaxWithheld": {191, 12, ZeroNumeric, Applicable}, "CombinedFSCode": {203, 2, ZeroNumeric, Required}, "Blank3": {205, 2, Alphanumeric, Nullable}, } // Record Layout Positions 544-750 for Form 1099-Q Sub1099QLayout = map[string]SpecField{ "Blank1": {0, 3, Alphanumeric, Nullable}, "TrusteeTransferIndicator": {3, 1, Alphanumeric, Applicable}, "TypeTuitionPayment": {4, 1, Alphanumeric, Applicable}, "DesignatedBeneficiary": {5, 1, Alphanumeric, Applicable}, "Blank2": {6, 113, Alphanumeric, Nullable}, "SpecialDataEntries": {119, 60, Alphanumeric, Applicable}, "Blank3": {179, 26, Alphanumeric, Nullable}, "Blank4": {205, 2, Alphanumeric, Nullable}, } // Record Layout Positions 544-750 for Form 1099-R Sub1099RLayout = map[string]SpecField{ "Blank1": {0, 1, Alphanumeric, Nullable}, "DistributionCode": {1, 2, Alphanumeric, Required}, "TaxableAmountNotDeterminedIndicator": {3, 1, Alphanumeric, Applicable}, "ISSIndicator": {4, 1, Alphanumeric, Applicable}, "TotalDistributionIndicator": {5, 1, Alphanumeric, Applicable}, "PercentageTotalDistribution": {6, 2, Percent, Applicable}, "FirstYearDesignatedRothContribution": {8, 4, DateYear, Omitted}, "FATCA": {12, 1, Alphanumeric, Applicable}, "DatePayment": {13, 8, Date, Applicable}, "Blank2": {21, 98, Alphanumeric, Nullable}, "SpecialDataEntries": {119, 60, Alphanumeric, Applicable}, "StateIncomeTaxWithheld": {179, 12, ZeroNumeric, Applicable}, "LocalIncomeTaxWithheld": {191, 12, ZeroNumeric, Applicable}, "CombinedFSCode": {203, 2, ZeroNumeric, Required}, "Blank3": {205, 2, Alphanumeric, Nullable}, } // Record Layout Positions 544-750 for Form 1099-S Sub1099SLayout = map[string]SpecField{ "Blank1": {0, 3, Alphanumeric, Nullable}, "PropertyServicesIndicator": {3, 1, Alphanumeric, Applicable}, "DateClosing": {4, 8, Date, Applicable}, "AddressLegalDescription": {12, 39, Alphanumeric, Applicable}, "ForeignTransferor": {51, 1, Alphanumeric, Applicable}, "Blank2": {52, 67, Alphanumeric, Nullable}, "SpecialDataEntries": {119, 60, Alphanumeric, Applicable}, "StateIncomeTaxWithheld": {179, 12, ZeroNumeric, Applicable}, "LocalIncomeTaxWithheld": {191, 12, ZeroNumeric, Applicable}, "Blank3": {203, 2, Alphanumeric, Nullable}, "Blank4": {205, 2, Alphanumeric, Nullable}, } // Record Layout Positions 544-750 for Form 1099-SA Sub1099SALayout = map[string]SpecField{ "Blank1": {0, 1, Alphanumeric, Nullable}, "DistributionCode": {1, 1, Alphanumeric, Required}, "Blank2": {2, 1, Alphanumeric, Nullable}, "MedicareAdvantageMSAIndicator": {3, 1, Alphanumeric, Applicable}, "HSAIndicator": {4, 1, Alphanumeric, Applicable}, "ArcherMSAIndicator": {5, 1, Alphanumeric, Applicable}, "Blank3": {52, 113, Alphanumeric, Nullable}, "SpecialDataEntries": {119, 60, Alphanumeric, Applicable}, "StateIncomeTaxWithheld": {179, 12, ZeroNumeric, Applicable}, "LocalIncomeTaxWithheld": {191, 12, ZeroNumeric, Applicable}, "Blank4": {203, 2, Alphanumeric, Nullable}, "Blank5": {205, 2, Alphanumeric, Nullable}, } // Record Layout Positions 544-750 for Form 1099-SB Sub1099SBLayout = map[string]SpecField{ "Blank1": {0, 119, Alphanumeric, Nullable}, "IssuersInformation": {119, 39, Alphanumeric, Applicable}, "Blank2": {158, 47, Alphanumeric, Nullable}, "Blank3": {205, 2, Alphanumeric, Nullable}, } // Record Layout Positions 544-750 for Form 3921 Sub3921Layout = map[string]SpecField{ "Blank1": {0, 3, Alphanumeric, Nullable}, "DateOptionGranted": {3, 8, Date, Required}, "DateOptionExercised": {11, 8, Date, Required}, "NumberSharesTransferred": {19, 8, ZeroNumeric, Applicable}, "Blank2": {27, 4, Alphanumeric, Nullable}, "OtherThanTransferorInformation": {31, 40, Alphanumeric, Applicable}, "Blank3": {71, 48, Alphanumeric, Nullable}, "SpecialDataEntries": {119, 60, Alphanumeric, Applicable}, "Blank4": {179, 26, Alphanumeric, Nullable}, "Blank5": {205, 2, Alphanumeric, Nullable}, } // Record Layout Positions 544-750 for Form 3922 Sub3922Layout = map[string]SpecField{ "Blank1": {0, 3, Alphanumeric, Nullable}, "DateOptionGranted": {3, 8, Date, Required}, "DateOptionExercised": {11, 8, Date, Required}, "NumberSharesTransferred": {19, 8, ZeroNumeric, Applicable}, "DateLegalTitleTransferred": {27, 8, Date, Required}, "Blank2": {35, 84, Alphanumeric, Nullable}, "SpecialDataEntries": {119, 60, Alphanumeric, Applicable}, "Blank3": {179, 26, Alphanumeric, Nullable}, "Blank4": {205, 2, Alphanumeric, Nullable}, } // Record Layout Positions 544-750 for Form 5498 Sub5498Layout = map[string]SpecField{ "Blank1": {0, 3, Alphanumeric, Nullable}, "IRAIndicator": {3, 1, Alphanumeric, Applicable}, "SEPIndicator": {4, 1, Alphanumeric, Applicable}, "SIMPLEIndicator": {5, 1, Alphanumeric, Applicable}, "RothIRAIndicator": {6, 1, Alphanumeric, Applicable}, "RMDIndicator": {7, 1, Alphanumeric, Applicable}, "YearPostponedContribution": {8, 4, DateYear, Omitted}, "PostponedContributionCode": {12, 2, Alphanumeric, Applicable}, "PostponedContributionReason": {14, 6, Alphanumeric, Applicable}, "RepaymentCode": {20, 2, Alphanumeric, Applicable}, "RMDDate": {22, 8, Date, Applicable}, "Codes": {30, 2, Alphanumeric, Applicable}, "Blank2": {32, 87, Alphanumeric, Nullable}, "SpecialDataEntries": {119, 60, Alphanumeric, Applicable}, "Blank3": {179, 24, Alphanumeric, Nullable}, "CombinedFSCode": {203, 2, ZeroNumeric, Required}, "Blank4": {205, 2, Alphanumeric, Nullable}, } // Record Layout Positions 544-750 for Form 5498-ESA Sub5498ESALayout = map[string]SpecField{ "Blank1": {0, 119, Alphanumeric, Nullable}, "SpecialDataEntries": {119, 60, Alphanumeric, Applicable}, "Blank2": {179, 26, Alphanumeric, Nullable}, "Blank3": {205, 2, Alphanumeric, Nullable}, } // Record Layout Positions 544-750 for Form 5498-SA Sub5498SALayout = map[string]SpecField{ "Blank1": {0, 3, Alphanumeric, Nullable}, "MedicareAdvantageMSAIndicator": {3, 1, Alphanumeric, Applicable}, "HSAIndicator": {4, 1, Alphanumeric, Applicable}, "ArcherMSAIndicator": {5, 1, Alphanumeric, Applicable}, "Blank2": {6, 113, Alphanumeric, Nullable}, "SpecialDataEntries": {119, 60, Alphanumeric, Applicable}, "Blank3": {179, 26, Alphanumeric, Nullable}, "Blank4": {205, 2, Alphanumeric, Nullable}, } // Record Layout Positions 544-750 for Form W-2G SubW2GLayout = map[string]SpecField{ "Blank1": {0, 3, Alphanumeric, Nullable}, "TypeWagerCode": {3, 1, Alphanumeric, Required}, "DateWon": {4, 8, Date, Required}, "Transaction": {12, 15, Alphanumeric, Applicable}, "Race": {27, 5, Alphanumeric, Applicable}, "Cashier": {32, 5, Alphanumeric, Applicable}, "Window": {37, 5, Alphanumeric, Applicable}, "FirstID": {42, 15, Alphanumeric, Applicable}, "SecondID": {57, 15, Alphanumeric, Applicable}, "Blank2": {72, 47, Alphanumeric, Nullable}, "SpecialDataEntries": {119, 60, Alphanumeric, Applicable}, "StateIncomeTaxWithheld": {179, 12, ZeroNumeric, Applicable}, "LocalIncomeTaxWithheld": {191, 12, ZeroNumeric, Applicable}, "Blank3": {203, 2, Alphanumeric, Nullable}, "Blank4": {205, 2, Alphanumeric, Nullable}, } )
View Source
var AmountCodes = map[string]map[string]string{
"1097-BTC": {
"1": "Total Aggregate",
"2": "January payments",
"3": "February payments",
"4": "March payments",
"5": "April payments",
"6": "May payments",
"7": "June payments",
"8": "July payments",
"9": "August payments",
"A": "September payments",
"B": "October payments",
"C": "November payments",
"D": "December payments",
},
"1098": {
"1": "Mortgage",
"2": "Points",
"3": "Refund",
"4": "Mortgage Insurance Premium",
"5": "Blank",
"6": "Outstanding Mortgage Principal",
},
"1098-C": {
"4": "Gross proceeds from sales",
"6": "Value of goods or services",
},
"1098-E": {
"1": "Student loan interest received by the lender",
},
"1098-F": {
"1": "Total amount required to be paid",
"2": "Restitution/remediation amount",
"3": "Compliance amount",
},
"1098-Q": {
"1": "January payments",
"2": "February payments",
"3": "March payments",
"4": "April payments",
"5": "May payments",
"6": "June payments",
"7": "July payments",
"8": "August payments",
"9": "September payments",
"A": "October payments",
"B": "November payments",
"C": "December payments",
"D": "Total premiums",
"E": "Annuity amount on start date",
"F": "FMV of QLAC",
},
"1098-T": {
"1": "Payments",
"3": "Payments",
"4": "Scholarships",
"5": "Adjustments",
"7": "Reimbursements",
},
"1099-A": {
"2": "Balance of principal outstanding",
"4": "Fair market value of the property",
},
"1099-B": {
"2": "Proceeds",
"3": "Cost",
"4": "Federal income tax withheld",
"5": "Wash Sale Loss Disallowed",
"7": "Bartering",
"9": "Profit",
"A": "Unrealized profit",
"B": "Unrealized profit",
"C": "Aggregate profit",
"D": "Accrued Market Discount",
},
"1099-C": {
"2": "Amount of debt discharged",
"3": "Interest included in Amount Code 2",
"7": "Fair market value of property",
},
"1099-CAP": {
"2": "Aggregate amount received",
},
"1099-DIV": {
"1": "Total ordinary dividends",
"2": "Qualified dividends",
"3": "Total capital gain distribution",
"5": "Section 199A Dividends",
"6": "Unrecaptured Section 1250 gain",
"7": "Section 1202 gain",
"8": "Collectibles (28%) rate gain",
"9": "Nondividend distributions",
"A": "Federal income tax withheld",
"B": "Investment expenses",
"C": "Foreign tax paid",
"D": "Cash liquidation distributions",
"E": "Non-cash liquidation distributions",
"F": "Exempt interest dividends",
"G": "Specified private activity bond interest dividends",
},
"1099-G": {
"1": "Unemployment",
"2": "State or local income tax",
"4": "Federal income tax withheld",
"5": "Reemployment Trade Adjustment ",
"6": "Taxable grants",
"7": "Agriculture payments",
"9": "Market gain",
},
"1099-H": {
"1": "Gross amount of health insurance advance payments",
"2": "Gross amount of health insurance payments for January",
"3": "Gross amount of health insurance payments for February",
"4": "Gross amount of health insurance payments for March",
"5": "Gross amount of health insurance payments for April",
"6": "Gross amount of health insurance payments for May",
"7": "Gross amount of health insurance payments for June",
"8": "Gross amount of health insurance payments for July",
"9": "Gross amount of health insurance payments for August",
"A": "Gross amount of health insurance payments for September",
"B": "Gross amount of health insurance payments for October",
"C": "Gross amount of health insurance payments for November",
"D": "Gross amount of health insurance payments for December",
},
"1099-INT": {
"1": "Interest income not included in Amount Code 3",
"2": "Early withdrawal penalty",
"3": "Interest on U.S. Savings Bonds and Treasury obligations",
"4": "Federal income tax withheld (backup withholding)",
"5": "Investment expenses",
"6": "Foreign tax paid",
"8": "Tax-exempt interest",
"9": "Specified private activity bond",
"A": "Market discount",
"B": "Bond premium",
"D": "Bond premium on tax exempt bond",
"E": "Bond premium on Treasury obligation",
},
"1099-K": {
"1": "Gross amount of payment card/third party network transactions",
"2": "Card not present transactions",
"4": "Federal Income tax withheld",
"5": "January payments",
"6": "February payments",
"7": "March payments",
"8": "April payments",
"9": "May payments",
"A": "June payments",
"B": "July payments",
"C": "August payments",
"D": "September payments",
"E": "October payments",
"F": "November payments",
"G": "December payments",
},
"1099-LS": {
"1": "Amount paid to payment recipient",
},
"1099-LTC": {
"1": "Gross long-term care benefits paid",
"2": "Accelerated death benefits paid",
},
"1099-MISC": {
"1": "Rents",
"2": "Royalties",
"3": "Other income",
"4": "Federal income tax withheld",
"5": "Fishing boat proceeds",
"6": "Medical and health care payments",
"7": "Nonemployee compensation (NEC)",
"8": "Substitute payments in lieu of dividends or interest",
"A": "Crop insurance proceeds",
"B": "Excess golden parachute payment",
"C": "Gross proceeds paid to an attorney in connection with legal services",
"D": "Section 409A deferrals",
"E": "Section 409A income",
},
"1099-NEC": {
"1": "Nonemployee Compensation",
"4": "Federal Income Tax Withheld",
},
"1099-OID": {
"1": "Original issue discount for 2019",
"2": "Other periodic interest",
"3": "Early withdrawal penalty",
"4": "Federal income tax withheld",
"5": "Bond premium",
"6": "Original issue discount on U.S.",
"7": "Investment expenses",
"A": "Market discount",
"B": "Acquisition premium",
"C": "Tax-Exempt OID",
},
"1099-PATR": {
"1": "Patronage dividends",
"2": "Nonpatronage distributions",
"3": "Per-unit retain allocations",
"4": "Federal income tax withheld",
"5": "Redemption of nonqualified notices and retain allocations",
"6": "Deduction for domestic production activities income",
"B": "Qualified Payments",
"7": "Investment credit",
"8": "Work opportunity credit",
"9": "Patron’s alternative minimum tax (AMT) adjustment",
"A": "For filer’s use for pass-through credits and deduction",
},
"1099-Q": {
"1": "Gross distribution",
"2": "Earnings (or loss)",
"3": "Basis",
},
"1099-R": {
"1": "Gross distribution",
"2": "Taxable amount",
"3": "Capital gain",
"4": "Federal income tax withheld",
"5": "Employee contributions/designated Roth contributions or insurance premiums",
"6": "Net unrealized appreciation in employer’s securities",
"8": "Other",
"9": "Total employee contributions",
"A": "Traditional IRA/SEP/SIMPLE",
"B": "Amount allocable to IRR",
},
"1099-S": {
"2": "Gross proceeds",
"5": "Buyer’s part of real estate tax",
},
"1099-SA": {
"1": "Gross distribution",
"2": "Earnings on excess contributions",
"4": "Fair market value of the account on the date of death",
},
"1099-SB": {
"1": "Investment in contract",
"2": "Surrender amount",
},
"3921": {
"3": "Exercise price per share",
"4": "Fair market value of share on exercise date",
},
"3922": {
"3": "Fair market value per share on grant date",
"4": "Fair market value on exercise date",
"5": "Exercise price per share",
"8": "Exercise price per share determined as if the option was exercised on the date the option was granted",
},
"5498": {
"1": "IRA contributions",
"2": "Rollover contributions",
"3": "Roth conversion amount",
"4": "Recharacterized contributions",
"5": "Fair market value of account",
"6": "Life insurance cost included in Amount Code 1",
"7": "FMV of certain specified assets",
"8": "SEP contributions",
"9": "SIMPLE contributions",
"A": "Roth IRA contributions",
"B": "RMD amount",
"C": "Postponed Contribution",
"D": "Repayments",
},
"5498-ESA": {
"1": "Coverdell ESA contributions",
"2": "Rollover contributions",
},
"5498-SA": {
"1": "Employee",
"2": "Total contributions made in 2019",
"3": "Total HSA",
"4": "Rollover contributions",
"5": "Fair market value of HSA",
},
"W-2G": {
"1": "Reportable winnings",
"2": "Federal income tax withheld",
"7": "Winnings from identical wagers",
},
}
Amount codes for the type of return being reported.
View Source
var BtcBondType = map[string]string{
"101": "Clean Renewable Energy Bond",
"199": "Other",
}
Available bond types for 1097-BTC
View Source
var BtcCode = map[string]string{
"A": "Account number",
"C": "CUSIP number",
"O": "Unique identification number",
}
Available codes for 1097-BTC
View Source
var BtcIssuerIndicator = map[string]string{
"1": "Issuer of bond",
"2": "An entity that received a 2018 Form",
}
Available issuer indicators for 1097-BTC
View Source
var DistributionCodes = []string{}/* 112 elements not displayed */
View Source
var ParticipateStateCodes = map[int]string{
1: "Alabama",
4: "Arizona",
5: "Arkansas",
6: "California",
7: "Colorado",
8: "Connecticut",
10: "Delaware",
13: "Georgia",
15: "Hawaii",
16: "Idaho",
18: "Indiana",
20: "Kansas",
22: "Louisiana",
23: "Maine",
24: "Maryland",
25: "Massachusetts",
26: "Michigan",
27: "Minnesota",
28: "Mississippi",
29: "Missouri",
30: "Montana",
31: "Nebraska",
34: "New Jersey",
35: "New Mexico",
37: "North Carolina",
38: "North Dakota",
39: "Ohio",
40: "Ohio",
45: "South Carolina",
55: "Wisconsin",
}
Codes for participating states in the CF/SF Program
View Source
var PaymentCodes1098F = map[string]string{
"B": "Multiple payers/defendants",
"C": "Multiple payees",
"D": "Property included in settlement",
"E": "Settlement payments to nongovernmental entities, i.e., charities",
"F": "Settlement paid in full as of time of filing",
"G": "No payment received as of time of filing",
"H": "Deferred prosecution agreement",
}
Amount codes for Positions 544-750 for Form 1098-F.
View Source
var StateAbbreviationCodes = map[string]string{
"AL": "Alabama",
"AK": "Alaska",
"AS": "American Samoa",
"AZ": "Arizona",
"AR": "Arkansas",
"CA": "California",
"CO": "Colorado",
"CT": "Connecticut",
"DE": "Delaware",
"DC": "District of Columbia",
"FL": "Florida",
"GA": "Georgia",
"GU": "Guam",
"HI": "Hawaii",
"ID": "Idaho",
"IL": "Illinois",
"IN": "Indiana",
"IA": "IA",
"KS": "KS",
"KY": "Kentucky",
"LA": "Louisiana",
"ME": "Maine",
"MD": "Maryland",
"MA": "Massachusetts",
"MI": "Michigan",
"MN": "Minnesota",
"MS": "Mississippi",
"MO": "Missouri",
"MT": "Montana",
"NE": "Nebraska",
"NV": "Nevada",
"NH": "New Hampshire",
"NJ": "New Jersey",
"NM": "New Mexico",
"NY": "NY",
"NC": "North Carolina",
"ND": "North Dakota",
"MP": "No. Mariana Islands",
"OH": "Ohio",
"OK": "Oklahoma",
"OR": "Oregon",
"PA": "Pennsylvania",
"PR": "Puerto Rico",
"RI": "Rhode Island",
"SC": "South Carolina",
"SD": "South Dakota",
"TN": "Tennessee",
"TX": "Texas",
"UT": "Utah",
"VT": "Vermont",
"VA": "Virginia",
"VI": "U.S. Virgin Islands",
"WA": "Washington",
"WV": "West Virginia",
"WI": "Wisconsin",
"WY": "Wyoming",
}
State Abbreviation Codes
View Source
var TypeOfReturns = map[string]string{
"BT": "1097-BTC",
"3": "1098",
"X": "1098-C",
"2": "1098-E",
"FP": "1098-F",
"QL": "1098-Q",
"8": "1098-T",
"4": "1099-A",
"B": "1099-B",
"5": "1099-C",
"P": "1099-CAP",
"1": "1099-DIV",
"F": "1099-G",
"J": "1099-H",
"6": "1099-INT",
"MC": "1099-K",
"LC": "1099-LS",
"T": "1099-LTC",
"A": "1099-MISC",
"NE": "1099-NEC",
"D": "1099-OID",
"7": "1099-PATR",
"Q": "1099-Q",
"9": "1099-R",
"S": "1099-S",
"M": "1099-SA",
"SB": "1099-SB",
"N": "3921",
"Z": "3922",
"L": "5498",
"V": "5498-ESA",
"K": "5498-SA",
"W": "W-2G",
}
Codes for type of return
Functions ¶
This section is empty.
Types ¶
type SpecRecord ¶
func ToSpecifications ¶
func ToSpecifications(fieldsFormat map[string]SpecField) []SpecRecord
Click to show internal directories.
Click to hide internal directories.