candidhealth 1.14.4 → 1.15.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.
- checksums.yaml +4 -4
- data/lib/candid/client.rb +6 -1
- data/lib/candid/commons/types/claim_adjustment_group_codes.rb +22 -0
- data/lib/candid/commons/types/procedure_modifier.rb +1 -0
- data/lib/candid/insurance_adjudications/client.rb +17 -0
- data/lib/candid/insurance_adjudications/v_1/client.rb +37 -0
- data/lib/candid/insurance_adjudications/v_1/types/claim_adjudication.rb +23 -0
- data/lib/candid/insurance_adjudications/v_1/types/insurance_adjudication.rb +21 -0
- data/lib/candid/insurance_adjudications/v_1/types/service_line_adjudication.rb +27 -0
- data/lib/candid/patient_payments/v_4/types/card_payment_method.rb +11 -0
- data/lib/candid/patient_payments/v_4/types/cash_payment_method.rb +11 -0
- data/lib/candid/patient_payments/v_4/types/check_payment_method.rb +13 -0
- data/lib/candid/patient_payments/v_4/types/patient_payment.rb +3 -0
- data/lib/candid/patient_payments/v_4/types/payment_method.rb +19 -0
- data/lib/candid/patient_payments/v_4/types/payment_method_detail.rb +18 -0
- data/lib/candid/pre_encounter/eligibility_checks/v_1/types/eligibility_request.rb +2 -0
- data/lib/candid/service_lines/v_2/types/service_line.rb +1 -0
- data/lib/candid/service_lines/v_2/types/service_line_create_base_base.rb +1 -0
- data/lib/candid/service_lines/v_2/types/service_line_create_optional.rb +1 -0
- data/lib/candid/service_lines/v_2/types/service_line_create_standalone.rb +1 -0
- data/lib/candid/service_lines/v_2/types/service_line_update_base.rb +1 -0
- data/lib/candid/service_lines/v_2/types/universal_service_line_create_standalone.rb +1 -0
- data/lib/candid/version.rb +1 -1
- data/lib/candid/x_12/v_1/types/carc.rb +418 -0
- data/lib/candid/x_12/v_1/types/claim_adjustment_reason_code.rb +15 -0
- data/lib/candid/x_12/v_1/types/rarc.rb +1201 -0
- data/lib/candid/x_12/v_1/types/remittance_advice_remark_code.rb +13 -0
- data/lib/candid.rb +15 -0
- data/reference.md +55 -0
- metadata +16 -1
checksums.yaml
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
---
|
|
2
2
|
SHA256:
|
|
3
|
-
metadata.gz:
|
|
4
|
-
data.tar.gz:
|
|
3
|
+
metadata.gz: f97511828261e1d92b7ebd79bbac031b5f3748608ed9f7195a0fbdc2a50331b7
|
|
4
|
+
data.tar.gz: f946dc477b922bee9d9d1f7e0081a8df6ad3397b5ae18b35d643c6df86f327d0
|
|
5
5
|
SHA512:
|
|
6
|
-
metadata.gz:
|
|
7
|
-
data.tar.gz:
|
|
6
|
+
metadata.gz: ac693074053535d604c90472213b42f24b5ef647563b5b22b3a83620cae6efb87a30884ea00b54368522741de8284a376b3789a4126cfd52208dd91afa7f199b
|
|
7
|
+
data.tar.gz: a331f4d044e638060d5fc375d911efa0998318e3a2ce925247a658c84ad377101cf034c97985e9a1a6e6b83755b95bb4b8ce539173c707d3cefa88d376404f60
|
data/lib/candid/client.rb
CHANGED
|
@@ -7,7 +7,7 @@ module Candid
|
|
|
7
7
|
@raw_client = Candid::Internal::Http::RawClient.new(
|
|
8
8
|
base_url: base_url,
|
|
9
9
|
headers: {
|
|
10
|
-
"User-Agent": "candidhealth/1.
|
|
10
|
+
"User-Agent": "candidhealth/1.15.0",
|
|
11
11
|
"X-Fern-Language": "Ruby"
|
|
12
12
|
}
|
|
13
13
|
)
|
|
@@ -108,6 +108,11 @@ module Candid
|
|
|
108
108
|
@import_invoice ||= Candid::ImportInvoice::Client.new(client: @raw_client)
|
|
109
109
|
end
|
|
110
110
|
|
|
111
|
+
# @return [Candid::InsuranceAdjudications::Client]
|
|
112
|
+
def insurance_adjudications
|
|
113
|
+
@insurance_adjudications ||= Candid::InsuranceAdjudications::Client.new(client: @raw_client)
|
|
114
|
+
end
|
|
115
|
+
|
|
111
116
|
# @return [Candid::InsurancePayments::Client]
|
|
112
117
|
def insurance_payments
|
|
113
118
|
@insurance_payments ||= Candid::InsurancePayments::Client.new(client: @raw_client)
|
|
@@ -0,0 +1,22 @@
|
|
|
1
|
+
# frozen_string_literal: true
|
|
2
|
+
|
|
3
|
+
module Candid
|
|
4
|
+
module Commons
|
|
5
|
+
module Types
|
|
6
|
+
module ClaimAdjustmentGroupCodes
|
|
7
|
+
extend Candid::Internal::Types::Enum
|
|
8
|
+
|
|
9
|
+
CO = "CO"
|
|
10
|
+
CR = "CR"
|
|
11
|
+
DE = "DE"
|
|
12
|
+
MA = "MA"
|
|
13
|
+
OA = "OA"
|
|
14
|
+
PI = "PI"
|
|
15
|
+
PR = "PR"
|
|
16
|
+
RR = "RR"
|
|
17
|
+
NC = "NC"
|
|
18
|
+
UNKNOWN = "UNKNOWN"
|
|
19
|
+
end
|
|
20
|
+
end
|
|
21
|
+
end
|
|
22
|
+
end
|
|
@@ -0,0 +1,17 @@
|
|
|
1
|
+
# frozen_string_literal: true
|
|
2
|
+
|
|
3
|
+
module Candid
|
|
4
|
+
module InsuranceAdjudications
|
|
5
|
+
class Client
|
|
6
|
+
# @return [Candid::InsuranceAdjudications::Client]
|
|
7
|
+
def initialize(client:)
|
|
8
|
+
@client = client
|
|
9
|
+
end
|
|
10
|
+
|
|
11
|
+
# @return [Candid::V1::Client]
|
|
12
|
+
def v_1
|
|
13
|
+
@v_1 ||= Candid::InsuranceAdjudications::V1::Client.new(client: @client)
|
|
14
|
+
end
|
|
15
|
+
end
|
|
16
|
+
end
|
|
17
|
+
end
|
|
@@ -0,0 +1,37 @@
|
|
|
1
|
+
# frozen_string_literal: true
|
|
2
|
+
|
|
3
|
+
module Candid
|
|
4
|
+
module InsuranceAdjudications
|
|
5
|
+
module V1
|
|
6
|
+
class Client
|
|
7
|
+
# @return [Candid::InsuranceAdjudications::V1::Client]
|
|
8
|
+
def initialize(client:)
|
|
9
|
+
@client = client
|
|
10
|
+
end
|
|
11
|
+
|
|
12
|
+
# Retrieves a previously created insurance adjudication by its `insurance_adjudication_id`.
|
|
13
|
+
#
|
|
14
|
+
# @return [Candid::InsuranceAdjudications::V1::Types::InsuranceAdjudication]
|
|
15
|
+
def get(request_options: {}, **params)
|
|
16
|
+
_request = Candid::Internal::JSON::Request.new(
|
|
17
|
+
base_url: request_options[:base_url] || Candid::Environment::PRODUCTION,
|
|
18
|
+
method: "GET",
|
|
19
|
+
path: "/api/insurance-adjudications/v1/#{params[:insurance_adjudication_id]}"
|
|
20
|
+
)
|
|
21
|
+
begin
|
|
22
|
+
_response = @client.send(_request)
|
|
23
|
+
rescue Net::HTTPRequestTimeout
|
|
24
|
+
raise Candid::Errors::TimeoutError
|
|
25
|
+
end
|
|
26
|
+
code = _response.code.to_i
|
|
27
|
+
if code.between?(200, 299)
|
|
28
|
+
Candid::InsuranceAdjudications::V1::Types::InsuranceAdjudication.load(_response.body)
|
|
29
|
+
else
|
|
30
|
+
error_class = Candid::Errors::ResponseError.subclass_for_code(code)
|
|
31
|
+
raise error_class.new(_response.body, code: code)
|
|
32
|
+
end
|
|
33
|
+
end
|
|
34
|
+
end
|
|
35
|
+
end
|
|
36
|
+
end
|
|
37
|
+
end
|
|
@@ -0,0 +1,23 @@
|
|
|
1
|
+
# frozen_string_literal: true
|
|
2
|
+
|
|
3
|
+
module Candid
|
|
4
|
+
module InsuranceAdjudications
|
|
5
|
+
module V1
|
|
6
|
+
module Types
|
|
7
|
+
class ClaimAdjudication < Internal::Types::Model
|
|
8
|
+
field :claim_id, -> { String }, optional: false, nullable: false
|
|
9
|
+
field :insurance_allowed_amount_cents, -> { Integer }, optional: true, nullable: false
|
|
10
|
+
field :insurance_paid_amount_cents, -> { Integer }, optional: true, nullable: false
|
|
11
|
+
field :charge_amount_cents, -> { Integer }, optional: true, nullable: false
|
|
12
|
+
field :service_lines, lambda {
|
|
13
|
+
Internal::Types::Hash[String, Internal::Types::Array[Candid::InsuranceAdjudications::V1::Types::ServiceLineAdjudication]]
|
|
14
|
+
}, optional: false, nullable: false
|
|
15
|
+
field :payer_claim_number, -> { String }, optional: true, nullable: false
|
|
16
|
+
field :carcs, lambda {
|
|
17
|
+
Internal::Types::Array[Candid::X12::V1::Types::ClaimAdjustmentReasonCode]
|
|
18
|
+
}, optional: false, nullable: false
|
|
19
|
+
end
|
|
20
|
+
end
|
|
21
|
+
end
|
|
22
|
+
end
|
|
23
|
+
end
|
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
# frozen_string_literal: true
|
|
2
|
+
|
|
3
|
+
module Candid
|
|
4
|
+
module InsuranceAdjudications
|
|
5
|
+
module V1
|
|
6
|
+
module Types
|
|
7
|
+
class InsuranceAdjudication < Internal::Types::Model
|
|
8
|
+
field :insurance_adjudication_id, -> { String }, optional: false, nullable: false
|
|
9
|
+
field :payer_uuid, -> { String }, optional: false, nullable: false
|
|
10
|
+
field :post_date, -> { String }, optional: true, nullable: false
|
|
11
|
+
field :check_number, -> { String }, optional: true, nullable: false
|
|
12
|
+
field :check_date, -> { String }, optional: false, nullable: false
|
|
13
|
+
field :note, -> { String }, optional: true, nullable: false
|
|
14
|
+
field :claims, lambda {
|
|
15
|
+
Internal::Types::Hash[String, Internal::Types::Array[Candid::InsuranceAdjudications::V1::Types::ClaimAdjudication]]
|
|
16
|
+
}, optional: false, nullable: false
|
|
17
|
+
end
|
|
18
|
+
end
|
|
19
|
+
end
|
|
20
|
+
end
|
|
21
|
+
end
|
|
@@ -0,0 +1,27 @@
|
|
|
1
|
+
# frozen_string_literal: true
|
|
2
|
+
|
|
3
|
+
module Candid
|
|
4
|
+
module InsuranceAdjudications
|
|
5
|
+
module V1
|
|
6
|
+
module Types
|
|
7
|
+
class ServiceLineAdjudication < Internal::Types::Model
|
|
8
|
+
field :service_line_adjudication_id, -> { String }, optional: false, nullable: false
|
|
9
|
+
field :denial_reason, lambda {
|
|
10
|
+
Candid::ServiceLines::V2::Types::DenialReasonContent
|
|
11
|
+
}, optional: true, nullable: false
|
|
12
|
+
field :insurance_allowed_amount_cents, -> { Integer }, optional: true, nullable: false
|
|
13
|
+
field :insurance_paid_amount_cents, -> { Integer }, optional: true, nullable: false
|
|
14
|
+
field :deductible_amount_cents, -> { Integer }, optional: true, nullable: false
|
|
15
|
+
field :coinsurance_amount_cents, -> { Integer }, optional: true, nullable: false
|
|
16
|
+
field :copay_amount_cents, -> { Integer }, optional: true, nullable: false
|
|
17
|
+
field :carcs, lambda {
|
|
18
|
+
Internal::Types::Array[Candid::X12::V1::Types::ClaimAdjustmentReasonCode]
|
|
19
|
+
}, optional: false, nullable: false
|
|
20
|
+
field :rarcs, lambda {
|
|
21
|
+
Internal::Types::Array[Candid::X12::V1::Types::RemittanceAdviceRemarkCode]
|
|
22
|
+
}, optional: false, nullable: false
|
|
23
|
+
end
|
|
24
|
+
end
|
|
25
|
+
end
|
|
26
|
+
end
|
|
27
|
+
end
|
|
@@ -0,0 +1,13 @@
|
|
|
1
|
+
# frozen_string_literal: true
|
|
2
|
+
|
|
3
|
+
module Candid
|
|
4
|
+
module PatientPayments
|
|
5
|
+
module V4
|
|
6
|
+
module Types
|
|
7
|
+
class CheckPaymentMethod < Internal::Types::Model
|
|
8
|
+
field :check_number, -> { String }, optional: false, nullable: false
|
|
9
|
+
end
|
|
10
|
+
end
|
|
11
|
+
end
|
|
12
|
+
end
|
|
13
|
+
end
|
|
@@ -19,6 +19,9 @@ module Candid
|
|
|
19
19
|
Internal::Types::Array[Candid::Financials::Types::Allocation]
|
|
20
20
|
}, optional: false, nullable: false
|
|
21
21
|
field :invoice, -> { String }, optional: true, nullable: false
|
|
22
|
+
field :payment_method_detail, lambda {
|
|
23
|
+
Candid::PatientPayments::V4::Types::PaymentMethodDetail
|
|
24
|
+
}, optional: true, nullable: false
|
|
22
25
|
end
|
|
23
26
|
end
|
|
24
27
|
end
|
|
@@ -0,0 +1,19 @@
|
|
|
1
|
+
# frozen_string_literal: true
|
|
2
|
+
|
|
3
|
+
module Candid
|
|
4
|
+
module PatientPayments
|
|
5
|
+
module V4
|
|
6
|
+
module Types
|
|
7
|
+
class PaymentMethod < Internal::Types::Model
|
|
8
|
+
extend Candid::Internal::Types::Union
|
|
9
|
+
|
|
10
|
+
discriminant :type
|
|
11
|
+
|
|
12
|
+
member -> { Candid::PatientPayments::V4::Types::CashPaymentMethod }, key: "CASH"
|
|
13
|
+
member -> { Candid::PatientPayments::V4::Types::CheckPaymentMethod }, key: "CHECK"
|
|
14
|
+
member -> { Candid::PatientPayments::V4::Types::CardPaymentMethod }, key: "CARD"
|
|
15
|
+
end
|
|
16
|
+
end
|
|
17
|
+
end
|
|
18
|
+
end
|
|
19
|
+
end
|
|
@@ -0,0 +1,18 @@
|
|
|
1
|
+
# frozen_string_literal: true
|
|
2
|
+
|
|
3
|
+
module Candid
|
|
4
|
+
module PatientPayments
|
|
5
|
+
module V4
|
|
6
|
+
module Types
|
|
7
|
+
class PaymentMethodDetail < Internal::Types::Model
|
|
8
|
+
field :payment_method, lambda {
|
|
9
|
+
Candid::PatientPayments::V4::Types::PaymentMethod
|
|
10
|
+
}, optional: false, nullable: false
|
|
11
|
+
field :collected_at_address, lambda {
|
|
12
|
+
Candid::Commons::Types::StreetAddressShortZip
|
|
13
|
+
}, optional: true, nullable: false
|
|
14
|
+
end
|
|
15
|
+
end
|
|
16
|
+
end
|
|
17
|
+
end
|
|
18
|
+
end
|
|
@@ -21,6 +21,8 @@ module Candid
|
|
|
21
21
|
field :encounter, lambda {
|
|
22
22
|
Candid::PreEncounter::EligibilityChecks::V1::Types::Encounter
|
|
23
23
|
}, optional: true, nullable: false
|
|
24
|
+
field :get_existing_check_initiated_after, -> { String }, optional: true, nullable: false
|
|
25
|
+
field :source, -> { String }, optional: true, nullable: false
|
|
24
26
|
end
|
|
25
27
|
end
|
|
26
28
|
end
|
|
@@ -68,6 +68,7 @@ module Candid
|
|
|
68
68
|
field :has_epsdt_indicator, -> { Internal::Types::Boolean }, optional: true, nullable: false
|
|
69
69
|
field :has_family_planning_indicator, -> { Internal::Types::Boolean }, optional: true, nullable: false
|
|
70
70
|
field :note, -> { String }, optional: true, nullable: false
|
|
71
|
+
field :prior_authorization_number, -> { String }, optional: true, nullable: false
|
|
71
72
|
end
|
|
72
73
|
end
|
|
73
74
|
end
|
|
@@ -27,6 +27,7 @@ module Candid
|
|
|
27
27
|
Internal::Types::Array[Candid::ServiceLines::V2::Types::TestResult]
|
|
28
28
|
}, optional: true, nullable: false
|
|
29
29
|
field :note, -> { String }, optional: true, nullable: false
|
|
30
|
+
field :prior_authorization_number, -> { String }, optional: true, nullable: false
|
|
30
31
|
end
|
|
31
32
|
end
|
|
32
33
|
end
|
|
@@ -30,6 +30,7 @@ module Candid
|
|
|
30
30
|
}, optional: true, nullable: false
|
|
31
31
|
field :note, -> { String }, optional: true, nullable: false
|
|
32
32
|
field :revenue_code, -> { String }, optional: true, nullable: false
|
|
33
|
+
field :prior_authorization_number, -> { String }, optional: true, nullable: false
|
|
33
34
|
end
|
|
34
35
|
end
|
|
35
36
|
end
|
|
@@ -9,6 +9,7 @@ module Candid
|
|
|
9
9
|
field :diagnosis_id_one, -> { String }, optional: true, nullable: false
|
|
10
10
|
field :diagnosis_id_two, -> { String }, optional: true, nullable: false
|
|
11
11
|
field :diagnosis_id_three, -> { String }, optional: true, nullable: false
|
|
12
|
+
field :prior_authorization_number, -> { String }, optional: true, nullable: false
|
|
12
13
|
end
|
|
13
14
|
end
|
|
14
15
|
end
|
|
@@ -29,6 +29,7 @@ module Candid
|
|
|
29
29
|
field :has_epsdt_indicator, -> { Internal::Types::Boolean }, optional: true, nullable: false
|
|
30
30
|
field :has_family_planning_indicator, -> { Internal::Types::Boolean }, optional: true, nullable: false
|
|
31
31
|
field :note, -> { String }, optional: true, nullable: false
|
|
32
|
+
field :prior_authorization_number, -> { String }, optional: true, nullable: false
|
|
32
33
|
end
|
|
33
34
|
end
|
|
34
35
|
end
|
|
@@ -11,6 +11,7 @@ module Candid
|
|
|
11
11
|
field :diagnosis_id_three, -> { String }, optional: true, nullable: false
|
|
12
12
|
field :revenue_code, -> { String }, optional: true, nullable: false
|
|
13
13
|
field :procedure_code, -> { String }, optional: true, nullable: false
|
|
14
|
+
field :prior_authorization_number, -> { String }, optional: true, nullable: false
|
|
14
15
|
end
|
|
15
16
|
end
|
|
16
17
|
end
|
data/lib/candid/version.rb
CHANGED