avalara_sdk 25.8.3 → 25.10.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (113) hide show
  1. checksums.yaml +4 -4
  2. data/Gemfile.lock +1 -1
  3. data/README.md +4 -14
  4. data/docs/A1099/V2/CompaniesW9Api.md +9 -9
  5. data/docs/A1099/V2/CompanyBase.md +50 -0
  6. data/docs/A1099/V2/CompanyRequest.md +50 -0
  7. data/docs/A1099/V2/ErrorResponse.md +2 -2
  8. data/docs/A1099/V2/ErrorResponseItem.md +2 -2
  9. data/docs/A1099/V2/Form1042S.md +16 -16
  10. data/docs/A1099/V2/Form1095B.md +15 -15
  11. data/docs/A1099/V2/Form1095C.md +14 -14
  12. data/docs/A1099/V2/Form1099Base.md +14 -14
  13. data/docs/A1099/V2/Form1099Div.md +15 -15
  14. data/docs/A1099/V2/Form1099Int.md +16 -16
  15. data/docs/A1099/V2/Form1099K.md +20 -20
  16. data/docs/A1099/V2/Form1099ListRequest.md +1 -1
  17. data/docs/A1099/V2/Form1099Misc.md +15 -15
  18. data/docs/A1099/V2/Form1099Nec.md +17 -17
  19. data/docs/A1099/V2/Form1099R.md +17 -17
  20. data/docs/A1099/V2/Forms1099Api.md +12 -12
  21. data/docs/A1099/V2/FormsW9Api.md +17 -17
  22. data/docs/A1099/V2/IntermediaryOrFlowThrough.md +2 -2
  23. data/docs/A1099/V2/IssuerBase.md +46 -0
  24. data/docs/A1099/V2/IssuerRequest.md +46 -0
  25. data/docs/A1099/V2/Issuers1099Api.md +9 -9
  26. data/docs/A1099/V2/JobResponse.md +1 -1
  27. data/docs/A1099/V2/JobsApi.md +1 -1
  28. data/docs/A1099/V2/TinMatchStatusResponse.md +1 -1
  29. data/docs/A1099/V2/W4FormMinimalRequest.md +2 -2
  30. data/docs/A1099/V2/W4FormRequest.md +11 -11
  31. data/docs/A1099/V2/W4FormResponse.md +48 -20
  32. data/docs/A1099/V2/W8BenEFormMinimalRequest.md +2 -2
  33. data/docs/A1099/V2/W8BenEFormRequest.md +10 -10
  34. data/docs/A1099/V2/W8BenEFormResponse.md +96 -68
  35. data/docs/A1099/V2/W8BenFormMinimalRequest.md +2 -2
  36. data/docs/A1099/V2/W8BenFormRequest.md +6 -6
  37. data/docs/A1099/V2/W8BenFormResponse.md +55 -27
  38. data/docs/A1099/V2/W8ImyFormMinimalRequest.md +2 -2
  39. data/docs/A1099/V2/W8ImyFormRequest.md +10 -10
  40. data/docs/A1099/V2/W8ImyFormResponse.md +118 -90
  41. data/docs/A1099/V2/W9FormBaseMinimalRequest.md +2 -2
  42. data/docs/A1099/V2/W9FormBaseRequest.md +2 -2
  43. data/docs/A1099/V2/W9FormBaseResponse.md +3 -3
  44. data/docs/A1099/V2/W9FormMinimalRequest.md +2 -2
  45. data/docs/A1099/V2/W9FormRequest.md +12 -12
  46. data/docs/A1099/V2/W9FormResponse.md +44 -16
  47. data/lib/avalara_sdk/api/A1099/V2/companies_w9_api.rb +21 -21
  48. data/lib/avalara_sdk/api/A1099/V2/forms1099_api.rb +7 -7
  49. data/lib/avalara_sdk/api/A1099/V2/forms_w9_api.rb +16 -16
  50. data/lib/avalara_sdk/api/A1099/V2/issuers1099_api.rb +21 -21
  51. data/lib/avalara_sdk/api/A1099/V2/jobs_api.rb +1 -1
  52. data/lib/avalara_sdk/api/EInvoicing/V1/data_input_fields_api.rb +1 -1
  53. data/lib/avalara_sdk/api/EInvoicing/V1/documents_api.rb +1 -1
  54. data/lib/avalara_sdk/api/EInvoicing/V1/interop_api.rb +1 -1
  55. data/lib/avalara_sdk/api/EInvoicing/V1/mandates_api.rb +1 -1
  56. data/lib/avalara_sdk/api/EInvoicing/V1/subscriptions_api.rb +1 -1
  57. data/lib/avalara_sdk/api/EInvoicing/V1/tax_identifiers_api.rb +1 -1
  58. data/lib/avalara_sdk/api/EInvoicing/V1/trading_partners_api.rb +1 -1
  59. data/lib/avalara_sdk/api_client.rb +10 -2
  60. data/lib/avalara_sdk/models/A1099/V2/company_base.rb +404 -0
  61. data/lib/avalara_sdk/models/A1099/V2/company_request.rb +411 -0
  62. data/lib/avalara_sdk/models/A1099/V2/company_response.rb +1 -1
  63. data/lib/avalara_sdk/models/A1099/V2/error_response.rb +2 -6
  64. data/lib/avalara_sdk/models/A1099/V2/error_response_item.rb +2 -0
  65. data/lib/avalara_sdk/models/A1099/V2/form1042_s.rb +20 -30
  66. data/lib/avalara_sdk/models/A1099/V2/form1095_b.rb +19 -40
  67. data/lib/avalara_sdk/models/A1099/V2/form1095_c.rb +18 -49
  68. data/lib/avalara_sdk/models/A1099/V2/form1099_base.rb +18 -29
  69. data/lib/avalara_sdk/models/A1099/V2/form1099_div.rb +20 -31
  70. data/lib/avalara_sdk/models/A1099/V2/form1099_int.rb +22 -32
  71. data/lib/avalara_sdk/models/A1099/V2/form1099_k.rb +35 -38
  72. data/lib/avalara_sdk/models/A1099/V2/form1099_list_request.rb +2 -12
  73. data/lib/avalara_sdk/models/A1099/V2/form1099_misc.rb +20 -31
  74. data/lib/avalara_sdk/models/A1099/V2/form1099_nec.rb +23 -33
  75. data/lib/avalara_sdk/models/A1099/V2/form1099_r.rb +48 -33
  76. data/lib/avalara_sdk/models/A1099/V2/intermediary_or_flow_through.rb +48 -2
  77. data/lib/avalara_sdk/models/A1099/V2/issuer_base.rb +384 -0
  78. data/lib/avalara_sdk/models/A1099/V2/issuer_request.rb +391 -0
  79. data/lib/avalara_sdk/models/A1099/V2/issuer_response.rb +1 -1
  80. data/lib/avalara_sdk/models/A1099/V2/job_response.rb +0 -6
  81. data/lib/avalara_sdk/models/A1099/V2/validation_error.rb +0 -6
  82. data/lib/avalara_sdk/models/A1099/V2/w4_form_minimal_request.rb +1 -27
  83. data/lib/avalara_sdk/models/A1099/V2/w4_form_request.rb +50 -24
  84. data/lib/avalara_sdk/models/A1099/V2/w4_form_response.rb +191 -15
  85. data/lib/avalara_sdk/models/A1099/V2/w8_ben_e_form_minimal_request.rb +1 -27
  86. data/lib/avalara_sdk/models/A1099/V2/w8_ben_e_form_request.rb +37 -28
  87. data/lib/avalara_sdk/models/A1099/V2/w8_ben_e_form_response.rb +190 -14
  88. data/lib/avalara_sdk/models/A1099/V2/w8_ben_form_minimal_request.rb +1 -27
  89. data/lib/avalara_sdk/models/A1099/V2/w8_ben_form_request.rb +20 -23
  90. data/lib/avalara_sdk/models/A1099/V2/w8_ben_form_response.rb +191 -15
  91. data/lib/avalara_sdk/models/A1099/V2/w8_imy_form_minimal_request.rb +1 -27
  92. data/lib/avalara_sdk/models/A1099/V2/w8_imy_form_request.rb +72 -22
  93. data/lib/avalara_sdk/models/A1099/V2/w8_imy_form_response.rb +191 -15
  94. data/lib/avalara_sdk/models/A1099/V2/w9_form_base_minimal_request.rb +1 -27
  95. data/lib/avalara_sdk/models/A1099/V2/w9_form_base_request.rb +1 -27
  96. data/lib/avalara_sdk/models/A1099/V2/w9_form_base_response.rb +47 -18
  97. data/lib/avalara_sdk/models/A1099/V2/w9_form_minimal_request.rb +1 -27
  98. data/lib/avalara_sdk/models/A1099/V2/w9_form_request.rb +61 -22
  99. data/lib/avalara_sdk/models/A1099/V2/w9_form_response.rb +190 -14
  100. data/lib/avalara_sdk/version.rb +1 -1
  101. data/lib/avalara_sdk.rb +8 -4
  102. data/vendor/bundle/ruby/3.3.0/extensions/x86_64-linux/3.3.0/byebug-11.1.3/gem_make.out +5 -5
  103. data/vendor/bundle/ruby/3.3.0/extensions/x86_64-linux/3.3.0/date-3.4.1/gem_make.out +5 -5
  104. data/vendor/bundle/ruby/3.3.0/extensions/x86_64-linux/3.3.0/debase-0.2.9/gem_make.out +5 -5
  105. data/vendor/bundle/ruby/3.3.0/extensions/x86_64-linux/3.3.0/debug-1.10.0/gem_make.out +5 -5
  106. data/vendor/bundle/ruby/3.3.0/extensions/x86_64-linux/3.3.0/erb-5.0.1/gem_make.out +5 -5
  107. data/vendor/bundle/ruby/3.3.0/extensions/x86_64-linux/3.3.0/io-console-0.8.0/gem_make.out +5 -5
  108. data/vendor/bundle/ruby/3.3.0/extensions/x86_64-linux/3.3.0/json-2.12.2/gem_make.out +5 -5
  109. data/vendor/bundle/ruby/3.3.0/extensions/x86_64-linux/3.3.0/prism-1.4.0/gem_make.out +5 -5
  110. data/vendor/bundle/ruby/3.3.0/extensions/x86_64-linux/3.3.0/psych-5.2.6/gem_make.out +5 -5
  111. data/vendor/bundle/ruby/3.3.0/extensions/x86_64-linux/3.3.0/racc-1.8.1/gem_make.out +5 -5
  112. data/vendor/bundle/ruby/3.3.0/extensions/x86_64-linux/3.3.0/stringio-3.1.7/gem_make.out +5 -5
  113. metadata +10 -2
