change_health 4.2.5 → 4.5.0

Sign up to get free protection for your applications and to get access to all the features.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: 06c3344f947cb5ccda66985c169972e67a794633620d028c440d9076d3cf944f
4
- data.tar.gz: 426f3b89ff3dbae1b807bcdab97ce1208f916d20dd12699a5df62fc9621e683a
3
+ metadata.gz: 68e15b858191bfabed3f45ac2fe80d4f2137c4bb58789bea3b80167a9ec385ce
4
+ data.tar.gz: d25c361f6f0f162adbfcf09463ed3434bbb01cb91079fe89a26fab74f53d4994
5
5
  SHA512:
6
- metadata.gz: ab258da80630ce40c87acc078cc55550b652574675a7441f213cbab3a43ab9de42ae3bda9f4e2b7527e0fd82206a9f7e0b2dd384f6a41e8197ef6ac0c66735b9
7
- data.tar.gz: 42a7eec473855c81bb0056817fa5b23603b7c058547f567b285cd01f2debfb515076608fc884948a946740376d411fe5e100a73ca1fc15c3ee8978ada8ae4aa3
6
+ metadata.gz: 80d929b4121aa32e2139e7c5838dffcf035fe4b314bd11a818d50a195b46621c8859945765cd23ec134c7839ae282dbfb41ff9d918f1b9b4f2680dec33b8d3c6
7
+ data.tar.gz: 2ac7d860aab488a88217bf7511de6c39ddd0a1b046f9c8316fd55de81e14e22a316a0aecb5812d89e0f9989e609cfc091683d330c6284a8257b0e6ce0cf0d870
data/CHANGELOG.md CHANGED
@@ -5,6 +5,24 @@ All notable changes to this project will be documented in this file.
5
5
  The format is based on [Keep a Changelog](http://keepachangelog.com/en/1.0.0/)
6
6
  and this project adheres to [Semantic Versioning](http://semver.org/spec/v2.0.0.html).
7
7
 
8
+ # [4.5.0] - 2022-08-29
9
+
10
+ ### Added
11
+
12
+ * Report835Data - pull out provider adjustments
13
+
14
+ # [4.4.0] - 2022-08-29
15
+
16
+ ### Added
17
+
18
+ * Claim Submission - add payToAddress field
19
+
20
+ # [4.3.0] - 2022-08-08
21
+
22
+ ### Added
23
+
24
+ * Report835Data - add another way to get service_date_begin & service_date_end
25
+
8
26
  # [4.2.5] - 2022-07-29
9
27
 
10
28
  ### Fixed
@@ -406,6 +424,9 @@ Added the ability to hit professional claim submission API. For more details, se
406
424
  * Authentication
407
425
  * Configuration
408
426
 
427
+ [4.5.0]: https://github.com/WeInfuse/change_health/compare/v4.4.0...v4.5.0
428
+ [4.4.0]: https://github.com/WeInfuse/change_health/compare/v4.3.0...v4.4.0
429
+ [4.3.0]: https://github.com/WeInfuse/change_health/compare/v4.2.5...v4.3.0
409
430
  [4.2.5]: https://github.com/WeInfuse/change_health/compare/v4.2.4...v4.2.5
410
431
  [4.2.4]: https://github.com/WeInfuse/change_health/compare/v4.2.3...v4.2.4
411
432
  [4.2.3]: https://github.com/WeInfuse/change_health/compare/v4.2.2...v4.2.3
data/README.md CHANGED
@@ -205,6 +205,7 @@ claim_submission = ChangeHealth::Request::Claim::Submission.new(
205
205
  claim_information: claim_information,
206
206
  dependent: dependent,
207
207
  headers: professional_headers,
208
+ pay_to_address: address,
208
209
  providers: [provider],
209
210
  receiver: receiver,
210
211
  submitter: claim_submitter,
@@ -10,6 +10,7 @@ module ChangeHealth
10
10
  property :claimInformation, from: :claim_information, required: false
11
11
  property :controlNumber, from: :control_number, required: true, default: ChangeHealth::Models::CONTROL_NUMBER
12
12
  property :dependent, required: false
13
+ property :payToAddress, from: :pay_to_address, required: false
13
14
  property :providers, required: false
14
15
  property :receiver, required: false
15
16
  property :submitter, required: false
@@ -35,7 +35,22 @@ module ChangeHealth
35
35
  )
36
36
  payer_identifier = transaction.dig('financialInformation', 'payerIdentifier')
37
37
  payment_method_code = transaction.dig('financialInformation', 'paymentMethodCode')
38
- report_creation_date = ChangeHealth::Models::PARSE_DATE.call(transaction.dig('productionDate'))
38
+ provider_adjustments = transaction['providerAdjustments']&.map do |provider_adjustment|
39
+ adjustments = provider_adjustment['adjustments']&.map do |adjustment|
40
+ {
41
+ amount: adjustment['providerAdjustmentAmount'],
42
+ identifier: adjustment['providerAdjustmentIdentifier'],
43
+ reason_code: adjustment['adjustmentReasonCode']
44
+ }
45
+ end
46
+ Report835ProviderAdjustment.new(
47
+ adjustments: adjustments,
48
+ fiscal_period_date: ChangeHealth::Models::PARSE_DATE.call(provider_adjustment['fiscalPeriodDate']),
49
+ provider_identifier: provider_adjustment['providerIdentifier']
50
+ )
51
+ end
52
+
53
+ report_creation_date = ChangeHealth::Models::PARSE_DATE.call(transaction['productionDate'])
39
54
  total_actual_provider_payment_amount =
40
55
  transaction.dig('financialInformation', 'totalActualProviderPaymentAmount')
41
56
  claims = transaction['detailInfo']&.flat_map do |detail_info|
@@ -117,6 +132,11 @@ module ChangeHealth
117
132
  )
118
133
  end
119
134
 
135
+ if service_date_begin.nil? && service_date_end.nil?
136
+ service_date_begin = ChangeHealth::Models::PARSE_DATE.call(payment_info['claimStatementPeriodStart'])
137
+ service_date_end = ChangeHealth::Models::PARSE_DATE.call(payment_info['claimStatementPeriodEnd'])
138
+ end
139
+
120
140
  Report835Claim.new(
121
141
  claim_payment_remark_codes: claim_payment_remark_codes,
122
142
  patient_control_number: patient_control_number,
@@ -143,6 +163,7 @@ module ChangeHealth
143
163
  payer_identifier: payer_identifier,
144
164
  payer_name: payer_name,
145
165
  payment_method_code: payment_method_code,
166
+ provider_adjustments: provider_adjustments,
146
167
  report_creation_date: report_creation_date,
147
168
  report_name: report_name,
148
169
  total_actual_provider_payment_amount: total_actual_provider_payment_amount
@@ -8,6 +8,7 @@ module ChangeHealth
8
8
  property :payer_identifier, required: false
9
9
  property :payer_name, required: false
10
10
  property :payment_method_code, required: false
11
+ property :provider_adjustments, required: false
11
12
  property :report_creation_date, required: false
12
13
  property :report_name, required: false
13
14
  property :total_actual_provider_payment_amount, required: false
@@ -0,0 +1,16 @@
1
+ module ChangeHealth
2
+ module Response
3
+ module Claim
4
+ class Report835ProviderAdjustment < Hashie::Trash
5
+ property :adjustments
6
+ property :fiscal_period_date, required: false
7
+ property :provider_identifier, required: false
8
+
9
+ def add_adjustment(adjustment)
10
+ self[:adjustments] ||= []
11
+ self[:adjustments] << adjustment
12
+ end
13
+ end
14
+ end
15
+ end
16
+ end
@@ -1,3 +1,3 @@
1
1
  module ChangeHealth
2
- VERSION = '4.2.5'.freeze
2
+ VERSION = '4.5.0'.freeze
3
3
  end
data/lib/change_health.rb CHANGED
@@ -35,6 +35,7 @@ require 'change_health/response/claim/report/report_277_info_claim_status'
35
35
  require 'change_health/response/claim/report/report_835_claim'
36
36
  require 'change_health/response/claim/report/report_835_health_care_check_remark_code'
37
37
  require 'change_health/response/claim/report/report_835_payment'
38
+ require 'change_health/response/claim/report/report_835_provider_adjustment'
38
39
  require 'change_health/response/claim/report/report_835_service_adjustment'
39
40
  require 'change_health/response/claim/report/report_835_service_line'
40
41
  require 'change_health/response/eligibility/eligibility_benefit'
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: change_health
3
3
  version: !ruby/object:Gem::Version
4
- version: 4.2.5
4
+ version: 4.5.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - Mike Crockett
8
8
  autorequire:
9
9
  bindir: exe
10
10
  cert_chain: []
11
- date: 2022-07-30 00:00:00.000000000 Z
11
+ date: 2022-08-29 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: httparty
@@ -171,6 +171,7 @@ files:
171
171
  - lib/change_health/response/claim/report/report_835_data.rb
172
172
  - lib/change_health/response/claim/report/report_835_health_care_check_remark_code.rb
173
173
  - lib/change_health/response/claim/report/report_835_payment.rb
174
+ - lib/change_health/response/claim/report/report_835_provider_adjustment.rb
174
175
  - lib/change_health/response/claim/report/report_835_service_adjustment.rb
175
176
  - lib/change_health/response/claim/report/report_835_service_line.rb
176
177
  - lib/change_health/response/claim/report/report_claim.rb