change_health 3.2.0 → 3.3.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: cb52acfb64f03d05c292cb41915ab6d686fae764d965e6df7df5533ad4c0e2e1
4
- data.tar.gz: a3414ee7fe0a45c0aaf2432b83c6166ae2a07ba31a9105afee422c2189a3552c
3
+ metadata.gz: 771e550998ba619e8f20ad0482df45d2414f106588d674e8764fbe9af1fbd4d7
4
+ data.tar.gz: 3c35d671b8cecbc38e9d5984756c5af8f0e4c18ed4e86ed2877f30d670ef1146
5
5
  SHA512:
6
- metadata.gz: 4c82b12a74d6980409e7adcb968e4defee05679be768f61e294cacbdf03bdc3c2a4f9fa579d0b6b1086c135ef70ec16ebea3e3a5d77815bf5b8d5f39e755b315
7
- data.tar.gz: 3a092daca4789cd9972ebfb37e0337d17a43abdb8f4d05672935190a606f0c75a1450aa4f8934aeba0a5d0b2f054bb58824a6215b945aed2ab0a5a831d001db8
6
+ metadata.gz: 3ece66009484991d0be79850df3b8327449099b5829c26100ddd0304ec6759be8a12e4bc0e348c044f5d2247cc8f4e923aa4a26dea5f59a008786d5d42f8fb6f
7
+ data.tar.gz: d598da2e9b5051bfee077aa7da86ed663befc801d68efb6a29a476a5e6655fdeb886f62be843a65316a6e03cd8ef83a2c845d8bad05a70d7cc42fb2d78727369
data/CHANGELOG.md CHANGED
@@ -4,6 +4,12 @@ All notable changes to this project will be documented in this file.
4
4
  The format is based on [Keep a Changelog](http://keepachangelog.com/en/1.0.0/)
5
5
  and this project adheres to [Semantic Versioning](http://semver.org/spec/v2.0.0.html).
6
6
 
7
+ # [3.3.0] - 2022-02-11
8
+ ### Added
9
+ * Report277Claim - 'message' from informationClaimStatuses, clearinghouse_trace_number, patient_account_number, referenced_transaction_trace_number, trading_partner_claim_number
10
+ * Report835Claim - patient_control_number
11
+ * ReportClaim - report_name, patient_member_id
12
+
7
13
  ## [3.2.0] - 2021-12-23
8
14
  ### Added
9
15
  * Report835HealthCareCheckRemarkCode
@@ -230,6 +236,7 @@ Added the ability to hit professional claim submission API. For more details, se
230
236
  - Authentication
231
237
  - Configuration
232
238
 
239
+ [3.3.0]: https://github.com/WeInfuse/change_health/compare/v3.2.0...v3.3.0
233
240
  [3.2.0]: https://github.com/WeInfuse/change_health/compare/v3.1.0...v3.2.0
234
241
  [3.1.0]: https://github.com/WeInfuse/change_health/compare/v3.0.0...v3.1.0
235
242
  [3.0.0]: https://github.com/WeInfuse/change_health/compare/v2.3.0...v3.0.0
data/README.md CHANGED
@@ -255,6 +255,9 @@ claim_277 = report_277_data.claims.first
255
255
  claim_277.payer_name
256
256
  # "PREMERA"
257
257
 
258
+ claim_277.report_name
259
+ # "X3000000.AB"
260
+
258
261
  claim_277.patient_first_name
259
262
  # "JOHNONE"
260
263
 
@@ -290,6 +293,9 @@ claim_835.payer_name
290
293
  claim_835.patient_first_name
291
294
  # "JANE"
292
295
 
296
+ claim_835.patient_member_id
297
+ # "7SL5RA7XR19"
298
+
293
299
  claim_835.report_creation_date
294
300
  # Wed, 22 Apr 2020
295
301
 
@@ -2,8 +2,12 @@ module ChangeHealth
2
2
  module Response
3
3
  module Claim
4
4
  class Report277Claim < ReportClaim
5
+ property :clearinghouse_trace_number, required: false
5
6
  property :info_claim_statuses, required: false
7
+ property :patient_account_number, required: false
6
8
  property :procedure_codes, required: false
9
+ property :referenced_transaction_trace_number, required: false
10
+ property :trading_partner_claim_number, required: false
7
11
 
8
12
  def add_info_claim_status(info_claim_status)
9
13
  self[:info_claim_statuses] ||= []
@@ -30,6 +30,7 @@ module ChangeHealth
30
30
  claim_status_detail['patientClaimStatusDetails']&.each do |patient_claim_status_detail|
31
31
  patient_first_name = patient_claim_status_detail.dig('subscriber', 'firstName')
32
32
  patient_last_name = patient_claim_status_detail.dig('subscriber', 'lastName')
33
+ patient_member_id = patient_claim_status_detail.dig('subscriber', 'memberId')
33
34
  patient_claim_status_detail['claims']&.each do |claim|
34
35
  procedure_codes = []
35
36
  claim['serviceLines']&.each do |service_line|
@@ -38,11 +39,17 @@ module ChangeHealth
38
39
  claim_status = claim['claimStatus']
39
40
  next if claim_status.nil?
40
41
 
42
+ clearinghouse_trace_number = claim_status['clearinghouseTraceNumber']
43
+ patient_account_number = claim_status['patientAccountNumber']
44
+ referenced_transaction_trace_number = claim_status['referencedTransactionTraceNumber']
45
+ trading_partner_claim_number = claim_status['tradingPartnerClaimNumber']
46
+
41
47
  service_date_begin = ChangeHealth::Models::PARSE_DATE.call(claim_status['claimServiceBeginDate'] || claim_status['claimServiceDate'])
42
48
  service_date_end = ChangeHealth::Models::PARSE_DATE.call(claim_status['claimServiceEndDate'] || claim_status['claimServiceDate'])
43
49
 
44
50
  info_claim_statuses = []
45
51
  claim_status['informationClaimStatuses']&.each do |info_claim_status|
52
+ message = info_claim_status['message']
46
53
  status_information_effective_date = ChangeHealth::Models::PARSE_DATE.call(info_claim_status['statusInformationEffectiveDate'])
47
54
  total_charge_amount = info_claim_status['totalClaimChargeAmount']
48
55
 
@@ -52,22 +59,29 @@ module ChangeHealth
52
59
  end
53
60
 
54
61
  info_claim_statuses << Report277InfoClaimStatus.new(
62
+ message: message,
55
63
  status_category_codes: status_category_codes,
56
64
  total_charge_amount: total_charge_amount,
57
65
  status_information_effective_date: status_information_effective_date
58
66
  )
59
67
  end
60
68
  report_claims << Report277Claim.new(
69
+ clearinghouse_trace_number: clearinghouse_trace_number,
61
70
  info_claim_statuses: info_claim_statuses,
71
+ patient_account_number: patient_account_number,
62
72
  patient_first_name: patient_first_name,
63
73
  patient_last_name: patient_last_name,
74
+ patient_member_id: patient_member_id,
64
75
  payer_identification: payer_identification,
65
76
  payer_name: payer_name,
66
77
  procedure_codes: procedure_codes,
78
+ referenced_transaction_trace_number: referenced_transaction_trace_number,
67
79
  report_creation_date: report_creation_date,
80
+ report_name: report_name,
68
81
  service_date_begin: service_date_begin,
69
82
  service_date_end: service_date_end,
70
- service_provider_npi: service_provider_npi
83
+ service_provider_npi: service_provider_npi,
84
+ trading_partner_claim_number: trading_partner_claim_number
71
85
  )
72
86
  end
73
87
  end
@@ -2,6 +2,7 @@ module ChangeHealth
2
2
  module Response
3
3
  module Claim
4
4
  class Report277InfoClaimStatus < Hashie::Trash
5
+ property :message, required: false
5
6
  property :status_category_codes, required: false
6
7
  property :total_charge_amount, required: false
7
8
  property :status_information_effective_date, required: false
@@ -3,6 +3,7 @@ module ChangeHealth
3
3
  module Claim
4
4
  class Report835Claim < ReportClaim
5
5
  property :claim_payment_remark_codes, required: false
6
+ property :patient_control_number, required: false
6
7
  property :payer_claim_control_number, required: false
7
8
  property :payment_method_code, required: false
8
9
  property :service_lines, required: false
@@ -37,11 +37,13 @@ module ChangeHealth
37
37
 
38
38
  transaction['detailInfo']&.each do |detail_info|
39
39
  detail_info['paymentInfo']&.each do |payment_info|
40
+ patient_control_number = payment_info.dig('claimPaymentInfo', 'patientControlNumber')
40
41
  patient_first_name = payment_info.dig('patientName', 'firstName')
41
42
  patient_last_name = payment_info.dig('patientName', 'lastName')
43
+ patient_member_id = payment_info.dig('patientName', 'memberId')
44
+ payer_claim_control_number = payment_info.dig('claimPaymentInfo', 'payerClaimControlNumber')
42
45
  service_provider_npi = payment_info.dig('renderingProvider', 'npi')
43
46
  total_charge_amount = payment_info.dig('claimPaymentInfo', 'totalClaimChargeAmount')
44
- payer_claim_control_number = payment_info.dig('claimPaymentInfo', 'payerClaimControlNumber')
45
47
 
46
48
  claim_payment_remark_codes = []
47
49
  claim_payment_remark_codes_index = 1
@@ -108,13 +110,16 @@ module ChangeHealth
108
110
 
109
111
  report_claims << Report835Claim.new(
110
112
  claim_payment_remark_codes: claim_payment_remark_codes,
113
+ patient_control_number: patient_control_number,
111
114
  patient_first_name: patient_first_name,
112
115
  patient_last_name: patient_last_name,
116
+ patient_member_id: patient_member_id,
113
117
  payer_claim_control_number: payer_claim_control_number,
114
118
  payer_identification: payer_identification,
115
119
  payer_name: payer_name,
116
120
  payment_method_code: payment_method_code,
117
121
  report_creation_date: report_creation_date,
122
+ report_name: report_name,
118
123
  service_date_begin: service_date_begin,
119
124
  service_date_end: service_date_end,
120
125
  service_lines: service_lines,
@@ -4,9 +4,11 @@ module ChangeHealth
4
4
  class ReportClaim < Hashie::Trash
5
5
  property :patient_first_name, required: false
6
6
  property :patient_last_name, required: false
7
+ property :patient_member_id, required: false
7
8
  property :payer_identification, required: false
8
9
  property :payer_name, required: false
9
10
  property :report_creation_date, required: false
11
+ property :report_name, required: false
10
12
  property :service_date_begin, required: false
11
13
  property :service_date_end, required: false
12
14
  property :service_provider_npi, required: false
@@ -1,3 +1,3 @@
1
1
  module ChangeHealth
2
- VERSION = '3.2.0'.freeze
2
+ VERSION = '3.3.0'.freeze
3
3
  end
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: 3.2.0
4
+ version: 3.3.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: 2021-12-28 00:00:00.000000000 Z
11
+ date: 2022-02-11 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: httparty