@@ -10,7 +10,10 @@ require 'date'
10
10
  require 'time'
11
11
 
12
12
  module AvalaraSdk::A1099::V2
13
- class W8BenEFormResponse < W9FormBaseResponse
13
+ class W8BenEFormResponse
14
+ # The form type (always \"W8BenE\" for this model).
15
+ attr_accessor :type
16
+
14
17
  # The name of the individual or entity associated with the form.
15
18
  attr_accessor :name
16
19
 
@@ -62,7 +65,7 @@ module AvalaraSdk::A1099::V2
62
65
  # The country of the mailing address.
63
66
  attr_accessor :mailing_country
64
67
 
65
- # The type of TIN provided.
68
+ # Tax Identification Number (TIN) type.
66
69
  attr_accessor :tin_type
67
70
 
68
71
  # The taxpayer identification number (TIN).
@@ -299,9 +302,71 @@ module AvalaraSdk::A1099::V2
299
302
  # Certifies signer has the capacity to sign for the beneficial owner.
300
303
  attr_accessor :capacity_to_sign_certification
301
304
 
305
+ # The unique identifier for the form.
306
+ attr_accessor :id
307
+
308
+ # The entry status information for the form.
309
+ attr_accessor :entry_status
310
+
311
+ # A reference identifier for the form.
312
+ attr_accessor :reference_id
313
+
314
+ # The ID of the associated company.
315
+ attr_accessor :company_id
316
+
317
+ # The display name associated with the form.
318
+ attr_accessor :display_name
319
+
320
+ # The email address of the individual associated with the form.
321
+ attr_accessor :email
322
+
323
+ # Indicates whether the form is archived.
324
+ attr_accessor :archived
325
+
326
+ # Form ID of previous version.
327
+ attr_accessor :ancestor_id
328
+
329
+ # The signature of the form.
330
+ attr_accessor :signature
331
+
332
+ # The date the form was signed.
333
+ attr_accessor :signed_date
334
+
335
+ # The date when e-delivery was consented.
336
+ attr_accessor :e_delivery_consented_at
337
+
338
+ # The creation date of the form.
339
+ attr_accessor :created_at
340
+
341
+ # The last updated date of the form.
342
+ attr_accessor :updated_at
343
+
344
+ class EnumAttributeValidator
345
+ attr_reader :datatype
346
+ attr_reader :allowable_values
347
+
348
+ def initialize(datatype, allowable_values)
349
+ @allowable_values = allowable_values.map do |value|
350
+ case datatype.to_s
351
+ when /Integer/i
352
+ value.to_i
353
+ when /Float/i
354
+ value.to_f
355
+ else
356
+ value
357
+ end
358
+ end
359
+ end
360
+
361
+ def valid?(value)
362
+ !value || allowable_values.include?(value)
363
+ end
364
+ end
365
+
302
366
  # Attribute mapping from ruby-style variable name to JSON key.
