Documentation
¶
Index ¶
- type Sub1097BTC
- func (r *Sub1097BTC) Ascii() []byte
- func (r *Sub1097BTC) FederalState() int
- func (r *Sub1097BTC) Parse(buf []byte) error
- func (r *Sub1097BTC) Type() string
- func (r *Sub1097BTC) Validate() error
- func (r *Sub1097BTC) ValidateBondType() error
- func (r *Sub1097BTC) ValidateCode() error
- func (r *Sub1097BTC) ValidateIssuerIndicator() error
- type Sub1098
- type Sub1098C
- func (r *Sub1098C) Ascii() []byte
- func (r *Sub1098C) FederalState() int
- func (r *Sub1098C) Parse(buf []byte) error
- func (r *Sub1098C) Type() string
- func (r *Sub1098C) Validate() error
- func (r *Sub1098C) ValidateDeductionLessIndicator() error
- func (r *Sub1098C) ValidateDoneeIndicator() error
- func (r *Sub1098C) ValidateIntangibleReligiousBenefitsIndicator() error
- func (r *Sub1098C) ValidateTransactionIndicator() error
- func (r *Sub1098C) ValidateTransferAfterImprovementsIndicator() error
- func (r *Sub1098C) ValidateTransferMarketValueIndicator() error
- type Sub1098E
- type Sub1098F
- type Sub1098Q
- func (r *Sub1098Q) Ascii() []byte
- func (r *Sub1098Q) FederalState() int
- func (r *Sub1098Q) Parse(buf []byte) error
- func (r *Sub1098Q) Type() string
- func (r *Sub1098Q) Validate() error
- func (r *Sub1098Q) ValidateAcceleratedIndicator() error
- func (r *Sub1098Q) ValidateApril() error
- func (r *Sub1098Q) ValidateAugust() error
- func (r *Sub1098Q) ValidateDecember() error
- func (r *Sub1098Q) ValidateEmployerIdentificationNumber() error
- func (r *Sub1098Q) ValidateFebruary() error
- func (r *Sub1098Q) ValidateJanuary() error
- func (r *Sub1098Q) ValidateJuly() error
- func (r *Sub1098Q) ValidateJune() error
- func (r *Sub1098Q) ValidateMarch() error
- func (r *Sub1098Q) ValidateMay() error
- func (r *Sub1098Q) ValidateNovember() error
- func (r *Sub1098Q) ValidateOctober() error
- func (r *Sub1098Q) ValidateSeptember() error
- type Sub1098T
- func (r *Sub1098T) Ascii() []byte
- func (r *Sub1098T) FederalState() int
- func (r *Sub1098T) Parse(buf []byte) error
- func (r *Sub1098T) Type() string
- func (r *Sub1098T) Validate() error
- func (r *Sub1098T) ValidateAcademicPeriodIndicator() error
- func (r *Sub1098T) ValidateGraduateStudentIndicator() error
- func (r *Sub1098T) ValidateHalfTimeStudentIndicator() error
- func (r *Sub1098T) ValidateIdentificationNumber() error
- type Sub1099A
- type Sub1099B
- func (r *Sub1099B) Ascii() []byte
- func (r *Sub1099B) FederalState() int
- func (r *Sub1099B) Parse(buf []byte) error
- func (r *Sub1099B) Type() string
- func (r *Sub1099B) Validate() error
- func (r *Sub1099B) ValidateApplicableCheckboxCollectables() error
- func (r *Sub1099B) ValidateApplicableCheckboxForm8949() error
- func (r *Sub1099B) ValidateApplicableCheckboxQOF() error
- func (r *Sub1099B) ValidateFATCA() error
- func (r *Sub1099B) ValidateGrossProceedsIndicator() error
- func (r *Sub1099B) ValidateLossNotAllowedIndicator() error
- func (r *Sub1099B) ValidateNoncoveredSecurityIndicator() error
- func (r *Sub1099B) ValidateSecondTinNotice() error
- func (r *Sub1099B) ValidateTypeGainLossIndicator() error
- type Sub1099C
- func (r *Sub1099C) Ascii() []byte
- func (r *Sub1099C) FederalState() int
- func (r *Sub1099C) Parse(buf []byte) error
- func (r *Sub1099C) Type() string
- func (r *Sub1099C) Validate() error
- func (r *Sub1099C) ValidateIdentifiableEventCode() error
- func (r *Sub1099C) ValidatePersonalLiabilityIndicator() error
- type Sub1099CAP
- type Sub1099DIV
- func (r *Sub1099DIV) Ascii() []byte
- func (r *Sub1099DIV) FederalState() int
- func (r *Sub1099DIV) Parse(buf []byte) error
- func (r *Sub1099DIV) Type() string
- func (r *Sub1099DIV) Validate() error
- func (r *Sub1099DIV) ValidateCombinedFSCode() error
- func (r *Sub1099DIV) ValidateFATCA() error
- func (r *Sub1099DIV) ValidateSecondTinNotice() error
- type Sub1099G
- func (r *Sub1099G) Ascii() []byte
- func (r *Sub1099G) FederalState() int
- func (r *Sub1099G) Parse(buf []byte) error
- func (r *Sub1099G) Type() string
- func (r *Sub1099G) Validate() error
- func (r *Sub1099G) ValidateCombinedFSCode() error
- func (r *Sub1099G) ValidateSecondTinNotice() error
- func (r *Sub1099G) ValidateTaxYearRefund() error
- func (r *Sub1099G) ValidateTradeBusinessIndicator() error
- type Sub1099H
- type Sub1099INT
- func (r *Sub1099INT) Ascii() []byte
- func (r *Sub1099INT) FederalState() int
- func (r *Sub1099INT) Parse(buf []byte) error
- func (r *Sub1099INT) Type() string
- func (r *Sub1099INT) Validate() error
- func (r *Sub1099INT) ValidateCombinedFSCode() error
- func (r *Sub1099INT) ValidateFATCA() error
- func (r *Sub1099INT) ValidateSecondTinNotice() error
- type Sub1099K
- func (r *Sub1099K) Ascii() []byte
- func (r *Sub1099K) FederalState() int
- func (r *Sub1099K) Parse(buf []byte) error
- func (r *Sub1099K) Type() string
- func (r *Sub1099K) Validate() error
- func (r *Sub1099K) ValidateCombinedFSCode() error
- func (r *Sub1099K) ValidateSecondTinNotice() error
- func (r *Sub1099K) ValidateTypeFilerIndicator() error
- func (r *Sub1099K) ValidateTypePaymentIndicator() error
- type Sub1099LS
- type Sub1099LTC
- func (r *Sub1099LTC) Ascii() []byte
- func (r *Sub1099LTC) FederalState() int
- func (r *Sub1099LTC) Parse(buf []byte) error
- func (r *Sub1099LTC) Type() string
- func (r *Sub1099LTC) Validate() error
- func (r *Sub1099LTC) ValidateQualifiedContractIndicator() error
- func (r *Sub1099LTC) ValidateStateInsured() error
- func (r *Sub1099LTC) ValidateStatusIllnessIndicator() error
- func (r *Sub1099LTC) ValidateTypePaymentIndicator() error
- type Sub1099MISC
- func (r *Sub1099MISC) Ascii() []byte
- func (r *Sub1099MISC) FederalState() int
- func (r *Sub1099MISC) Parse(buf []byte) error
- func (r *Sub1099MISC) Type() string
- func (r *Sub1099MISC) Validate() error
- func (r *Sub1099MISC) ValidateCombinedFSCode() error
- func (r *Sub1099MISC) ValidateDirectSalesIndicator() error
- func (r *Sub1099MISC) ValidateFATCA() error
- type Sub1099NEC
- func (r *Sub1099NEC) Ascii() []byte
- func (r *Sub1099NEC) FederalState() int
- func (r *Sub1099NEC) Parse(buf []byte) error
- func (r *Sub1099NEC) Type() string
- func (r *Sub1099NEC) Validate() error
- func (r *Sub1099NEC) ValidateCombinedFSCode() error
- func (r *Sub1099NEC) ValidateDirectSalesIndicator() error
- type Sub1099OID
- type Sub1099PATR
- func (r *Sub1099PATR) Ascii() []byte
- func (r *Sub1099PATR) FederalState() int
- func (r *Sub1099PATR) Parse(buf []byte) error
- func (r *Sub1099PATR) Type() string
- func (r *Sub1099PATR) Validate() error
- func (r *Sub1099PATR) ValidateCombinedFSCode() error
- func (r *Sub1099PATR) ValidateSecondTinNotice() error
- type Sub1099Q
- func (r *Sub1099Q) Ascii() []byte
- func (r *Sub1099Q) FederalState() int
- func (r *Sub1099Q) Parse(buf []byte) error
- func (r *Sub1099Q) Type() string
- func (r *Sub1099Q) Validate() error
- func (r *Sub1099Q) ValidateDesignatedBeneficiary() error
- func (r *Sub1099Q) ValidateTrusteeTransferIndicator() error
- func (r *Sub1099Q) ValidateTypeTuitionPayment() error
- type Sub1099R
- func (r *Sub1099R) Ascii() []byte
- func (r *Sub1099R) FederalState() int
- func (r *Sub1099R) Parse(buf []byte) error
- func (r *Sub1099R) Type() string
- func (r *Sub1099R) UnmarshalJSON(data []byte) error
- func (r *Sub1099R) Validate() error
- func (r *Sub1099R) ValidateCombinedFSCode() error
- func (r *Sub1099R) ValidateDistributionCode() error
- func (r *Sub1099R) ValidateFATCA() error
- func (r *Sub1099R) ValidateISSIndicator() error
- func (r *Sub1099R) ValidateTaxableAmountNotDeterminedIndicator() error
- func (r *Sub1099R) ValidateTotalDistributionIndicator() error
- type Sub1099S
- type Sub1099SA
- func (r *Sub1099SA) Ascii() []byte
- func (r *Sub1099SA) FederalState() int
- func (r *Sub1099SA) Parse(buf []byte) error
- func (r *Sub1099SA) Type() string
- func (r *Sub1099SA) Validate() error
- func (r *Sub1099SA) ValidateArcherMSAIndicator() error
- func (r *Sub1099SA) ValidateDistributionCode() error
- func (r *Sub1099SA) ValidateHSAIndicator() error
- func (r *Sub1099SA) ValidateMedicareAdvantageMSAIndicator() error
- type Sub1099SB
- type Sub3921
- type Sub3922
- type Sub5498
- func (r *Sub5498) Ascii() []byte
- func (r *Sub5498) FederalState() int
- func (r *Sub5498) Parse(buf []byte) error
- func (r *Sub5498) Type() string
- func (r *Sub5498) Validate() error
- func (r *Sub5498) ValidateCodes() error
- func (r *Sub5498) ValidateCombinedFSCode() error
- func (r *Sub5498) ValidateIRAIndicator() error
- func (r *Sub5498) ValidatePostponedContributionCode() error
- func (r *Sub5498) ValidateRMDIndicator() error
- func (r *Sub5498) ValidateRepaymentCode() error
- func (r *Sub5498) ValidateRothIRAIndicator() error
- func (r *Sub5498) ValidateSEPIndicator() error
- func (r *Sub5498) ValidateSIMPLEIndicator() error
- type Sub5498ESA
- type Sub5498SA
- func (r *Sub5498SA) Ascii() []byte
- func (r *Sub5498SA) FederalState() int
- func (r *Sub5498SA) Parse(buf []byte) error
- func (r *Sub5498SA) Type() string
- func (r *Sub5498SA) Validate() error
- func (r *Sub5498SA) ValidateArcherMSAIndicator() error
- func (r *Sub5498SA) ValidateHSAIndicator() error
- func (r *Sub5498SA) ValidateMedicareAdvantageMSAIndicator() error
- type SubRecord
- type SubW2G
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
This section is empty.
Types ¶
type Sub1097BTC ¶
type Sub1097BTC struct {
// Required. Enter the appropriate indicator from the table
// below:
// 1: Issuer of bond or its agent filing
// initial 2019 Form 1097-BTC for
// credit being reported
// 2: An entity that received a 2018 Form
// 1097-BTC for credit being reported
IssuerIndicator string `json:"issuer_indicator" validate:"required"`
// Required. Enter the appropriate alpha indicator from the
// table below:
// A: Account number
// B: CUSIP number
// O: Unique identification number, not an
// account/CUSIP number, such as a
// self-provided identification number
Code string `json:"code" validate:"required"`
// Enter the unique identifier assigned to the bond. This can be
// an alphanumeric identifier such as the CUSIP number.
// Right justify the information and fill unused positions with
// blanks.
UniqueIdentifier string `json:"unique_identifier"`
// Required. Enter the appropriate indicator from the table.
// 101: Clean Renewable Energy Bond
// 199: Other
BondType string `json:"bond_type" validate:"required"`
// This portion of the “B” Record may be used to record
// information for state or local government reporting or for the
// filer’s own purposes. Payers should contact the state or local
// revenue departments for filing requirements. You may enter
// comments here. If this field is not used, enter blanks.
SpecialDataEntries string `json:"special_data_entries"`
}
func (*Sub1097BTC) Ascii ¶
func (r *Sub1097BTC) Ascii() []byte
Ascii returns fire ascii of “1097-BTC” record
func (*Sub1097BTC) FederalState ¶ added in v0.1.4
func (r *Sub1097BTC) FederalState() int
Type returns FS code of “1097-BTC” record
func (*Sub1097BTC) Parse ¶
func (r *Sub1097BTC) Parse(buf []byte) error
Parse parses the “1097-BTC” record from fire ascii
func (*Sub1097BTC) Validate ¶
func (r *Sub1097BTC) Validate() error
Validate performs some checks on the record and returns an error if not Validated
func (*Sub1097BTC) ValidateBondType ¶
func (r *Sub1097BTC) ValidateBondType() error
func (*Sub1097BTC) ValidateCode ¶
func (r *Sub1097BTC) ValidateCode() error
func (*Sub1097BTC) ValidateIssuerIndicator ¶
func (r *Sub1097BTC) ValidateIssuerIndicator() error
type Sub1098 ¶ added in v0.1.4
type Sub1098 struct {
// Enter the date of the Mortgage Origination in YYYYMMDD
// format.
MortgageOriginationDate time.Time `json:"mortgage_origination_date"`
// Enter “1” (one) if Property Securing Mortgage is the same as
// payer/borrowers’ address. Otherwise enter a blank.
PropertySecuringMortgageIndicator string `json:"property_securing_mortgage_indicator"`
// Enter the address or description of the property securing the
// mortgage if different than the payer/borrowers address.
// Left justify and fill with blanks.
PropertyADSecuringMortgage string `json:"property_address_description_securing_mortgage"`
// Enter any other item you wish to report to the payer.
// Examples include:
// • Continuation of Property Address Securing Mortgage
// • Continuation of Legal Description of Property
// • Real estate taxes
// • Insurance paid from escrow
// • If you are a collection agent, the name of the person for
// whom you collected the interest
// This is a free format field. If this field is not used, enter
// blanks.
// You do not have to report to the IRS any information
// provided in this box.
// Left justify and fill with blanks.
Other string `json:"other"`
// If more than one property securing the mortgage, enter the
// total number of properties secured by this mortgage. If less
// than two (2), enter blanks. Valid values are 0000 - 9999.
NumberMortgagedProperties int `json:"number_mortgaged_properties"`
// This portion of the “B” Record may be used to record
// information for state or local government reporting or for the
// filer’s own purposes. Payers should contact the state or
// local revenue departments for the filing requirements. If
// this field is not use, enter blanks.
SpecialDataEntries string `json:"special_data_entries"`
// Enter the date in format YYYYMMDD if the recipient/lender
// acquired the mortgage in 2019, show the date of
// acquisition. (for example, January 5, 2019, would be
// 20190105)
MortgageAcquisitionDate time.Time `json:"mortgage_acquisition_date"`
}
func (*Sub1098) FederalState ¶ added in v0.1.4
Type returns FS code of “1098” record
func (*Sub1098) Validate ¶ added in v0.1.4
Validate performs some checks on the record and returns an error if not Validated
func (*Sub1098) ValidatePropertySecuringMortgageIndicator ¶ added in v0.1.4
type Sub1098C ¶ added in v0.1.4
type Sub1098C struct {
// Enter “1” (one) if the amount reported in Payment Amount
// Field 4 is an arm’s length transaction to an unrelated party.
// Otherwise, enter a blank.
TransactionIndicator string `json:"transaction_indicator"`
// Enter “1” (one) if the vehicle will not be transferred for
// money, other property, or services before completion of
// material improvements or significant intervening use.
// Otherwise, enter a blank.
TransferAfterImprovementsIndicator string `json:"transfer_after_improvements_indicator"`
// Enter “1” (one) if the vehicle is transferred to a needy
// individual for significantly below fair market value. Otherwise,
// enter a blank.
TransferMarketValueIndicator string `json:"transfer_market_value_indicator"`
// Enter the year of the vehicle in YYYY format.
Year int `json:"year"`
// Enter the Make of the vehicle. Left justify the information and
// fill unused positions with blanks.
Make string `json:"make"`
// Enter the Model of the vehicle. Left justify the information and
// fill unused positions with blanks.
Model string `json:"model"`
// Enter the vehicle or other identification number of the
// donated vehicle. Left justify the information and fill unused
// positions with blanks.
VehicleIdentificationNumber string `json:"vehicle_identification_number"`
// Enter a description of material improvements or significant
// intervening use and duration of use. Left justify the
// information and fill unused positions with blanks.
VehicleDescription string `json:"vehicle_description"`
// Enter the date the contribution was made to an organization,
// in YYYYMMDD format (for example, January 5, 2019, would
// be 20190105).
DateContribution time.Time `json:"date_contribution"`
// Enter the appropriate indicator from the following table to
// report if the donee of the vehicle provides goods or services
// in exchange for the vehicle.
// 1: Donee provided goods or services
// 2: Donee did not provide goods or services
DoneeIndicator string `json:"donee_indicator"`
// Enter “1” (one) if only intangible religious benefits were
// provided in exchange for the vehicle. Otherwise, enter a
// blank.
IntangibleReligiousBenefitsIndicator string `json:"intangible_religious_benefits_indicator"`
// Enter “1” (one) if under the law the donor cannot claim a
// deduction of more than $500 for the vehicle. Otherwise,
// enter a blank.
DeductionLessIndicator string `json:"deduction_less_indicator"`
// You may enter odometer mileage here. Enter as 7 numeric
// characters. The remaining positions of this field may be used
// to record information for state and local government
// reporting or for the filer's own purposes. Payers should
// contact the state or local revenue departments for the filing
// requirements. If this field is not used, enter blanks.
SpecialDataEntries string `json:"special_data_entries"`
// Enter the date of sale, in YYYYMMDD format (for example,
// January 5, 2019, would be 20190105). Do not enter hyphens
// or slashes.
DateSale time.Time `json:"date_sale"`
// Enter a description of any goods and services received for
// the vehicle. Otherwise, enter blanks.
// Left justify information and fill unused positions with blanks.
GoodsServices string `json:"goods_services"`
}
func (*Sub1098C) FederalState ¶ added in v0.1.4
Type returns FS code of “1098-C” record
func (*Sub1098C) Validate ¶ added in v0.1.4
Validate performs some checks on the record and returns an error if not Validated
func (*Sub1098C) ValidateDeductionLessIndicator ¶ added in v0.1.4
func (*Sub1098C) ValidateDoneeIndicator ¶ added in v0.1.4
func (*Sub1098C) ValidateIntangibleReligiousBenefitsIndicator ¶ added in v0.1.4
func (*Sub1098C) ValidateTransactionIndicator ¶ added in v0.1.4
func (*Sub1098C) ValidateTransferAfterImprovementsIndicator ¶ added in v0.1.4
func (*Sub1098C) ValidateTransferMarketValueIndicator ¶ added in v0.1.4
type Sub1098E ¶ added in v0.1.4
type Sub1098E struct {
// Enter “1” (one) if the amount reported in Payment Amount
// Field 1 does not include loan origination fees and/or
// capitalized interest made before September 1, 2004.
// Otherwise, enter a blank.
OriginationInterestIndicator string `json:"origination_interest_indicator"`
// This portion of the “B” Record may be used to record
// information for state or local government reporting or for the
// filer’s own purposes. Payers should contact the state or
// local revenue departments for the filing requirements. If
// this field is not use, enter blanks.
SpecialDataEntries string `json:"special_data_entries"`
}
func (*Sub1098E) FederalState ¶ added in v0.1.4
Type returns FS code of “1098-E” record
func (*Sub1098E) Validate ¶ added in v0.1.4
Validate performs some checks on the record and returns an error if not Validated
func (*Sub1098E) ValidateOriginationInterestIndicator ¶ added in v0.1.4
type Sub1098F ¶ added in v0.1.4
type Sub1098F struct {
// Enter the effective date of the order in YYYYMMDD format
// (for example, January 5, 2019, would be 20190105).
DateOrderAgreement time.Time `json:"date_order_agreement"`
// Enter the jurisdiction for the fines, penalties, or other
// amounts being assessed, if applicable.
Jurisdiction string `json:"jurisdiction"`
// Enter the case number assigned to the order or agreement, if
// applicable.
CaseNumber string `json:"case_number"`
// Enter a name or description to identify order or agreement.
MatterSuitAgreement string `json:"matter_suit_agreement"`
// Enter one or more of the following payment codes.
// 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
PaymentCode string `json:"payment_code"`
// This portion of the “B” Record may be used to record
// information for state or local government reporting or for the
// filer’s own purposes. Payers should contact the state or
// local revenue departments for the filing requirements. If this
// field is not used, enter blanks.
SpecialDataEntries string `json:"special_data_entries"`
}
func (*Sub1098F) FederalState ¶ added in v0.1.4
Type returns FS code of “1098-F” record
func (*Sub1098F) Validate ¶ added in v0.1.4
Validate performs some checks on the record and returns an error if not Validated
func (*Sub1098F) ValidatePaymentCode ¶ added in v0.1.4
type Sub1098Q ¶ added in v0.1.4
type Sub1098Q struct {
// Enter the annuity start date in YYYYMMDD format. If the
// payments have not started, show the annuity amount payable on
// start date in YYYYMMDD format.
AnnuityStartDate time.Time `json:"annuity_start_date"`
// Enter “1” (one) if payments have not yet started and the start
// date may be accelerated. Otherwise, enter a blank.
AcceleratedIndicator string `json:"accelerated_indicator"`
// Enter a two-digit number 01-31. Otherwise, enter blanks.
January int `json:"january"`
// Enter a two-digit number 01-31. Otherwise, enter blanks.
February int `json:"february"`
// Enter a two-digit number 01-31. Otherwise, enter blanks.
March int `json:"march"`
// Enter a two-digit number 01-31. Otherwise, enter blanks.
April int `json:"april"`
// Enter a two-digit number 01-31. Otherwise, enter blanks.
May int `json:"may"`
// Enter a two-digit number 01-31. Otherwise, enter blanks.
June int `json:"june"`
// Enter a two-digit number 01-31. Otherwise, enter blanks.
July int `json:"july"`
// Enter a two-digit number 01-31. Otherwise, enter blanks.
August int `json:"august"`
// Enter a two-digit number 01-31. Otherwise, enter blanks.
September int `json:"september"`
// Enter a two-digit number 01-31. Otherwise, enter blanks.
October int `json:"october"`
// Enter a two-digit number 01-31. Otherwise, enter blanks.
November int `json:"november"`
// Enter a two-digit number 01-31. Otherwise, enter blanks.
December int `json:"december"`
// If the contract was purchased under a plan, enter the name of
// the plan. Otherwise, enter blanks.
NamePlan string `json:"name_plan"`
// If the contract was purchased under a plan, enter the plan
// number. Otherwise, enter blanks.
PlanNumber string `json:"plan_number"`
// If the contract was purchased under a plan, enter the nine-digit
// employer identification number of the plan sponsor. Otherwise,
// enter blanks.
EmployerIdentificationNumber string `json:"employer_identification_number"`
}
func (*Sub1098Q) FederalState ¶ added in v0.1.4
Type returns FS code of “1098-Q” record
func (*Sub1098Q) Validate ¶ added in v0.1.4
Validate performs some checks on the record and returns an error if not Validated
func (*Sub1098Q) ValidateAcceleratedIndicator ¶ added in v0.1.4
func (*Sub1098Q) ValidateApril ¶ added in v0.1.4
func (*Sub1098Q) ValidateAugust ¶ added in v0.1.4
func (*Sub1098Q) ValidateDecember ¶ added in v0.1.4
func (*Sub1098Q) ValidateEmployerIdentificationNumber ¶ added in v0.1.4
func (*Sub1098Q) ValidateFebruary ¶ added in v0.1.4
func (*Sub1098Q) ValidateJanuary ¶ added in v0.1.4
func (*Sub1098Q) ValidateJuly ¶ added in v0.1.4
func (*Sub1098Q) ValidateJune ¶ added in v0.1.4
func (*Sub1098Q) ValidateMarch ¶ added in v0.1.4
func (*Sub1098Q) ValidateMay ¶ added in v0.1.4
func (*Sub1098Q) ValidateNovember ¶ added in v0.1.4
func (*Sub1098Q) ValidateOctober ¶ added in v0.1.4
func (*Sub1098Q) ValidateSeptember ¶ added in v0.1.4
type Sub1098T ¶ added in v0.1.4
type Sub1098T struct {
// Required.
// Enter 1 to certify compliance with applicable TIN solicitation
// requirements regarding individual student when:
// • Educational institution received a TIN from the
// individual in response to specific solicitation in the
// current year, a previous year, or the institution
// obtained the TIN from the student’s application for
// financial aid or other form (whether in the year for
// which the form is filed or a prior year) and, in either
// instance, has no reason to believe the TIN on file in
// the institution’s records is incorrect.
// • Educational institution files Form 1098-T with this
// field blank because it has no record of the student’s
// TIN, but only if the institution made the required
// written TIN solicitation by December 31 of the
// calendar year for which the Form 1098-T is being
// filed.
// Otherwise, leave blank.
IdentificationNumber string `json:"identification_number"`
// Required. Enter “1” (one) if the student was at least a halftime student during any academic period that began in 2019.
// Otherwise, enter a blank.
HalfTimeStudentIndicator string `json:"halftime_student_indicator"`
// Required. Enter “1” (one) if the student is enrolled
// exclusively in a graduate level program. Otherwise, enter a
// blank.
GraduateStudentIndicator string `json:"graduate_student_indicator"`
// Enter “1” (one) if the amount in Payment Amount Field 1 or
// Payment Amount Field 2 includes amounts for an academic
// period beginning January through March 2020. Otherwise,
// enter a blank.
AcademicPeriodIndicator string `json:"academic_period_indicator"`
// This portion of the “B” Record may be used to record
// information for state or local government reporting or for the
// filer’s own purposes. Payers should contact the state or
// local revenue departments for the filing requirements. If
// this field is not use, enter blanks.
SpecialDataEntries string `json:"special_data_entries"`
}
func (*Sub1098T) FederalState ¶ added in v0.1.4
Type returns FS code of “1098-T” record
func (*Sub1098T) Validate ¶ added in v0.1.4
Validate performs some checks on the record and returns an error if not Validated
func (*Sub1098T) ValidateAcademicPeriodIndicator ¶ added in v0.1.4
func (*Sub1098T) ValidateGraduateStudentIndicator ¶ added in v0.1.4
func (*Sub1098T) ValidateHalfTimeStudentIndicator ¶ added in v0.1.4
func (*Sub1098T) ValidateIdentificationNumber ¶ added in v0.1.4
type Sub1099A ¶ added in v0.1.4
type Sub1099A struct {
// Enter the appropriate indicator from the table below:
// 1: Borrower was personally liable for repayment of the debt.
// Blank: Borrower was not personally liable for repayment of the debt.
PersonalLiabilityIndicator string `json:"personal_liability_indicator"`
// Enter the acquisition date of the secured property or the date
// the lender first knew or had reason to know the property was
// abandoned, in YYYYMMDD format (for example, January 5,
// 2019, would be 20190105). Do not enter hyphens or slashes.
DateAcquisitionKnowledgeAbandonment time.Time `json:"date_acquisition_knowledge_abandonment"`
// Enter a brief description of the property. For real property,
// enter the address, or if the address does not sufficiently
// identify the property, enter the section, lot and block. For
// personal property, enter the type, make and model (for
// example, Car-1999 Buick Regal or Office Equipment). Enter
// “CCC” for crops forfeited on Commodity Credit Corporation
// loans.
// If fewer than 39 positions are required, left justify the
// information and fill unused positions with blanks.
DescriptionProperty string `json:"description_property"`
// This portion of the “B” Record may be used to record
// information for state or local government reporting or for the
// filer’s own purposes. Payers should contact the state or local
// revenue departments for the filing requirements. If this field is
// not used, enter blanks.
SpecialDataEntries string `json:"special_data_entries"`
}
func (*Sub1099A) FederalState ¶ added in v0.1.4
Type returns FS code of “1099-A” record
func (*Sub1099A) Validate ¶ added in v0.1.4
Validate performs some checks on the record and returns an error if not Validated
func (*Sub1099A) ValidatePersonalLiabilityIndicator ¶ added in v0.1.4
type Sub1099B ¶ added in v0.1.4
type Sub1099B struct {
// Enter “2” (two) to indicate notification by the IRS twice within
// three calendar years that the payee provided an incorrect
// name and/or TIN combination. Otherwise, enter a blank.
SecondTinNotice string `json:"second_tin_notice"`
// Enter the appropriate indicator from the following table, to
// identify a Noncovered Security. If not a Noncovered Security,
// enter a blank.
// 1: Noncovered Security Basis not reported to the IRS
// 2: Noncovered Security Basis reported to the IRS
// Blank: Not a Noncovered Security
NoncoveredSecurityIndicator string `json:"noncovered_security_indicator"`
// Enter the appropriate indicator from the following table to
// identify the amount reported in Amount Code 2. Otherwise,
// enter a blank.
// 1: Short Term
// 2: Long Term 2
// 3: Ordinary & Short Term
// 4: Ordinary & Long Term
TypeGainLossIndicator string `json:"type_gain_loss_indicator"`
// Enter the appropriate indicator from the following table to
// identify the amount reported in Amount Code 2. Otherwise,
// enter a blank.
// 1: Gross proceeds
// 2: Gross proceeds less commissions and option premiums
GrossProceedsIndicator string `json:"gross_proceeds_indicator"`
// Enter blanks if this is an aggregate transaction. For broker
// transactions, enter the trade date of the transaction. For
// barter exchanges, enter the date when cash, property, a
// credit, or scrip is actually or constructively received in
// YYYYMMDD format (for example, January 5, 2019, would be
// 20190105). Do not enter hyphens or slashes.
DateSoldDisposed time.Time `json:"date_sold_disposed"`
// Enter blanks if this is an aggregate transaction. Enter “0s”
// (zeros) if the number is not available. For broker transactions
// only, enter the CUSIP (Committee on Uniform Security
// Identification Procedures) number of the item reported for
// Amount Code 2 (Proceeds). Right justify the information and
// fill unused positions with blanks.
CUSIP string `json:"cusip_number"`
// • For broker transactions, enter a brief description of
// the disposition item (e.g., 100 shares of XYZ Corp).
// • For regulated futures and forward contracts, enter
// “RFC” or other appropriate description.
// • For bartering transactions, show the services or
// property provided.
// If fewer than 39 characters are required, left justify
// information and fill unused positions with blanks.
DescriptionProperty string `json:"description_property"`
// Enter the date of acquisition in the format YYYYMMDD (for
// example, January 5, 2019, would be 20190105). Do not enter
// hyphens or slashes.
// Enter blanks if this is an aggregate transaction.
DateAcquired string `json:"date_acquired"`
// Enter “1” (one) if the recipient is unable to claim a loss on
// their tax return based on dollar amount in Amount Code 2
// (Proceeds). Otherwise, enter a blank.
LossNotAllowedIndicator string `json:"loss_not_allowed_indicator"`
// Enter one of the following indicators. Otherwise, enter a blank.
// A: Short-term transaction for which the cost or other basis is being reported to the IRS
// B: Short-term transaction for which the cost or other basis is not being reported to the IRS
// D: Long-term transaction for which the cost or other basis is being reported to the IRS
// E: Long-term transaction for which the cost or other basis is not being reported to the IRS
// X: Transaction - if you cannot determine whether the recipient should check box B or Box E on Form 8949 because the holding period is unknown
ApplicableCheckboxForm8949 string `json:"applicable_checkbox_form8949"`
// Enter “1” (one) if reporting proceeds from Collectibles.
// Otherwise enter blank.
ApplicableCheckboxCollectables string `json:"applicable_checkbox_collectables"`
// Enter "1" (one) if there is a FATCA Filing Requirement.
// Otherwise, enter a blank.
FATCA string `json:"fatca_requirement_indicator"`
// Enter a “1” (one) if reporting proceeds from QOF. Otherwise,
// enter a blank.
ApplicableCheckboxQOF string `json:"applicable_checkbox_qof"`
// This portion of the “B” Record may be used to record
// information for state or local government reporting or for the
// filer’s own purposes. Payers should contact the state or local
// revenue departments for the filing requirements. If this field is
// not used, enter blanks.
SpecialDataEntries string `json:"special_data_entries"`
}
func (*Sub1099B) FederalState ¶ added in v0.1.4
Type returns FS code of “1099-B” record
func (*Sub1099B) Validate ¶ added in v0.1.4
Validate performs some checks on the record and returns an error if not Validated
func (*Sub1099B) ValidateApplicableCheckboxCollectables ¶ added in v0.1.4
func (*Sub1099B) ValidateApplicableCheckboxForm8949 ¶ added in v0.1.4
func (*Sub1099B) ValidateApplicableCheckboxQOF ¶ added in v0.1.4
func (*Sub1099B) ValidateFATCA ¶ added in v0.1.4
func (*Sub1099B) ValidateGrossProceedsIndicator ¶ added in v0.1.4
func (*Sub1099B) ValidateLossNotAllowedIndicator ¶ added in v0.1.4
func (*Sub1099B) ValidateNoncoveredSecurityIndicator ¶ added in v0.1.4
func (*Sub1099B) ValidateSecondTinNotice ¶ added in v0.1.4
func (*Sub1099B) ValidateTypeGainLossIndicator ¶ added in v0.1.4
type Sub1099C ¶ added in v0.1.4
type Sub1099C struct {
// Required. Enter the appropriate indicator from the following table:
// A: Bankruptcy
// B: Other Judicial Debt Relief
// C: Statute of limitations or expiration of deficiency period
// D: Foreclosure election
// E: Debt relief from probate or similar proceeding
// F: By agreement
// G: Creditor’s debt collection policy
// H: Other actual discharge before identifiable event
IdentifiableEventCode string `json:"identifiable_event_code"`
// Enter the date the debt was canceled in YYYYMMDD format
// (for example, January 5, 2019, would be 20190105). Do not
// enter hyphens or slashes.
DateIdentifiableEvent time.Time `json:"date_identifiable_event"`
// Enter a description of the origin of the debt, such as student
// loan, mortgage, or credit card expenditure. If a combined
// Form 1099-C and 1099-A is being filed, also enter a
// description of the property.
DebtDescription string `json:"debt_description"`
// Enter “1” (one) if the borrower is personally liable for
// repayment, or enter a blank if not personally liable for
// repayment.
PersonalLiabilityIndicator string `json:"personal_liability_indicator"`
// This portion of the “B” Record may be used to record
// information for state or local government reporting or for the
// filer’s own purposes. Payers should contact the state or local
// revenue departments for the filing requirements. If this field is
// not used, enter blanks.
SpecialDataEntries string `json:"special_data_entries"`
}
func (*Sub1099C) FederalState ¶ added in v0.1.4
Type returns FS code of “1099-C” record
func (*Sub1099C) Validate ¶ added in v0.1.4
Validate performs some checks on the record and returns an error if not Validated
func (*Sub1099C) ValidateIdentifiableEventCode ¶ added in v0.1.4
func (*Sub1099C) ValidatePersonalLiabilityIndicator ¶ added in v0.1.4
type Sub1099CAP ¶ added in v0.1.4
type Sub1099CAP struct {
// Enter the date the stock was exchanged for cash, stock in
// the successor corporation, or other property received in
// YYYYMMDD format (for example, January 5, 2019, would be
// 20190105).
// Do not enter hyphens or slashes.
DateSaleExchange time.Time `json:"date_sale_exchange"`
// were exchanged in the transaction.
// Report whole numbers only. Right justify the information and
// fill unused positions with zeros.
NumberSharesExchanged int `json:"number_shares_exchanged"`
// Enter the class of stock that was exchanged. Left justify the
// information and fill unused positions with blanks.
ClassesStockExchanged string `json:"classes_stock_exchanged"`
// This portion of the “B” Record may be used to record
// information for state or local government reporting or for the
// filer’s own purposes. Payers should contact the state or local
// revenue departments for the filing requirements. If this field is
// not used, enter blanks.
SpecialDataEntries string `json:"special_data_entries"`
}
func (*Sub1099CAP) Ascii ¶ added in v0.1.4
func (r *Sub1099CAP) Ascii() []byte
Ascii returns fire ascii of “1099-CAP” record
func (*Sub1099CAP) FederalState ¶ added in v0.1.4
func (r *Sub1099CAP) FederalState() int
Type returns FS code of “1099-CAP” record
func (*Sub1099CAP) Parse ¶ added in v0.1.4
func (r *Sub1099CAP) Parse(buf []byte) error
Parse parses the “1099-CAP” record from fire ascii
func (*Sub1099CAP) Type ¶ added in v0.1.4
func (r *Sub1099CAP) Type() string
Type returns type of “1099-CAP” record
func (*Sub1099CAP) Validate ¶ added in v0.1.4
func (r *Sub1099CAP) Validate() error
Validate performs some checks on the record and returns an error if not Validated
type Sub1099DIV ¶ added in v0.1.4
type Sub1099DIV struct {
// Enter “2” (two) to indicate notification by the IRS twice within
// three calendar years that the payee provided an incorrect
// name and/or TIN combination. Otherwise, enter a blank.
SecondTinNotice string `json:"second_tin_notice"`
// Enter the name of the foreign country or U.S. possession to
// which the withheld foreign tax (Amount Code C) applies.
// Otherwise, enter blanks.
ForeignCountryPossession string `json:"foreign_country_possession"`
// Enter "1" (one) if there is FATCA filing requirement.
// Otherwise, enter a blank.
FATCA string `json:"fatca_requirement_indicator"`
// This portion of the “B” Record may be used to record
// information for state or local government reporting or for the
// filer’s own purposes. Payers should contact the state or local
// revenue departments for the filing requirements. If this field is
// not used, enter blanks.
SpecialDataEntries string `json:"special_data_entries"`
// State income tax withheld is for the convenience of the filers.
// This information does not need to be reported to the IRS. If
// not reporting state tax withheld, this field may be used as a
// continuation of the Special Data Entries Field. The payment
// amount must be right justified and unused positions
// zero-filled.
StateIncomeTaxWithheld int `json:"state_income_tax_withheld"`
// Local income tax withheld is for the convenience of the filers.
// This information does not need to be reported to the IRS. If
// not reporting local tax withheld, this field may be used as a
// continuation of the Special Data Entries Field. The payment
// amount must be right justified and unused positions
// zero-filled.
LocalIncomeTaxWithheld int `json:"local_income_tax_withheld"`
// Enter the valid CF/SF code if this payee record is to be
// forwarded to a state agency as part of the CF/SF Program.
CombinedFSCode int `json:"combined_federal_state_code"`
}
func (*Sub1099DIV) Ascii ¶ added in v0.1.4
func (r *Sub1099DIV) Ascii() []byte
Ascii returns fire ascii of “1099-DIV” record
func (*Sub1099DIV) FederalState ¶ added in v0.1.4
func (r *Sub1099DIV) FederalState() int
Type returns FS code of “1099-DIV” record
func (*Sub1099DIV) Parse ¶ added in v0.1.4
func (r *Sub1099DIV) Parse(buf []byte) error
Parse parses the “1099-DIV” record from fire ascii
func (*Sub1099DIV) Type ¶ added in v0.1.4
func (r *Sub1099DIV) Type() string
Type returns type of “1099-DIV” record
func (*Sub1099DIV) Validate ¶ added in v0.1.4
func (r *Sub1099DIV) Validate() error
Validate performs some checks on the record and returns an error if not Validated
func (*Sub1099DIV) ValidateCombinedFSCode ¶ added in v0.1.4
func (r *Sub1099DIV) ValidateCombinedFSCode() error
func (*Sub1099DIV) ValidateFATCA ¶ added in v0.1.4
func (r *Sub1099DIV) ValidateFATCA() error
func (*Sub1099DIV) ValidateSecondTinNotice ¶ added in v0.1.4
func (r *Sub1099DIV) ValidateSecondTinNotice() error
type Sub1099G ¶ added in v0.1.4
type Sub1099G struct {
// Enter “2” (two) to indicate notification by the IRS twice within
// three calendar years that the payee provided an incorrect
// name and/or TIN combination. Otherwise, enter a blank.
SecondTinNotice string `json:"second_tin_notice"`
// Enter “1” (one) to indicate the state or local income tax
// refund, credit, or offset (Amount Code 2) is attributable to
// income tax that applies exclusively to income from a trade or
// business.
// 1: Income tax refund applies exclusively to a trade or business
// Blank: Income tax refund is a general tax refund
TradeBusinessIndicator string `json:"trade_business_indicator"`
// Enter the tax year for which the refund, credit, or offset
// (Amount Code 2) was issued. The tax year must reflect the
// tax year for which the refund was made, not the tax year of
// Form 1099-G. The tax year must be in four-position format of
// YYYY (for example, 2015). The valid range of years for the
// refund is 2009 through 2018.
// Note: This data is not considered prior year data since it is
// required to be reported in the current tax year. Do NOT enter
// “P” in the field position 6 of Transmitter “T” Record.
TaxYearRefund int `json:"tax_tear_refund"`
// This portion of the “B” Record may be used to record
// information for state or local government reporting or for the
// filer’s own purposes. Payers should contact the state or local
// revenue departments for the filing requirements. If this field is
// not used, enter blanks.
SpecialDataEntries string `json:"special_data_entries"`
// State income tax withheld is for the convenience of the filers.
// This information does not need to be reported to the IRS. If
// not reporting state tax withheld, this field may be used as a
// continuation of the Special Data Entries Field. The payment
// amount must be right justified and unused positions
// zero-filled.
StateIncomeTaxWithheld int `json:"state_income_tax_withheld"`
// Local income tax withheld is for the convenience of the filers.
// This information does not need to be reported to the IRS. If
// not reporting local tax withheld, this field may be used as a
// continuation of the Special Data Entries Field. The payment
// amount must be right justified and unused positions
// zero-filled.
LocalIncomeTaxWithheld int `json:"local_income_tax_withheld"`
// Enter the valid CF/SF code if this payee record is to be
// forwarded to a state agency as part of the CF/SF Program.
CombinedFSCode int `json:"combined_federal_state_code"`
}
func (*Sub1099G) FederalState ¶ added in v0.1.4
Type returns FS code of “1099-G” record
func (*Sub1099G) Validate ¶ added in v0.1.4
Validate performs some checks on the record and returns an error if not Validated
func (*Sub1099G) ValidateCombinedFSCode ¶ added in v0.1.4
func (*Sub1099G) ValidateSecondTinNotice ¶ added in v0.1.4
func (*Sub1099G) ValidateTaxYearRefund ¶ added in v0.1.4
func (*Sub1099G) ValidateTradeBusinessIndicator ¶ added in v0.1.4
type Sub1099H ¶ added in v0.1.4
type Sub1099H struct {
// Required. Enter the total number of months the recipient is
// eligible for health insurance advance payments. Right justify
// the information and fill unused positions with blanks.
NumberMonthsEligible string `json:"number_months_eligible"`
// This portion of the “B” Record may be used to record
// information for state or local government reporting or for the
// filer’s own purposes. Payers should contact the state or local
// revenue departments for the filing requirements. If this field is
// not used, enter blanks.
SpecialDataEntries string `json:"special_data_entries"`
}
func (*Sub1099H) FederalState ¶ added in v0.1.4
Type returns FS code of “1099-H” record
type Sub1099INT ¶
type Sub1099INT struct {
// Enter “2” (two) to indicate notification by the IRS twice within
// three calendar years that the payee provided an incorrect
// name and/or TIN combination. Otherwise, enter a blank.
SecondTinNotice string `json:"second_tin_notice"`
// Enter the name of the foreign country or U.S. possession to
// which the withheld foreign tax (Amount Code 6) applies.
// Otherwise, enter blanks.
ForeignCountry string `json:"foreign_country"`
// Enter CUSIP Number. If the tax-exempt interest is reported
// in the aggregate for multiple bonds or accounts, enter
// VARIOUS. Right justify the information and fill unused
// positions with blanks.
CUSIP string `json:"cusip_number"`
// Enter "1" (one) if there is FATCA filing requirement.
// Otherwise, enter a blank.
FATCA string `json:"fatca_requirement_indicator"`
// This portion of the “B” Record may be used to record
// information for state or local government reporting or for the
// filer’s own purposes. Payers should contact the state or local
// revenue departments for filing requirements. You may enter
// your routing and transit number (RTN) here. If this field is not
// used, enter blanks.
SpecialDataEntries string `json:"special_data_entries"`
// State income tax withheld is for the convenience of the filers.
// This information does not need to be reported to the IRS. If
// not reporting state tax withheld, this field may be used as a
// continuation of the Special Data Entries Field. The payment
// amount must be right justified and unused positions
// zero-filled.
StateIncomeTaxWithheld int `json:"state_income_tax_withheld"`
// Local income tax withheld is for the convenience of the filers.
// This information does not need to be reported to the IRS. If
// not reporting local tax withheld, this field may be used as a
// continuation of the Special Data Entries Field. The payment
// amount must be right justified and unused positions
// zero-filled.
LocalIncomeTaxWithheld int `json:"local_income_tax_withheld"`
// Enter the valid CF/SF code if this payee record is to be
// forwarded to a state agency as part of the CF/SF Program.
CombinedFSCode int `json:"combined_federal_state_code"`
}
func (*Sub1099INT) Ascii ¶
func (r *Sub1099INT) Ascii() []byte
Ascii returns fire ascii of “1099-INT” record
func (*Sub1099INT) FederalState ¶ added in v0.1.4
func (r *Sub1099INT) FederalState() int
Type returns FS code of “1099-INT” record
func (*Sub1099INT) Parse ¶
func (r *Sub1099INT) Parse(buf []byte) error
Parse parses the “1099-INT” record from fire ascii
func (*Sub1099INT) Validate ¶
func (r *Sub1099INT) Validate() error
Validate performs some checks on the record and returns an error if not Validated
func (*Sub1099INT) ValidateCombinedFSCode ¶
func (r *Sub1099INT) ValidateCombinedFSCode() error
func (*Sub1099INT) ValidateFATCA ¶
func (r *Sub1099INT) ValidateFATCA() error
func (*Sub1099INT) ValidateSecondTinNotice ¶ added in v0.1.4
func (r *Sub1099INT) ValidateSecondTinNotice() error
type Sub1099K ¶ added in v0.1.4
type Sub1099K struct {
// Enter “2” (two) to indicate notification by the IRS twice within
// three calendar years that the payee provided an incorrect
// name and/or TIN combination. Otherwise, enter a blank.
SecondTinNotice string `json:"second_tin_notice"`
// Required. Enter the appropriate indicator from the following
// table.
// 1: Payment Settlement Entity (PSE)
// 2: Electronic Payment Facilitator (EPF)/Other third party
TypeFilerIndicator string `json:"type_filer_indicator"`
// Required. Enter the appropriate indicator from the following
// table.
// 1: Payment Card Payment
// 2: EThird Party Network Payment
TypePaymentIndicator string `json:"type_payment_indicator"`
// Required. Enter the number of payment transactions. Do not
// include refund transactions.
// Right justify the information and fill unused positions with
// zeros.
NumberPaymentTransactions int `json:"number_payment_transactions"`
// Enter the payment settlement entity’s name and phone
// number if different from the filer's name. Otherwise, enter
// blanks. Left justify the information, and fill unused positions
// with blanks.
PaymentSettlementNamePhoneNumber string `json:"payment_settlement_name_phone_number"`
// Required. Enter the Merchant Category Code (MCC). All
// MCCs must contain four numeric characters. If no code is
// provided, fill unused positions with zeros.
MerchantCategoryCode int `json:"merchant_category_code"`
// This portion of the “B” Record may be used to record
// information for state or local government reporting or for the
// filer’s own purposes. Payers should contact the state or local
// revenue departments for filing requirements. You may enter
// your routing and transit number (RTN) here. If this field is not
// used, enter blanks.
SpecialDataEntries string `json:"special_data_entries"`
// State income tax withheld is for the convenience of the filers.
// This information does not need to be reported to the IRS. If
// not reporting state tax withheld, this field may be used as a
// continuation of the Special Data Entries Field. The payment
// amount must be right justified and unused positions
// zero-filled.
StateIncomeTaxWithheld int `json:"state_income_tax_withheld"`
// Local income tax withheld is for the convenience of the filers.
// This information does not need to be reported to the IRS. If
// not reporting local tax withheld, this field may be used as a
// continuation of the Special Data Entries Field. The payment
// amount must be right justified and unused positions
// zero-filled.
LocalIncomeTaxWithheld int `json:"local_income_tax_withheld"`
// Enter the valid CF/SF code if this payee record is to be
// forwarded to a state agency as part of the CF/SF Program.
CombinedFSCode int `json:"combined_federal_state_code"`
}
func (*Sub1099K) FederalState ¶ added in v0.1.4
Type returns FS code of “1099-K” record
func (*Sub1099K) Validate ¶ added in v0.1.4
Validate performs some checks on the record and returns an error if not Validated
func (*Sub1099K) ValidateCombinedFSCode ¶ added in v0.1.4
func (*Sub1099K) ValidateSecondTinNotice ¶ added in v0.1.4
func (*Sub1099K) ValidateTypeFilerIndicator ¶ added in v0.1.4
func (*Sub1099K) ValidateTypePaymentIndicator ¶ added in v0.1.4
type Sub1099LS ¶ added in v0.1.4
type Sub1099LS struct {
// Enter the Date of Sale in format YYYYMMDD (for example
// January 5, 2019, would be 20190105). Do not enter hyphens
// or slashes.
DateSale time.Time `json:"date_sale"`
// Enter Issuer’s Contact Name.
IssuersInformation string `json:"issuers_information"`
}
func (*Sub1099LS) FederalState ¶ added in v0.1.4
Type returns FS code of “1099-LS” record
type Sub1099LTC ¶ added in v0.1.4
type Sub1099LTC struct {
// Enter the appropriate indicator from the following table.
// Otherwise, enter blanks.
// 1: Per diem
// 2: Reimbursed amount
TypePaymentIndicator string `json:"type_payment_indicator"`
// Required. Enter the social security number of the insured.
SocialSecurityNumberInsured string `json:"social_security_number_insured"`
// Required. Enter the name of the insured.
NameInsured string `json:"name_insured"`
// Required. Enter the address of the insured. The street
// address should include number, street, apartment or suite
// number (or P.O. Box if mail is not delivered to street
// address). Do not input any data other than the payee’s
// address. Left justify the information and fill unused positions
// with blanks.
// For U.S. addresses, the payee city, state, and ZIP Code
// must be reported as a 40-, 2-, and 9-position field,
// respectively. Filers must adhere to the correct format for the
// insured’s city, state, and ZIP Code.
// For foreign addresses, filers may use the insured’s city,
// state, and ZIP Code as a continuous 51-position field. Enter
// information in the following order: city, province or state,
// postal code, and the name of the country. When reporting a
// foreign address, the Foreign Country Indicator in position 247
// must contain a “1” (one).
AddressInsured string `json:"address_insured"`
// Required. Enter the city, town, or post office. Left justify the
// information and fill unused positions with blanks. Enter APO
// or FPO, if applicable. Do not enter state and ZIP Code
// information in this field. Left justify the information and fill
// unused positions with blanks.
CityInsured string `json:"city_insured"`
// Required. Enter the valid U.S. Postal Service state
// abbreviations for states or the appropriate postal identifier
// (AA, AE, or AP). Refer to Part A. Sec. 13, Table 2, State &
// U.S. Territory Abbreviations
StateInsured string `json:"state_insured"`
// Required. Enter the valid nine-digit ZIP Code assigned by
// the U.S. Postal Service. If only the first five-digits are known,
// left justify the information and fill the unused positions with
// blanks. For foreign countries, alpha characters are
// acceptable as long as the filer has entered a “1” (one) in the
// Foreign Country Indicator, located in position 247 of the “B”
// Record.
ZipCodeInsured string `json:"zip_code_insured"`
// Enter the appropriate code from the table below to indicate
// the status of the illness of the insured. Otherwise, enter
// blank.
// 1: Chronically ill
// 2: Terminally ill
StatusIllnessIndicator string `json:"status_illness_indicator"`
// Enter the latest date of a doctor’s certification of the status of
// the insured’s illness in YYYYMMDD format (for example,
// January 5, 2019, would be 20190105). Do not enter hyphens
// or slashes.
DateCertified string `json:"date_certified"`
// Enter “1” (one) if benefits were from a qualified long-term
// care insurance contract. Otherwise, enter a blank.
QualifiedContractIndicator string `json:"qualified_contract_indicator"`
// State income tax withheld is for the convenience of the filers.
// This information does not need to be reported to the IRS. If
// not reporting state tax withheld, this field may be used as a
// continuation of the Special Data Entries Field. The payment
// amount must be right justified and unused positions
// zero-filled.
StateIncomeTaxWithheld int `json:"state_income_tax_withheld"`
// Local income tax withheld is for the convenience of the filers.
// This information does not need to be reported to the IRS. If
// not reporting local tax withheld, this field may be used as a
// continuation of the Special Data Entries Field. The payment
// amount must be right justified and unused positions
// zero-filled.
LocalIncomeTaxWithheld int `json:"local_income_tax_withheld"`
}
func (*Sub1099LTC) Ascii ¶ added in v0.1.4
func (r *Sub1099LTC) Ascii() []byte
Ascii returns fire ascii of “1099-LTC” record
func (*Sub1099LTC) FederalState ¶ added in v0.1.4
func (r *Sub1099LTC) FederalState() int
Type returns FS code of “1099-LTC” record
func (*Sub1099LTC) Parse ¶ added in v0.1.4
func (r *Sub1099LTC) Parse(buf []byte) error
Parse parses the “1099-LTC” record from fire ascii
func (*Sub1099LTC) Type ¶ added in v0.1.4
func (r *Sub1099LTC) Type() string
Type returns type of “1099-LTC” record
func (*Sub1099LTC) Validate ¶ added in v0.1.4
func (r *Sub1099LTC) Validate() error
Validate performs some checks on the record and returns an error if not Validated
func (*Sub1099LTC) ValidateQualifiedContractIndicator ¶ added in v0.1.4
func (r *Sub1099LTC) ValidateQualifiedContractIndicator() error
func (*Sub1099LTC) ValidateStateInsured ¶ added in v0.1.4
func (r *Sub1099LTC) ValidateStateInsured() error
func (*Sub1099LTC) ValidateStatusIllnessIndicator ¶ added in v0.1.4
func (r *Sub1099LTC) ValidateStatusIllnessIndicator() error
func (*Sub1099LTC) ValidateTypePaymentIndicator ¶ added in v0.1.4
func (r *Sub1099LTC) ValidateTypePaymentIndicator() error
type Sub1099MISC ¶
type Sub1099MISC struct {
// Enter “2” (two) to indicate notification by the IRS twice within
// three calendar years that the payee provided an incorrect
// name and/or TIN combination. Otherwise, enter a blank.
SecondTinNotice string `json:"second_tin_notice"`
// Enter “1” (one) to indicate 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.
// Otherwise, enter a blank.
// Note: If reporting a direct sales indicator only, use Type of
// Return “A” in Field Positions 26-27, and Amount Code 1 in
// Field Position 28 of the Payer “A” Record. All payment
// amount fields in the Payee “B” Record will contain zeros.
DirectSalesIndicator string `json:"direct_sales_indicator"`
// Enter "1" (one) if there is FATCA filing requirement.
// Otherwise, enter a blank.
FATCA string `json:"fatca_requirement_indicator"`
// This portion of the “B” Record may be used to record
// information for state or local government reporting or for the
// filer’s own purposes. Payers should contact the state or local
// revenue departments for filing requirements. If this field is not
// used, enter blanks.
SpecialDataEntries string `json:"special_data_entries"`
// State income tax withheld is for the convenience of the filers.
// This information does not need to be reported to the IRS.
// The payment amount must be right justified and unused
// positions must be zero-filed. If not reporting state income tax
// withheld, this field may be used as a continuation of the
// Special Data Entries field.
StateIncomeTaxWithheld int `json:"state_income_tax_withheld"`
// Local income tax withheld is for the convenience of the filers.
// This information does not need to be reported to the IRS.
// The payment amount must be right justified and unused
// positions must be zero-filled. If not reporting local tax
// withheld, this field may be used as a continuation of the
// Special Data Entries Field.
LocalIncomeTaxWithheld int `json:"local_income_tax_withheld"`
// Enter the valid CF/SF code if this payee record is to be
// forwarded to a state agency as part of the CF/SF Program.
CombinedFSCode int `json:"combined_federal_state_code"`
}
func (*Sub1099MISC) Ascii ¶
func (r *Sub1099MISC) Ascii() []byte
Ascii returns fire ascii of “1099-MISC” record
func (*Sub1099MISC) FederalState ¶ added in v0.1.4
func (r *Sub1099MISC) FederalState() int
Type returns FS code of “1099-MISC” record
func (*Sub1099MISC) Parse ¶
func (r *Sub1099MISC) Parse(buf []byte) error
Parse parses the “1099-MISC” record from fire ascii
func (*Sub1099MISC) Type ¶
func (r *Sub1099MISC) Type() string
Type returns type of “1099-MISC” record
func (*Sub1099MISC) Validate ¶
func (r *Sub1099MISC) Validate() error
Validate performs some checks on the record and returns an error if not Validated
func (*Sub1099MISC) ValidateCombinedFSCode ¶
func (r *Sub1099MISC) ValidateCombinedFSCode() error
func (*Sub1099MISC) ValidateDirectSalesIndicator ¶
func (r *Sub1099MISC) ValidateDirectSalesIndicator() error
func (*Sub1099MISC) ValidateFATCA ¶
func (r *Sub1099MISC) ValidateFATCA() error
type Sub1099NEC ¶ added in v0.1.4
type Sub1099NEC struct {
// Enter “2” (two) to indicate notification by the IRS twice within
// three calendar years that the payee provided an incorrect
// name and/or TIN combination. Otherwise, enter a blank.
SecondTinNotice string `json:"second_tin_notice"`
// Enter “1” (one) to indicate 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.
// Otherwise, enter a blank.
// Note: If reporting a direct sales indicator only, use Type of
// Return “NE” in Field Positions 26-27, and Amount Code 1
// in Field Position 28 of the Issuer “A” Record. All payment
// amount fields in the Payee “B” Record will contain zeros.
DirectSalesIndicator string `json:"direct_sales_indicator"`
// State income tax withheld is for the convenience of the filers.
// This information does not need to be reported to the IRS. The
// payment amount must be right justified, and unused positions
// must be zero-filed. If not reporting state income tax withheld,
// this field may be used as a continuation of the Special Data
// Entries field.
StateIncomeTaxWithheld int `json:"state_income_tax_withheld"`
// Local income tax withheld is for the convenience of the filers.
// This information does not need to be reported to the IRS. The
// payment amount must be right justified, and unused positions
// must be zero-filled. If not reporting local tax withheld, this field
// may be used as a continuation of the Special Data Entries
// Field.
LocalIncomeTaxWithheld int `json:"local_income_tax_withheld"`
// Enter the valid CF/SF Code if this payee record is to be
// forwarded toa state agency as part of the CF/SF Program.
// Enter the valid state code from Part A. Sec. 12, Table 1,
// Participating States and Codes. Enter Blanks for issuers or
// states not participating in this program.
CombinedFSCode int `json:"combined_federal_state_code"`
}
func (*Sub1099NEC) Ascii ¶ added in v0.1.4
func (r *Sub1099NEC) Ascii() []byte
Ascii returns fire ascii of “1099-NEC” record
func (*Sub1099NEC) FederalState ¶ added in v0.1.4
func (r *Sub1099NEC) FederalState() int
Type returns FS code of “1099-NEC” record
func (*Sub1099NEC) Parse ¶ added in v0.1.4
func (r *Sub1099NEC) Parse(buf []byte) error
Parse parses the “1099-NEC” record from fire ascii
func (*Sub1099NEC) Type ¶ added in v0.1.4
func (r *Sub1099NEC) Type() string
Type returns type of “1099-NEC” record
func (*Sub1099NEC) Validate ¶ added in v0.1.4
func (r *Sub1099NEC) Validate() error
Validate performs some checks on the record and returns an error if not Validated
func (*Sub1099NEC) ValidateCombinedFSCode ¶ added in v0.1.6
func (r *Sub1099NEC) ValidateCombinedFSCode() error
func (*Sub1099NEC) ValidateDirectSalesIndicator ¶ added in v0.1.6
func (r *Sub1099NEC) ValidateDirectSalesIndicator() error
type Sub1099OID ¶
type Sub1099OID struct {
// Enter “2” (two) to indicate notification by the IRS twice within
// three calendar years that the payee provided an incorrect
// name and/or TIN combination. Otherwise, enter a blank.
SecondTinNotice string `json:"second_tin_notice"`
// Required. Enter the CUSIP number, if any. If there is no
// CUSIP number, enter the abbreviation for the stock
// exchange and issuer, the coupon rate, and year of maturity
// (must be four-digit year). For example, NYSE XYZ 12/2019.
// Show the name of the issuer if other than the payer. If fewer
// than 39 characters are required, left justify the information
// and fill unused positions with blanks.
Description string `json:"direct_sales_indicator" validate:"required"`
// Enter "1" (one) if there is FATCA filing requirement.
// Otherwise, enter a blank.
FATCA string `json:"fatca_requirement_indicator"`
// This portion of the “B” Record may be used to record
// information for state or local government reporting or for the
// filer’s own purposes. Payers should contact the state or local
// revenue departments for filing requirements. If this field is not
// used, enter blanks.
SpecialDataEntries string `json:"special_data_entries"`
// State income tax withheld is for the convenience of the filers.
// This information does not need to be reported to the IRS.
// The payment amount must be right justified and unused
// positions must be zero-filed. If not reporting state income tax
// withheld, this field may be used as a continuation of the
// Special Data Entries field.
StateIncomeTaxWithheld int `json:"state_income_tax_withheld"`
// Local income tax withheld is for the convenience of the filers.
// This information does not need to be reported to the IRS.
// The payment amount must be right justified and unused
// positions must be zero-filled. If not reporting local tax
// withheld, this field may be used as a continuation of the
// Special Data Entries Field.
LocalIncomeTaxWithheld int `json:"local_income_tax_withheld"`
// Enter the valid CF/SF code if this payee record is to be
// forwarded to a state agency as part of the CF/SF Program.
CombinedFSCode int `json:"combined_federal_state_code"`
}
func (*Sub1099OID) Ascii ¶
func (r *Sub1099OID) Ascii() []byte
Ascii returns fire ascii of “1099-OID” record
func (*Sub1099OID) FederalState ¶ added in v0.1.4
func (r *Sub1099OID) FederalState() int
Type returns FS code of “1099-OID” record
func (*Sub1099OID) Parse ¶
func (r *Sub1099OID) Parse(buf []byte) error
Parse parses the “1099-OID” record from fire ascii
func (*Sub1099OID) Validate ¶
func (r *Sub1099OID) Validate() error
Validate performs some checks on the record and returns an error if not Validated
func (*Sub1099OID) ValidateCombinedFSCode ¶
func (r *Sub1099OID) ValidateCombinedFSCode() error
func (*Sub1099OID) ValidateFATCA ¶
func (r *Sub1099OID) ValidateFATCA() error
type Sub1099PATR ¶
type Sub1099PATR struct {
// Enter “2” (two) to indicate notification by the IRS twice within
// three calendar years that the payee provided an incorrect
// name and/or TIN combination. Otherwise, enter a blank.
SecondTinNotice string `json:"second_tin_notice"`
// This portion of the “B” Record may be used to record
// information for state or local government reporting or for the
// filer’s own purposes. Payers should contact the state or local
// revenue departments for filing requirements. If this field is not
// used, enter blanks.
SpecialDataEntries string `json:"special_data_entries"`
// State income tax withheld is for the convenience of the filers.
// This information does not need to be reported to the IRS.
// The payment amount must be right justified and unused
// positions must be zero-filed. If not reporting state income tax
// withheld, this field may be used as a continuation of the
// Special Data Entries field.
StateIncomeTaxWithheld int `json:"state_income_tax_withheld"`
// Local income tax withheld is for the convenience of the filers.
// This information does not need to be reported to the IRS.
// The payment amount must be right justified and unused
// positions must be zero-filled. If not reporting local tax
// withheld, this field may be used as a continuation of the
// Special Data Entries Field.
LocalIncomeTaxWithheld int `json:"local_income_tax_withheld"`
// Enter the valid CF/SF code if this payee record is to be
// forwarded to a state agency as part of the CF/SF Program.
CombinedFSCode int `json:"combined_federal_state_code"`
}
func (*Sub1099PATR) Ascii ¶
func (r *Sub1099PATR) Ascii() []byte
Ascii returns fire ascii of “1099-PATR” record
func (*Sub1099PATR) FederalState ¶ added in v0.1.4
func (r *Sub1099PATR) FederalState() int
Type returns FS code of “1099-PATR” record
func (*Sub1099PATR) Parse ¶
func (r *Sub1099PATR) Parse(buf []byte) error
Parse parses the “1099-PATR” record from fire ascii
func (*Sub1099PATR) Type ¶
func (r *Sub1099PATR) Type() string
Type returns type of “1099-PATR” record
func (*Sub1099PATR) Validate ¶
func (r *Sub1099PATR) Validate() error
Validate performs some checks on the record and returns an error if not Validated
func (*Sub1099PATR) ValidateCombinedFSCode ¶
func (r *Sub1099PATR) ValidateCombinedFSCode() error
func (*Sub1099PATR) ValidateSecondTinNotice ¶ added in v0.1.4
func (r *Sub1099PATR) ValidateSecondTinNotice() error
type Sub1099Q ¶ added in v0.1.4
type Sub1099Q struct {
// Required. Enter “1” (one) if reporting a trustee to trustee
// transfer. Otherwise, enter a blank.
TrusteeTransferIndicator string `json:"trustee_transfer_indicator"`
// Required. Enter the appropriate code from the table below to
// indicate the type of tuition payment. Otherwise, enter a
// blank.
// 1: Private program payment
// 2: State program payment
// 3: Coverdell ESA contribution
TypeTuitionPayment string `json:"type_tuition_payment"`
// Required. Enter “1” (one) if the recipient is not the
// designated beneficiary. Otherwise, enter a blank.
DesignatedBeneficiary string `json:"designated_beneficiary"`
// This portion of the “B” Record may be used to record
// information for state or local government reporting or for the
// filer’s own purposes. Payers should contact the state or local
// revenue departments for filing requirements. You may enter
// your routing and transit number (RTN) here. If this field is not
// used, enter blanks.
SpecialDataEntries string `json:"special_data_entries"`
}
func (*Sub1099Q) FederalState ¶ added in v0.1.4
Type returns FS code of “1099-Q” record
func (*Sub1099Q) Validate ¶ added in v0.1.4
Validate performs some checks on the record and returns an error if not Validated
func (*Sub1099Q) ValidateDesignatedBeneficiary ¶ added in v0.1.4
func (*Sub1099Q) ValidateTrusteeTransferIndicator ¶ added in v0.1.4
func (*Sub1099Q) ValidateTypeTuitionPayment ¶ added in v0.1.4
type Sub1099R ¶ added in v0.1.4
type Sub1099R struct {
// Required. Enter at least one distribution code from the table
// below. More than one code may apply. If only one code is
// necessary, it must be entered in position 545 and position
// 546 will be blank. When using Code P for an IRA distribution
// under Section 408(d)(4) of the Internal Revenue Code, the
// filer may also enter Code 1, 2, 4, B or J, if applicable. Only
// three numeric combinations are acceptable; Codes 8 and 1,
// 8 and 2, and 8 and 4, on one return. These three
// combinations can be used only if both codes apply to the
// distribution being reported. If more than one numeric code is
// applicable to different parts of a distribution, report two
// separate “B” Records.
// • Distribution Codes 5, 9, E, F, N, Q, R, S and T cannot be
// used with any other codes.
// • Distribution Code C can be a stand alone or combined
// with Distribution Code D only.
// • Distribution Code G may be used with Distribution Code
// 4 only if applicable.
// • Distribution Code K is valid with Distribution Codes 1, 2,
// 4, 7, 8, or G.
// • Distribution Code M can be a stand alone or combined
// with Distribution Codes 1, 2, 4, 7, or B.
// 1: *Early distribution, no known exception (in most cases, under age 59½)
// 2: *Early distribution, exception applies (under age 59½)
// 3: *Disability
// 4: *Death
// 5: *Prohibited transaction
// 6: Section 1035 exchange (a taxfree exchange of life insurance, annuity, qualified long-term care insurance, or endowment contracts)
// 7: *Normal distribution
// 8: *Excess contributions plus earnings/excess deferrals (and/or earnings) taxable in 2019
// 9: Cost of current life insurance protection (premiums paid by a trustee or custodian for current insurance protection)
// A: May be eligible for 10-year tax option
// B: Designated Roth account distribution
// C: Reportable Death Benefits under Section 6050Y(c)
// D: Annuity payments from nonqualified annuity payments and distributions from life insurance contracts that may be subject to tax under Section 1411
// E: Distribution under Employee Plans Compliance Resolution System (EPCRS)
// F: Charitable gift annuity
// G: Direct rollover and rollover contribution
// H: Direct rollover of distribution from a designated Roth account to a Roth IRA
// J: Early distribution from a Roth IRA (This code may be used with a Code 8 or P)
// K: Distribution of IRA assets not having a readily available FMV
// L: Loans treated as deemed distributions under Section 72(p)
// M: Qualified Plan Loan Offsets
// N: Recharacterized IRA contribution made for 2019
// P: *Excess contributions plus earnings/excess deferrals taxable for 2018
// Q: Qualified distribution from a Roth IRA.
// R: Recharacterized IRA contribution made for 2018
// S: *Early distribution from a SIMPLE IRA in first 2 years no known exceptions
// T: Roth IRA distribution exception applies because participant has reached 59½, died or is disabled, but it is unknown if the 5-year period has been met
// U: Distribution from ESOP under Section 404(k)
// W: Charges or payments for purchasing qualified long-term care insurance contracts under combined arrangements
DistributionCode string `json:"distribution_code"`
// Enter “1” (one) only if the taxable amount of the payment
// entered for Payment Amount Field 1 (Gross distribution) of
// the “B” Record cannot be computed. Otherwise, enter a
// blank. (If the Taxable Amount Not Determined Indicator is
// used, enter “0s” [zeros] in Payment Amount Field 2 of the
// Payee “B” Record.) Please make every effort to compute the
// taxable amount.
TaxableAmountNotDeterminedIndicator string `json:"taxable_amount_not_determined_indicator"`
// Enter “1” (one) for a traditional IRA, SEP, or SIMPLE
// distribution or Roth conversion. Otherwise, enter a blank. If
// the IRA/SEP/SIMPLE Indicator is used, enter the amount of
// the Roth conversion or distribution in Payment Amount Field
// A of the Payee “B” Record. Do not use the indicator for a
// distribution from a Roth or for an IRA recharacterization.
// Note: For Form 1099-R, generally, report the Roth
// conversion or total amount distributed from a traditional IRA,
// SEP, or SIMPLE in Payment Amount Field A (traditional
// IRA/SEP/SIMPLE distribution or Roth conversion), as well as
// Payment Amount Field 1 (Gross Distribution) of the “B”
// Record. Refer to Instructions for Forms 1099-R and 5498 for
// exceptions (Box 2a instructions).
ISSIndicator string `json:"ira_sep_simple_indicator"`
// Enter a “1” (one) only if the payment shown for Distribution
// Amount Code 1 is a total distribution that closed out the
// account. Otherwise, enter a blank.
// Note: A total distribution is one or more distributions within
// one tax year in which the entire balance of the account is
// distributed. Any distribution that does not meet this definition
// is not a total distribution.
TotalDistributionIndicator string `json:"total_distribution_indicator"`
// Use this field when reporting a total distribution to more than
// one person, such as when a participant is deceased and a
// payer distributes to two or more beneficiaries. Therefore, if
// the percentage is 100, leave this field blank. If the
// percentage is a fraction, round off to the nearest whole
// number (for example, 10.4 percent will be10 percent; 10.5
// percent will be 11 percent). Enter the percentage received by
// the person whose TIN is included in positions 12-20 of the
// “B” Record. This field must be right justified, and unused
// positions must be zero-filled. If not applicable, enter blanks.
// Filers are not required to enter this information for any IRA
// distribution or for direct rollovers.
PercentageTotalDistribution int `json:"percentage_total_distribution"`
// Enter the first year a designated Roth contribution was made
// in YYYY format. If the date is unavailable, enter blanks.
FirstYearDesignatedRothContribution int `json:"firstYear_designated_roth_contribution"`
// Enter "1" (one) if there is FATCA filing requirement.
// Otherwise, enter a blank.
FATCA string `json:"fatca_requirement_indicator"`
// Enter date of payment in YYYYMMDD format. (for example,
// January 5, 2019, would be 20190105). Do not enter hyphens
// or slashes.
DatePayment time.Time `json:"date_payment"`
// This portion of the “B” Record may be used to record
// information for state or local government reporting or for the
// filer’s own purposes. Payers should contact the state or local
// revenue departments for filing requirements. You may enter
// your routing and transit number (RTN) here. If this field is not
// used, enter blanks.
SpecialDataEntries string `json:"special_data_entries"`
// State income tax withheld is for the convenience of the filers.
// This information does not need to be reported to the IRS. If
// not reporting state tax withheld, this field may be used as a
// continuation of the Special Data Entries Field. The payment
// amount must be right justified and unused positions
// zero-filled.
StateIncomeTaxWithheld int `json:"state_income_tax_withheld"`
// Local income tax withheld is for the convenience of the filers.
// This information does not need to be reported to the IRS. If
// not reporting local tax withheld, this field may be used as a
// continuation of the Special Data Entries Field. The payment
// amount must be right justified and unused positions
// zero-filled.
LocalIncomeTaxWithheld int `json:"local_income_tax_withheld"`
// Enter the valid CF/SF code if this payee record is to be
// forwarded to a state agency as part of the CF/SF Program.
CombinedFSCode int `json:"combined_federal_state_code"`
}
func (*Sub1099R) FederalState ¶ added in v0.1.4
Type returns FS code of “1099-R” record
func (*Sub1099R) UnmarshalJSON ¶ added in v0.1.4
Unmarshal parses the JSON-encoded data
func (*Sub1099R) Validate ¶ added in v0.1.4
Validate performs some checks on the record and returns an error if not Validated
func (*Sub1099R) ValidateCombinedFSCode ¶ added in v0.1.4
func (*Sub1099R) ValidateDistributionCode ¶ added in v0.1.4
func (*Sub1099R) ValidateFATCA ¶ added in v0.1.4
func (*Sub1099R) ValidateISSIndicator ¶ added in v0.1.4
func (*Sub1099R) ValidateTaxableAmountNotDeterminedIndicator ¶ added in v0.1.4
func (*Sub1099R) ValidateTotalDistributionIndicator ¶ added in v0.1.4
type Sub1099S ¶ added in v0.1.4
type Sub1099S struct {
// Enter “1” (one) only if the taxable amount of the payment
// entered for Payment Amount Field 1 (Gross distribution) of
// the “B” Record cannot be computed. Otherwise, enter a
// blank. (If the Taxable Amount Not Determined Indicator is
// used, enter “0s” [zeros] in Payment Amount Field 2 of the
// Payee “B” Record.) Please make every effort to compute the
// taxable amount.
PropertyServicesIndicator string `json:"property_services_indicator"`
// Required. Enter the closing date in YYYYMMDD format (for
// example, January 5, 2019, would be 20190105). Do not
// enter hyphens or slashes.
DateClosing string `json:"date_closing"`
// Required. Enter the address of the property transferred
// (including city, state, and ZIP Code). If the address does not
// sufficiently identify the property, also enter a legal
// description, such as section, lot, and block. For timber
// royalties, enter “TIMBER.”
// If fewer than 39 positions are required, left justify the
// information and fill unused positions with blanks.
AddressLegalDescription string `json:"address_legal_description"`
// Required. Enter “1” if the transferor is a foreign person
//(nonresident alien, foreign partnership, foreign estate, or
//foreign trust). Otherwise, enter a blank.
ForeignTransferor string `json:"foreign_transferor"`
// This portion of the “B” Record may be used to record
// information for state or local government reporting or for the
// filer’s own purposes. Payers should contact the state or local
// revenue departments for filing requirements. You may enter
// your routing and transit number (RTN) here. If this field is not
// used, enter blanks.
SpecialDataEntries string `json:"special_data_entries"`
// State income tax withheld is for the convenience of the filers.
// This information does not need to be reported to the IRS. If
// not reporting state tax withheld, this field may be used as a
// continuation of the Special Data Entries Field. The payment
// amount must be right justified and unused positions
// zero-filled.
StateIncomeTaxWithheld int `json:"state_income_tax_withheld"`
// Local income tax withheld is for the convenience of the filers.
// This information does not need to be reported to the IRS. If
// not reporting local tax withheld, this field may be used as a
// continuation of the Special Data Entries Field. The payment
// amount must be right justified and unused positions
// zero-filled.
LocalIncomeTaxWithheld int `json:"local_income_tax_withheld"`
}
func (*Sub1099S) FederalState ¶ added in v0.1.4
Type returns FS code of “1099-S” record
func (*Sub1099S) Validate ¶ added in v0.1.4
Validate performs some checks on the record and returns an error if not Validated
func (*Sub1099S) ValidateForeignTransferor ¶ added in v0.1.4
func (*Sub1099S) ValidatePropertyServicesIndicator ¶ added in v0.1.4
type Sub1099SA ¶ added in v0.1.4
type Sub1099SA struct {
// Required. Enter the applicable code from the table below to
// indicate the type of payment.
// 1: Normal distribution
// 2: Excess contribution
// 3: Disability
// 4: Death distribution other than code 6
// 5: Prohibited transaction
// 6: Death distribution after the year of death to a nonspouse beneficiary.
DistributionCode string `json:"distribution_code"`
// Enter “1” (one) if distributions are from a Medicare Advantage
// MSA. Otherwise, enter a blank.
MedicareAdvantageMSAIndicator string `json:"medicare_advantage_msa_indicator"`
// Enter “1” (one) if distributions are from a HAS. Otherwise,
// enter a blank.
HSAIndicator string `json:"hsa_indicator"`
// Enter “1” (one) if distributions are from an Archer MSA.
// Otherwise, enter a blank.
ArcherMSAIndicator string `json:"archer_mas_indicator"`
// This portion of the “B” Record may be used to record
// information for state or local government reporting or for the
// filer’s own purposes. Payers should contact the state or local
// revenue departments for filing requirements. You may enter
// your routing and transit number (RTN) here. If this field is not
// used, enter blanks.
SpecialDataEntries string `json:"special_data_entries"`
// State income tax withheld is for the convenience of the filers.
// This information does not need to be reported to the IRS. If
// not reporting state tax withheld, this field may be used as a
// continuation of the Special Data Entries Field. The payment
// amount must be right justified and unused positions
// zero-filled.
StateIncomeTaxWithheld int `json:"state_income_tax_withheld"`
// Local income tax withheld is for the convenience of the filers.
// This information does not need to be reported to the IRS. If
// not reporting local tax withheld, this field may be used as a
// continuation of the Special Data Entries Field. The payment
// amount must be right justified and unused positions
// zero-filled.
LocalIncomeTaxWithheld int `json:"local_income_tax_withheld"`
}
func (*Sub1099SA) FederalState ¶ added in v0.1.4
Type returns FS code of “1099-SA” record
func (*Sub1099SA) Validate ¶ added in v0.1.4
Validate performs some checks on the record and returns an error if not Validated
func (*Sub1099SA) ValidateArcherMSAIndicator ¶ added in v0.1.4
func (*Sub1099SA) ValidateDistributionCode ¶ added in v0.1.4
func (*Sub1099SA) ValidateHSAIndicator ¶ added in v0.1.4
func (*Sub1099SA) ValidateMedicareAdvantageMSAIndicator ¶ added in v0.1.4
type Sub1099SB ¶ added in v0.1.4
type Sub1099SB struct {
// Enter Issuer’s contact name.
IssuersInformation string `json:"issuers_information"`
}
func (*Sub1099SB) FederalState ¶ added in v0.1.4
Type returns FS code of “1099-SB” record
type Sub3921 ¶ added in v0.1.4
type Sub3921 struct {
// Required. Enter the date the option was granted in
// YYYYMMDD format (for example, January 5, 2019, would be
// 20190105).
DateOptionGranted time.Time `json:"date_option_granted"`
// Required. Enter the date the option was exercised in
// YYYYMMDD format (for example, January 5, 2019, would be
// 20190105).
DateOptionExercised time.Time `json:"date_option_exercised"`
// whole numbers only, using standard rounding rules as
// necessary. Right justify the information and fill unused
// positions with zeros.
NumberSharesTransferred int `json:"number_shares_transferred"`
// Enter other than transferor information, left justify the
// information and fill unused positions with blanks.
OtherThanTransferorInformation string `json:"other_than_transferor_information"`
// This portion of the “B” Record may be used to record
// information for state or local government reporting or for the
// filer’s own purposes. Payers should contact the state or local
// revenue departments for filing requirements.
// If this field is not used, enter blanks.
SpecialDataEntries string `json:"special_data_entries"`
}
func (*Sub3921) FederalState ¶ added in v0.1.4
Type returns FS code of “3921” record
type Sub3922 ¶ added in v0.1.4
type Sub3922 struct {
// Required. Enter the date the option was granted in
// YYYYMMDD format (for example, January 5, 2019, would be
// 20190105).
DateOptionGranted time.Time `json:"date_option_granted"`
// Required. Enter the date the option was exercised in
// YYYYMMDD format (for example, January 5, 2019, would be
// 20190105).
DateOptionExercised time.Time `json:"date_option_exercised"`
// whole numbers only, using standard rounding rules as
// necessary. Right justify the information and fill unused
// positions with zeros.
NumberSharesTransferred int `json:"number_shares_transferred"`
// Required. Enter the date the legal title was transferred by
// the transferor as YYYYMMDD (for example, January 5,
// 2019, would be 20190105). Otherwise, enter blanks.
DateLegalTitleTransferred time.Time `json:"date_legal_title_transferred"`
// This portion of the “B” Record may be used to record
// information for state or local government reporting or for the
// filer’s own purposes. Payers should contact the state or local
// revenue departments for filing requirements.
// If this field is not used, enter blanks.
SpecialDataEntries string `json:"special_data_entries"`
}
func (*Sub3922) FederalState ¶ added in v0.1.4
Type returns FS code of “3922” record
type Sub5498 ¶ added in v0.1.4
type Sub5498 struct {
// Enter “1” (one) if reporting a rollover (Amount Code 2) or Fair
// Market Value (Amount Code 5) for an IRA. Otherwise, enter
// a blank.
IRAIndicator string `json:"ira_indicator"`
// Enter “1” (one) if reporting a rollover (Amount Code 2) or Fair
// Market Value (Amount Code 5) for a SEP. Otherwise, enter
// a blank.
SEPIndicator string `json:"sep_indicator"`
// Enter “1” (one) if reporting a rollover (Amount Code 2) or Fair
// Market Value (Amount Code 5) for a SIMPLE. Otherwise,
// enter a blank.
SIMPLEIndicator string `json:"simple_indicator"`
// Enter “1” (one) if reporting a rollover (Amount Code 2) or Fair
// Market Value (Amount Code 5) for a Roth IRA. Otherwise,
// enter a blank.
RothIRAIndicator string `json:"roth_ira_indicator"`
// Enter “1” (one) if reporting RMD for 2020. Otherwise, enter a
// blank.
RMDIndicator string `json:"rmd_indicator"`
// Required. Enter the date the option was granted in
// YYYYMMDD format (for example, January 5, 2019, would be
// 20190105).
YearPostponedContribution int `json:"year_postponed_contribution"`
// Required, if applicable. Enter the code from the table below.
// Right justify. Otherwise, enter blanks.
// FD: Federally Designated Disaster Area
// PL: Public Law
// EO: Executive Order
// PO: Rollovers of qualified plan loan offset amounts
// SC: For participants who have certified that
// the rollover contribution is late because
// of an error on the part of a financial
// institution, death, disability,
// hospitalization, incarceration,
// restrictions imposed by a foreign
// country, postal error, or other
// circumstance listed in Section
// 3.02(2) of Rev. Proc. 2016-47 or other
// event beyond the reasonable control of
// the participant.
PostponedContributionCode string `json:"postponed_contribution_code"`
// Required, if applicable. Enter the federally declared disaster
// area, public law number or executive order number under
// which the postponed contribution is being issued.
// Right justify. Otherwise, enter blanks.
PostponedContributionReason string `json:"postponed_contribution_reason"`
// Required. Enter the two-character alpha Repayment Code.
// Right justify. Otherwise, enter blanks.
// QR: Qualified Reservist Distribution
// DD: Federally Designated Disaster Distribution
RepaymentCode string `json:"repayment_code"`
// Enter the date by which the RMD amount must be distributed
// to avoid the 50% excise tax. Format the date as
// YYYYMMDD (for example, January 5, 2019, would be
// 20190105). Otherwise, enter blanks.
RMDDate time.Time `json:"rmd_date"`
// Equal to one alpha character or two alpha characters or
// blank. Valid characters are:
// • Two-character combinations can consist of A, B, C,
// D, E, F, and G.
// • Valid character H cannot be present with any other
// characters.
Codes string `json:"codes"`
// This portion of the “B” Record may be used to record
// information for state or local government reporting or for the
// filer’s own purposes. Payers should contact the state or local
// revenue departments for filing requirements.
// If this field is not used, enter blanks.
SpecialDataEntries string `json:"special_data_entries"`
// Enter the valid CF/SF code if this payee record is to be
// forwarded to a state agency as part of the CF/SF Program.
CombinedFSCode int `json:"combined_federal_state_code"`
}
func (*Sub5498) FederalState ¶ added in v0.1.4
Type returns FS code of “5498” record
func (*Sub5498) Validate ¶ added in v0.1.4
Validate performs some checks on the record and returns an error if not Validated
func (*Sub5498) ValidateCodes ¶ added in v0.1.4
func (*Sub5498) ValidateCombinedFSCode ¶ added in v0.1.4
func (*Sub5498) ValidateIRAIndicator ¶ added in v0.1.4
func (*Sub5498) ValidatePostponedContributionCode ¶ added in v0.1.4
func (*Sub5498) ValidateRMDIndicator ¶ added in v0.1.4
func (*Sub5498) ValidateRepaymentCode ¶ added in v0.1.4
func (*Sub5498) ValidateRothIRAIndicator ¶ added in v0.1.4
func (*Sub5498) ValidateSEPIndicator ¶ added in v0.1.4
func (*Sub5498) ValidateSIMPLEIndicator ¶ added in v0.1.4
type Sub5498ESA ¶ added in v0.1.4
type Sub5498ESA struct {
// This portion of the “B” Record may be used to record
// information for state or local government reporting or for the
// filer’s own purposes. Payers should contact the state or local
// revenue departments for filing requirements.
// If this field is not used, enter blanks.
SpecialDataEntries string `json:"special_data_entries"`
}
func (*Sub5498ESA) Ascii ¶ added in v0.1.4
func (r *Sub5498ESA) Ascii() []byte
Ascii returns fire ascii of “5498-ESA” record
func (*Sub5498ESA) FederalState ¶ added in v0.1.4
func (r *Sub5498ESA) FederalState() int
Type returns FS code of “5498-ESA” record
func (*Sub5498ESA) Parse ¶ added in v0.1.4
func (r *Sub5498ESA) Parse(buf []byte) error
Parse parses the “5498-ESA” record from fire ascii
func (*Sub5498ESA) Type ¶ added in v0.1.4
func (r *Sub5498ESA) Type() string
Type returns type of “5498-ESA” record
func (*Sub5498ESA) Validate ¶ added in v0.1.4
func (r *Sub5498ESA) Validate() error
Validate performs some checks on the record and returns an error if not Validated
type Sub5498SA ¶ added in v0.1.4
type Sub5498SA struct {
// Enter “1” (one) for a Medicare Advantage MSA. Otherwise,
// enter a blank.
MedicareAdvantageMSAIndicator string `json:"medicare_advantage_msa_indicator"`
// Enter “1” (one) for an HSA. Otherwise, enter a blank.
HSAIndicator string `json:"hsa_indicator"`
// Enter “1” (one) for an Archer MSA. Otherwise, enter a blank.
ArcherMSAIndicator string `json:"archer_mas_indicator"`
// This portion of the “B” Record may be used to record
// information for state or local government reporting or for the
// filer’s own purposes. Payers should contact the state or local
// revenue departments for filing requirements.
// If this field is not used, enter blanks.
SpecialDataEntries string `json:"special_data_entries"`
}
func (*Sub5498SA) FederalState ¶ added in v0.1.4
Type returns FS code of “5498-SA” record
func (*Sub5498SA) Validate ¶ added in v0.1.4
Validate performs some checks on the record and returns an error if not Validated
func (*Sub5498SA) ValidateArcherMSAIndicator ¶ added in v0.1.4
func (*Sub5498SA) ValidateHSAIndicator ¶ added in v0.1.4
func (*Sub5498SA) ValidateMedicareAdvantageMSAIndicator ¶ added in v0.1.4
type SubRecord ¶
type SubRecord interface {
FederalState() int
Type() string
Parse([]byte) error
Ascii() []byte
Validate() error
}
General subrecord interface
func NewSubRecord ¶
NewSubRecord returns a new sub record with type of return
type SubW2G ¶ added in v0.1.4
type SubW2G struct {
// Required. Enter the applicable type of wager code from the
// table below.
// 1: Horse race track
// 2: Dog race track
// 3: Jai-alai
// 4: State-conducted lottery
// 5: Keno
// 6: Bingo
// 7: Slot machines
// 8: Poker winnings
// 9: Any other type of gambling winnings
TypeWagerCode string `json:"type_wager_code"`
// Required. Enter the date of the winning transaction in
// YYYYMMDD format (for example, January 5, 2019, would be
// 20190105). This is not the date the money was paid, if paid
// after the date of the race (or game).
// Do not enter hyphens or slashes.
DateWon time.Time `json:"date_won"`
// Required. For state-conducted lotteries, enter the ticket or
// other identifying number.
// For keno, bingo, and slot machines, enter the ticket or card
// number (and color, if applicable), machine serial number, or
// any other information that will help identify the winning
// transaction.
// For all others, enter blanks.
Transaction string `json:"transaction"`
// If applicable, enter the race (or game) relating to the winning
// ticket. Otherwise, enter blanks.
Race string `json:"race"`
// If applicable, enter the initials or number of the cashier
// making the winning payment. Otherwise, enter blanks.
Cashier string `json:"cashier"`
// If applicable, enter the window number or location of the
// person paying the winning payment. Otherwise, enter
// blanks.
Window string `json:"window"`
// For other than state lotteries, enter the first identification
// number of the person receiving the winning payment.
// Otherwise, enter blanks.
FirstID string `json:"first_id"`
// For other than state lotteries, enter the second identification
// number of the person receiving the winnings. Otherwise,
// enter blanks.
SecondID string `json:"second_id"`
// This portion of the “B” Record may be used to record
// information for state or local government reporting or for the
// filer’s own purposes. Payers should contact the state or local
// revenue departments for filing requirements. You may enter
// your routing and transit number (RTN) here. If this field is not
// used, enter blanks.
SpecialDataEntries string `json:"special_data_entries"`
// State income tax withheld is for the convenience of the filers.
// This information does not need to be reported to the IRS. If
// not reporting state tax withheld, this field may be used as a
// continuation of the Special Data Entries Field. The payment
// amount must be right justified and unused positions
// zero-filled.
StateIncomeTaxWithheld int `json:"state_income_tax_withheld"`
// Local income tax withheld is for the convenience of the filers.
// This information does not need to be reported to the IRS. If
// not reporting local tax withheld, this field may be used as a
// continuation of the Special Data Entries Field. The payment
// amount must be right justified and unused positions
// zero-filled.
LocalIncomeTaxWithheld int `json:"local_income_tax_withheld"`
}
func (*SubW2G) FederalState ¶ added in v0.1.4
Type returns FS code of “W-2G” record
func (*SubW2G) Validate ¶ added in v0.1.4
Validate performs some checks on the record and returns an error if not Validated
func (*SubW2G) ValidateTypeWagerCode ¶ added in v0.1.4
Source Files
¶
- 1097_btc.go
- 1098.go
- 1098_c.go
- 1098_e.go
- 1098_f.go
- 1098_q.go
- 1098_t.go
- 1099_a.go
- 1099_b.go
- 1099_c.go
- 1099_cap.go
- 1099_div.go
- 1099_g.go
- 1099_h.go
- 1099_int.go
- 1099_k.go
- 1099_ls.go
- 1099_ltc.go
- 1099_misc.go
- 1099_nec.go
- 1099_oid.go
- 1099_patr.go
- 1099_q.go
- 1099_r.go
- 1099_s.go
- 1099_sa.go
- 1099_sb.go
- 3921.go
- 3922.go
- 5498.go
- 5498_esa.go
- 5498_sa.go
- subrecord.go
- w_2g.go