303
367
  def self.attribute_map
304
368
  {
369
+ :'type' => :'type',
305
370
  :'name' => :'name',
306
371
  :'citizenship_country' => :'citizenshipCountry',
307
372
  :'disregarded_entity' => :'disregardedEntity',
@@ -397,18 +462,32 @@ module AvalaraSdk::A1099::V2
397
462
  :'direct_reporting_nffe_sponsoring_entity' => :'directReportingNffeSponsoringEntity',
398
463
  :'substantial_us_owners' => :'substantialUsOwners',
399
464
  :'signer_name' => :'signerName',
400
- :'capacity_to_sign_certification' => :'capacityToSignCertification'
465
+ :'capacity_to_sign_certification' => :'capacityToSignCertification',
466
+ :'id' => :'id',
467
+ :'entry_status' => :'entryStatus',
468
+ :'reference_id' => :'referenceId',
469
+ :'company_id' => :'companyId',
470
+ :'display_name' => :'displayName',
471
+ :'email' => :'email',
472
+ :'archived' => :'archived',
473
+ :'ancestor_id' => :'ancestorId',
474
+ :'signature' => :'signature',
475
+ :'signed_date' => :'signedDate',
476
+ :'e_delivery_consented_at' => :'eDeliveryConsentedAt',
477
+ :'created_at' => :'createdAt',
478
+ :'updated_at' => :'updatedAt'
401
479
  }
402
480
  end
403
481
 
404
- # Returns all the JSON keys this model knows about, including the ones defined in its parent(s)
482
+ # Returns all the JSON keys this model knows about
405
483
  def self.acceptable_attributes
406
- attribute_map.values.concat(superclass.acceptable_attributes)
484
+ attribute_map.values
407
485
  end
408
486
 
409
487
  # Attribute type mapping.
410
488
  def self.openapi_types
411
489
  {
490
+ :'type' => :'String',
412
491
  :'name' => :'String',
413
492
  :'citizenship_country' => :'String',
414
493
  :'disregarded_entity' => :'String',
@@ -504,7 +583,20 @@ module AvalaraSdk::A1099::V2
504
583
  :'direct_reporting_nffe_sponsoring_entity' => :'String',
505
584
  :'substantial_us_owners' => :'Array<SubstantialUsOwnerResponse>',
506
585
  :'signer_name' => :'String',
507
- :'capacity_to_sign_certification' => :'Boolean'
586
+ :'capacity_to_sign_certification' => :'Boolean',
587
+ :'id' => :'String',
588
+ :'entry_status' => :'EntryStatusResponse',
589
+ :'reference_id' => :'String',
590
+ :'company_id' => :'String',
591
+ :'display_name' => :'String',
592
+ :'email' => :'String',
593
+ :'archived' => :'Boolean',
594
+ :'ancestor_id' => :'String',
595
+ :'signature' => :'String',
596
+ :'signed_date' => :'Time',
597
+ :'e_delivery_consented_at' => :'Time',
598
+ :'created_at' => :'Time',
599
+ :'updated_at' => :'Time'
508
600
  }
509
601
  end
510
602
 
@@ -551,6 +643,12 @@ module AvalaraSdk::A1099::V2
551
643
  :'nffe_affiliate_of_publicly_traded_entity_securities_market',
552
644
  :'direct_reporting_nffe_sponsoring_entity',
553
645
  :'signer_name',
646
+ :'reference_id',
647
+ :'email',
648
+ :'ancestor_id',
649
+ :'signature',
650
+ :'signed_date',
651
+ :'e_delivery_consented_at',
554
652
  ])
555
653
  end
556
654
 
@@ -576,8 +674,9 @@ module AvalaraSdk::A1099::V2
576
674
  h[k.to_sym] = v
577
675
  }
578
676
 
579
- # call parent's initialize
580
- super(attributes)
677
+ if attributes.key?(:'type')
678
+ self.type = attributes[:'type']
679
+ end
581
680
 
582
681
  if attributes.key?(:'name')
583
682
  self.name = attributes[:'name']
@@ -964,13 +1063,65 @@ module AvalaraSdk::A1099::V2
964
1063
  if attributes.key?(:'capacity_to_sign_certification')
965
1064
  self.capacity_to_sign_certification = attributes[:'capacity_to_sign_certification']
966
1065
  end
1066
+
1067
+ if attributes.key?(:'id')
1068
+ self.id = attributes[:'id']
1069
+ end
1070
+
1071
+ if attributes.key?(:'entry_status')
1072
+ self.entry_status = attributes[:'entry_status']
1073
+ end
1074
+
1075
+ if attributes.key?(:'reference_id')
1076
+ self.reference_id = attributes[:'reference_id']
1077
+ end
1078
+
1079
+ if attributes.key?(:'company_id')
1080
+ self.company_id = attributes[:'company_id']
1081
+ end
1082
+
1083
+ if attributes.key?(:'display_name')
1084
+ self.display_name = attributes[:'display_name']
1085
+ end
1086
+
1087
+ if attributes.key?(:'email')
1088
+ self.email = attributes[:'email']
1089
+ end
1090
+
1091
+ if attributes.key?(:'archived')
1092
+ self.archived = attributes[:'archived']
1093
+ end
1094
+
1095
+ if attributes.key?(:'ancestor_id')
1096
+ self.ancestor_id = attributes[:'ancestor_id']
1097
+ end
1098
+
1099
+ if attributes.key?(:'signature')
1100
+ self.signature = attributes[:'signature']
1101
+ end
1102
+
1103
+ if attributes.key?(:'signed_date')
1104
+ self.signed_date = attributes[:'signed_date']
1105
+ end
1106
+
1107
+ if attributes.key?(:'e_delivery_consented_at')
1108
+ self.e_delivery_consented_at = attributes[:'e_delivery_consented_at']
1109
+ end
1110
+
1111
+ if attributes.key?(:'created_at')
1112
+ self.created_at = attributes[:'created_at']
1113
+ end
1114
+
1115
+ if attributes.key?(:'updated_at')
1116
+ self.updated_at = attributes[:'updated_at']
1117
+ end
967
1118
  end
968
1119
 
969
1120
  # Show invalid properties with the reasons. Usually used together with valid?
970
1121
  # @return Array for valid properties with the reasons
971
1122
  def list_invalid_properties
972
1123
  warn '[DEPRECATED] the `list_invalid_properties` method is obsolete'
973
- invalid_properties = super
1124
+ invalid_properties = Array.new
974
1125
  invalid_properties
975
1126
  end
976
1127
 
@@ -978,7 +1129,19 @@ module AvalaraSdk::A1099::V2
978
1129
  # @return true if the model is valid
979
1130
  def valid?
980
1131
  warn '[DEPRECATED] the `valid?` method is obsolete'
981
- true && super
1132
+ type_validator = EnumAttributeValidator.new('String', ["W4", "W8Ben", "W8BenE", "W8Imy", "W9"])
1133
+ return false unless type_validator.valid?(@type)
1134
+ true
1135
+ end
1136
+
1137
+ # Custom attribute writer method checking allowed values (enum).
1138
+ # @param [Object] type Object to be assigned
1139
+ def type=(type)
1140
+ validator = EnumAttributeValidator.new('String', ["W4", "W8Ben", "W8BenE", "W8Imy", "W9"])
1141
+ unless validator.valid?(type)
1142
+ fail ArgumentError, "invalid value for \"type\", must be one of #{validator.allowable_values}."
1143
+ end
1144
+ @type = type
982
1145
  end
983
1146
 
984
1147
  # Checks equality by comparing each attribute.
@@ -986,6 +1149,7 @@ module AvalaraSdk::A1099::V2
986
1149
  def ==(o)
987
1150
  return true if self.equal?(o)
988
1151
  self.class == o.class &&
1152
+ type == o.type &&
989
1153
  name == o.name &&
990
1154
  citizenship_country == o.citizenship_country &&
991
1155
  disregarded_entity == o.disregarded_entity &&
@@ -1081,7 +1245,20 @@ module AvalaraSdk::A1099::V2
1081
1245
  direct_reporting_nffe_sponsoring_entity == o.direct_reporting_nffe_sponsoring_entity &&
1082
1246
  substantial_us_owners == o.substantial_us_owners &&
1083
1247
  signer_name == o.signer_name &&
1084
- capacity_to_sign_certification == o.capacity_to_sign_certification && super(o)
1248
+ capacity_to_sign_certification == o.capacity_to_sign_certification &&
1249
+ id == o.id &&
1250
+ entry_status == o.entry_status &&
1251
+ reference_id == o.reference_id &&
1252
+ company_id == o.company_id &&
1253
+ display_name == o.display_name &&
1254
+ email == o.email &&
1255
+ archived == o.archived &&
1256
+ ancestor_id == o.ancestor_id &&
1257
+ signature == o.signature &&
1258
+ signed_date == o.signed_date &&
1259
+ e_delivery_consented_at == o.e_delivery_consented_at &&
1260
+ created_at == o.created_at &&
1261
+ updated_at == o.updated_at
1085
1262
  end
1086
1263
 
1087
1264
  # @see the `==` method
@@ -1093,7 +1270,7 @@ module AvalaraSdk::A1099::V2
1093
1270
  # Calculates hash code according to all attributes.
1094
1271
  # @return [Integer] Hash code
1095
1272
  def hash
1096
- [name, citizenship_country, disregarded_entity, entity_type, making_treaty_claim, fatca_status, residence_address, residence_city, residence_state, residence_zip, residence_country, residence_is_mailing, mailing_address, mailing_city, mailing_state, mailing_zip, mailing_country, tin_type, tin, giin, foreign_tin_not_required, foreign_tin, reference_number, disregarded_entity_fatca_status, disregarded_address, disregarded_city, disregarded_state, disregarded_zip, disregarded_country, disregarded_entity_giin, treaty_country_certification, treaty_country, benefit_limitation_certification, benefit_limitation, qualified_resident_status_certification, treaty_article, withholding_rate, income_type, treaty_reasons, ffi_sponsoring_entity, investment_entity_certification, controlled_foreign_corporation_certification, compliant_nonregistering_local_bank_certification, compliant_ffi_low_value_accounts_certification, sponsored_closely_held_entity_sponsoring_entity, sponsored_closely_held_investment_vehicle_certification, compliant_limited_life_debt_entity_certification, investment_entity_no_financial_accounts_certification, owner_documented_ffi_certification, owner_documented_ffi_reporting_statement_certification, owner_documented_ffi_auditor_letter_certification, owner_documented_ffi_trust_beneficiaries_certification, restricted_distributor_certification, restricted_distributor_agreement_certification, restricted_distributor_preexisting_sales_compliance_certification, nonreporting_iga_ffi_certification, iga_country, iga_model, iga_legal_status_treatment, iga_ffi_trustee_or_sponsor, iga_ffi_trustee_is_foreign, non_commercial_financial_activity_certification, internation_organization_certification, intergovernmental_organization_certification, treaty_qualified_pension_fund_certification, qualified_retirement_fund_certification, narrow_participation_retirement_fund_certification, section401_a_equivalent_pension_plan_certification, investment_entity_for_retirement_funds_certification, exempt_beneficial_owner_sponsored_retirement_fund_certification, exempt_beneficial_owner_owned_investment_entity_certification, territory_financial_institution_certification, excepted_nonfinancial_group_entity_certification, excepted_nonfinancial_start_up_certification, startup_formation_or_resolution_date, excepted_nonfinancial_entity_in_liquidation_or_bankruptcy_certification, nonfinancial_entity_filing_date, section501_c_organization_certification, determination_letter_date, nonprofit_organization_certification, publicly_traded_nffe_certification, publicly_traded_nffe_securities_market, nffe_affiliate_of_publicly_traded_entity_certification, publicly_traded_entity, nffe_affiliate_of_publicly_traded_entity_securities_market, excepted_territory_nffe_certification, active_nffe_certification, passive_nffe_certification, passive_nffe_no_substantial_us_owners_certification, passive_nffe_substantial_us_owners_provided_certification, excepted_inter_affiliate_ffi_certification, sponsored_direct_reporting_nffe_certification, direct_reporting_nffe_sponsoring_entity, substantial_us_owners, signer_name, capacity_to_sign_certification].hash
1273
+ [type, name, citizenship_country, disregarded_entity, entity_type, making_treaty_claim, fatca_status, residence_address, residence_city, residence_state, residence_zip, residence_country, residence_is_mailing, mailing_address, mailing_city, mailing_state, mailing_zip, mailing_country, tin_type, tin, giin, foreign_tin_not_required, foreign_tin, reference_number, disregarded_entity_fatca_status, disregarded_address, disregarded_city, disregarded_state, disregarded_zip, disregarded_country, disregarded_entity_giin, treaty_country_certification, treaty_country, benefit_limitation_certification, benefit_limitation, qualified_resident_status_certification, treaty_article, withholding_rate, income_type, treaty_reasons, ffi_sponsoring_entity, investment_entity_certification, controlled_foreign_corporation_certification, compliant_nonregistering_local_bank_certification, compliant_ffi_low_value_accounts_certification, sponsored_closely_held_entity_sponsoring_entity, sponsored_closely_held_investment_vehicle_certification, compliant_limited_life_debt_entity_certification, investment_entity_no_financial_accounts_certification, owner_documented_ffi_certification, owner_documented_ffi_reporting_statement_certification, owner_documented_ffi_auditor_letter_certification, owner_documented_ffi_trust_beneficiaries_certification, restricted_distributor_certification, restricted_distributor_agreement_certification, restricted_distributor_preexisting_sales_compliance_certification, nonreporting_iga_ffi_certification, iga_country, iga_model, iga_legal_status_treatment, iga_ffi_trustee_or_sponsor, iga_ffi_trustee_is_foreign, non_commercial_financial_activity_certification, internation_organization_certification, intergovernmental_organization_certification, treaty_qualified_pension_fund_certification, qualified_retirement_fund_certification, narrow_participation_retirement_fund_certification, section401_a_equivalent_pension_plan_certification, investment_entity_for_retirement_funds_certification, exempt_beneficial_owner_sponsored_retirement_fund_certification, exempt_beneficial_owner_owned_investment_entity_certification, territory_financial_institution_certification, excepted_nonfinancial_group_entity_certification, excepted_nonfinancial_start_up_certification, startup_formation_or_resolution_date, excepted_nonfinancial_entity_in_liquidation_or_bankruptcy_certification, nonfinancial_entity_filing_date, section501_c_organization_certification, determination_letter_date, nonprofit_organization_certification, publicly_traded_nffe_certification, publicly_traded_nffe_securities_market, nffe_affiliate_of_publicly_traded_entity_certification, publicly_traded_entity, nffe_affiliate_of_publicly_traded_entity_securities_market, excepted_territory_nffe_certification, active_nffe_certification, passive_nffe_certification, passive_nffe_no_substantial_us_owners_certification, passive_nffe_substantial_us_owners_provided_certification, excepted_inter_affiliate_ffi_certification, sponsored_direct_reporting_nffe_certification, direct_reporting_nffe_sponsoring_entity, substantial_us_owners, signer_name, capacity_to_sign_certification, id, entry_status, reference_id, company_id, display_name, email, archived, ancestor_id, signature, signed_date, e_delivery_consented_at, created_at, updated_at].hash
1097
1274
  end
1098
1275
 
1099
1276
  # Builds the object from hash
@@ -1101,7 +1278,6 @@ module AvalaraSdk::A1099::V2
1101
1278
  # @return [Object] Returns the model itself
1102
1279
  def self.build_from_hash(attributes)
1103
1280
  return nil unless attributes.is_a?(Hash)
1104
- super(attributes)
1105
1281
  attributes = attributes.transform_keys(&:to_sym)
1106
1282
  transformed_hash = {}
1107
1283
  openapi_types.each_pair do |key, type|
@@ -1178,7 +1354,7 @@ module AvalaraSdk::A1099::V2
1178
1354
  # Returns the object in the form of hash
1179
1355
  # @return [Hash] Returns the object in the form of hash
1180
1356
  def to_hash
1181
- hash = super
1357
+ hash = {}
1182
1358
  self.class.attribute_map.each_pair do |attr, param|
1183
1359
  value = self.send(attr)
1184
1360
  if value.nil?
@@ -23,7 +23,7 @@ module AvalaraSdk::A1099::V2
23
23
  # A reference number for the form.
24
24
  attr_accessor :reference_number
25
25
 
26
- # The ID of the associated company.
26
+ # The ID of the associated company. Required when creating a form.
27
27
  attr_accessor :company_id
28
28
 
29
29
  # A reference identifier for the form.
@@ -132,8 +132,6 @@ module AvalaraSdk::A1099::V2
132
132
 
133
133
  if attributes.key?(:'company_id')
134
134
  self.company_id = attributes[:'company_id']
135
- else
136
- self.company_id = nil
137
135
  end
138
136
 
139
137
  if attributes.key?(:'reference_id')
@@ -162,14 +160,6 @@ module AvalaraSdk::A1099::V2
162
160
  invalid_properties.push('invalid value for "name", the character length must be great than or equal to 1.')
163
161
  end
164
162
 
165
- if @company_id.nil?
166
- invalid_properties.push('invalid value for "company_id", company_id cannot be nil.')
167
- end
168
-
169
- if @company_id.to_s.length < 1
170
- invalid_properties.push('invalid value for "company_id", the character length must be great than or equal to 1.')
171
- end
172
-
173
163
  invalid_properties
174
164
  end
175
165
 
@@ -183,8 +173,6 @@ module AvalaraSdk::A1099::V2
183
173
  return false if @email.to_s.length < 1
184
174
  return false if @name.nil?
185
175
  return false if @name.to_s.length < 1
186
- return false if @company_id.nil?
187
- return false if @company_id.to_s.length < 1
188
176
  true
189
177
  end
190
178
 
@@ -226,20 +214,6 @@ module AvalaraSdk::A1099::V2
226
214
  @name = name
227
215
  end
228
216
 
229
- # Custom attribute writer method with validation
230
- # @param [Object] company_id Value to be assigned
231
- def company_id=(company_id)
232
- if company_id.nil?
233
- fail ArgumentError, 'company_id cannot be nil'
234
- end
235
-
236
- if company_id.to_s.length < 1
237
- fail ArgumentError, 'invalid value for "company_id", the character length must be great than or equal to 1.'
238
- end
239
-
240
- @company_id = company_id
241
- end
242
-
243
217
  # Checks equality by comparing each attribute.
244
218
  # @param [Object] Object to be compared
245
219
  def ==(o)
@@ -92,7 +92,7 @@ module AvalaraSdk::A1099::V2
92
92
  # The signature of the form.
93
93
  attr_accessor :signature
94
94
 
95
- # The ID of the associated company.
95
+ # The ID of the associated company. Required when creating a form.
96
96
  attr_accessor :company_id
97
97
 
98
98
  # A reference identifier for the form.
@@ -253,10 +253,14 @@ module AvalaraSdk::A1099::V2
253
253
 
254
254
  if attributes.key?(:'name')
255
255
  self.name = attributes[:'name']
256
+ else
257
+ self.name = nil
256
258
  end
257
259
 
258
260
  if attributes.key?(:'citizenship_country')
259
261
  self.citizenship_country = attributes[:'citizenship_country']
262
+ else
263
+ self.citizenship_country = nil
260
264
  end
261
265
 
262
266
  if attributes.key?(:'residence_address')
@@ -277,6 +281,8 @@ module AvalaraSdk::A1099::V2
277
281
 
278
282
  if attributes.key?(:'residence_country')
279
283
  self.residence_country = attributes[:'residence_country']
284
+ else
285
+ self.residence_country = nil
280
286
  end
281
287
 
282
288
  if attributes.key?(:'residence_is_mailing')
@@ -301,6 +307,8 @@ module AvalaraSdk::A1099::V2
301
307
 
302
308
  if attributes.key?(:'mailing_country')
303
309
  self.mailing_country = attributes[:'mailing_country']
310
+ else
311
+ self.mailing_country = nil
304
312
  end
305
313
 
306
314
  if attributes.key?(:'tin')
@@ -357,8 +365,6 @@ module AvalaraSdk::A1099::V2
357
365
 
358
366
  if attributes.key?(:'company_id')
359
367
  self.company_id = attributes[:'company_id']
360
- else
361
- self.company_id = nil
362
368
  end
363
369
 
364
370
  if attributes.key?(:'reference_id')
@@ -375,12 +381,16 @@ module AvalaraSdk::A1099::V2
375
381
  def list_invalid_properties
376
382
  warn '[DEPRECATED] the `list_invalid_properties` method is obsolete'
377
383
  invalid_properties = Array.new
378
- if @company_id.nil?
379
- invalid_properties.push('invalid value for "company_id", company_id cannot be nil.')
384
+ if @name.nil?
385
+ invalid_properties.push('invalid value for "name", name cannot be nil.')
386
+ end
387
+
388
+ if @citizenship_country.nil?
389
+ invalid_properties.push('invalid value for "citizenship_country", citizenship_country cannot be nil.')
380
390
  end
381
391
 
382
- if @company_id.to_s.length < 1
383
- invalid_properties.push('invalid value for "company_id", the character length must be great than or equal to 1.')
392
+ if @residence_country.nil?
393
+ invalid_properties.push('invalid value for "residence_country", residence_country cannot be nil.')
384
394
  end
385
395
 
386
396
  invalid_properties
@@ -392,8 +402,9 @@ module AvalaraSdk::A1099::V2
392
402
  warn '[DEPRECATED] the `valid?` method is obsolete'
393
403
  type_validator = EnumAttributeValidator.new('String', ["W4", "W8Ben", "W8BenE", "W8Imy", "W9"])
394
404
  return false unless type_validator.valid?(@type)
395
- return false if @company_id.nil?
396
- return false if @company_id.to_s.length < 1
405
+ return false if @name.nil?
406
+ return false if @citizenship_country.nil?
407
+ return false if @residence_country.nil?
397
408
  true
398
409
  end
399
410
 
@@ -407,20 +418,6 @@ module AvalaraSdk::A1099::V2
407
418
  @type = type
408
419
  end
409
420
 
410
- # Custom attribute writer method with validation
411
- # @param [Object] company_id Value to be assigned
412
- def company_id=(company_id)
413
- if company_id.nil?
414
- fail ArgumentError, 'company_id cannot be nil'
415
- end
416
-
417
- if company_id.to_s.length < 1
418
- fail ArgumentError, 'invalid value for "company_id", the character length must be great than or equal to 1.'
419
- end
420
-
421
- @company_id = company_id
422
- end
423
-
424
421
  # Checks equality by comparing each attribute.
425
422
  # @param [Object] Object to be compared
426
423
  def ==(o)