candidhealth 0.36.1 → 0.37.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/candidhealth/charge_capture/client.rb +30 -0
- data/lib/candidhealth/charge_capture/v_1/client.rb +1250 -0
- data/lib/candidhealth/charge_capture/v_1/types/charge_capture.rb +116 -0
- data/lib/candidhealth/charge_capture/v_1/types/charge_capture_data.rb +727 -0
- data/lib/candidhealth/charge_capture/v_1/types/charge_capture_page.rb +88 -0
- data/lib/candidhealth/charge_capture/v_1/types/charge_capture_status.rb +19 -0
- data/lib/candidhealth/commons/types/not_implemented_error_message.rb +60 -0
- data/lib/candidhealth/diagnoses/client.rb +2 -2
- data/lib/candidhealth/encounter_providers/v_2/client.rb +16 -16
- data/lib/candidhealth/encounters/v_4/client.rb +34 -34
- data/lib/candidhealth/guarantor/v_1/client.rb +2 -2
- data/lib/candidhealth/service_lines/v_2/client.rb +2 -2
- data/lib/candidhealth.rb +7 -0
- data/lib/requests.rb +2 -2
- data/lib/types_export.rb +5 -0
- metadata +12 -5
@@ -0,0 +1,727 @@
|
|
1
|
+
# frozen_string_literal: true
|
2
|
+
|
3
|
+
require_relative "../../../diagnoses/types/diagnosis_create"
|
4
|
+
require_relative "../../../encounters/v_4/types/intervention"
|
5
|
+
require_relative "../../../claim_submission/v_1/types/external_claim_submission_create"
|
6
|
+
require_relative "../../../service_lines/v_2/types/service_line_create"
|
7
|
+
require_relative "../../../encounters/v_4/types/patient_history_category"
|
8
|
+
require_relative "../../../billing_notes/v_2/types/billing_note"
|
9
|
+
require "date"
|
10
|
+
require_relative "../../../encounters/v_4/types/clinical_note_category_create"
|
11
|
+
require_relative "../../../commons/types/street_address_long_zip"
|
12
|
+
require_relative "../../../encounters/v_4/types/billable_status_type"
|
13
|
+
require_relative "../../../encounters/v_4/types/responsible_party_type"
|
14
|
+
require_relative "../../../encounters/v_4/types/synchronicity_type"
|
15
|
+
require_relative "../../../commons/types/facility_type_code"
|
16
|
+
require_relative "../../../individual/types/subscriber_create"
|
17
|
+
require_relative "../../../encounters/v_4/types/service_authorization_exception_code"
|
18
|
+
require_relative "../../../commons/types/delay_reason_code"
|
19
|
+
require_relative "../../../individual/types/patient_update"
|
20
|
+
require_relative "../../../custom_schemas/v_1/types/schema_instance"
|
21
|
+
require_relative "../../../encounters/v_4/types/vitals_update"
|
22
|
+
require_relative "../../../encounters/v_4/types/medication"
|
23
|
+
require_relative "../../../encounter_providers/v_2/types/rendering_provider_update"
|
24
|
+
require_relative "../../../service_facility/types/encounter_service_facility_update"
|
25
|
+
require_relative "../../../guarantor/v_1/types/guarantor_update"
|
26
|
+
require_relative "../../../encounter_providers/v_2/types/billing_provider_update"
|
27
|
+
require_relative "../../../encounter_providers/v_2/types/supervising_provider_update"
|
28
|
+
require_relative "../../../encounter_providers/v_2/types/referring_provider_update"
|
29
|
+
require_relative "../../../encounter_providers/v_2/types/initial_referring_provider_update"
|
30
|
+
require "ostruct"
|
31
|
+
require "json"
|
32
|
+
|
33
|
+
module CandidApiClient
|
34
|
+
module ChargeCapture
|
35
|
+
module V1
|
36
|
+
module Types
|
37
|
+
class ChargeCaptureData
|
38
|
+
# @return [Array<CandidApiClient::Diagnoses::Types::DiagnosisCreate>] Ideally, this field should contain no more than 12 diagnoses. However, more
|
39
|
+
# diagnoses
|
40
|
+
# may be submitted at this time, and coders will later prioritize the 12 that will
|
41
|
+
# be
|
42
|
+
# submitted to the payor.
|
43
|
+
attr_reader :diagnoses
|
44
|
+
# @return [Array<CandidApiClient::Encounters::V4::Types::Intervention>]
|
45
|
+
attr_reader :interventions
|
46
|
+
# @return [CandidApiClient::ClaimSubmission::V1::Types::ExternalClaimSubmissionCreate] **_This field is in beta._**
|
47
|
+
# To be included for claims that have been submitted outside of Candid.
|
48
|
+
# Candid supports posting remits and payments to these claims and working them
|
49
|
+
# in-platform (e.g. editing, resubmitting).
|
50
|
+
attr_reader :external_claim_submission
|
51
|
+
# @return [Array<CandidApiClient::ServiceLines::V2::Types::ServiceLineCreate>] Each service line must be linked to a diagnosis. Concretely,
|
52
|
+
# `service_line.diagnosis_pointers`must contain at least one entry which should be
|
53
|
+
# in bounds of the diagnoses list field.
|
54
|
+
attr_reader :service_lines
|
55
|
+
# @return [Array<CandidApiClient::Encounters::V4::Types::PatientHistoryCategory>]
|
56
|
+
attr_reader :patient_histories
|
57
|
+
# @return [Array<CandidApiClient::BillingNotes::V2::Types::BillingNote>] Spot to store misc, human-readable, notes about this encounter to be
|
58
|
+
# used in the billing process.
|
59
|
+
attr_reader :billing_notes
|
60
|
+
# @return [Boolean] Whether this patient has authorized insurance payments to be made to you, not
|
61
|
+
# them. If false, patient may receive reimbursement. Box 13 on the CMS-1500 claim
|
62
|
+
# form.
|
63
|
+
attr_reader :benefits_assigned_to_provider
|
64
|
+
# @return [String] Box 23 on the CMS-1500 claim form.
|
65
|
+
attr_reader :prior_authorization_number
|
66
|
+
# @return [String] A client-specified unique ID to associate with this encounter;
|
67
|
+
# for example, your internal encounter ID or a Dr. Chrono encounter ID.
|
68
|
+
# This field should not contain PHI.
|
69
|
+
attr_reader :external_id
|
70
|
+
# @return [Date] Date formatted as YYYY-MM-DD; eg: 2019-08-24.
|
71
|
+
# This date must be the local date in the timezone where the service occurred.
|
72
|
+
# Box 24a on the CMS-1500 claim form.
|
73
|
+
# If service occurred over a range of dates, this should be the start date.
|
74
|
+
# If service lines have distinct date_of_service values, updating the encounter's
|
75
|
+
# date_of_service will fail. If all service line date_of_service values are the
|
76
|
+
# same, updating the encounter's date_of_service will update all service line
|
77
|
+
# date_of_service values.
|
78
|
+
attr_reader :date_of_service
|
79
|
+
# @return [Array<String>] Names of tags that should be on the encounter. Note all tags on encounter will
|
80
|
+
# be overridden with this list.
|
81
|
+
attr_reader :tag_ids
|
82
|
+
# @return [Array<CandidApiClient::Encounters::V4::Types::ClinicalNoteCategoryCreate>] Holds a collection of clinical observations made by healthcare providers during
|
83
|
+
# patient encounters.
|
84
|
+
attr_reader :clinical_notes
|
85
|
+
# @return [CandidApiClient::Commons::Types::StreetAddressLongZip] Specifies the address to which payments for the claim should be sent.
|
86
|
+
attr_reader :pay_to_address
|
87
|
+
# @return [CandidApiClient::Encounters::V4::Types::BillableStatusType] Defines if the Encounter is to be billed by Candid to the responsible_party.
|
88
|
+
# Examples for when this should be set to NOT_BILLABLE include if the Encounter
|
89
|
+
# has not occurred yet or if there is no intention of ever billing the
|
90
|
+
# responsible_party.
|
91
|
+
attr_reader :billable_status
|
92
|
+
# @return [CandidApiClient::Encounters::V4::Types::ResponsiblePartyType] Defines the party to be billed with the initial balance owed on the claim. Use
|
93
|
+
# SELF_PAY if you intend to bill self pay/cash pay.
|
94
|
+
attr_reader :responsible_party
|
95
|
+
# @return [Boolean] Whether you have accepted the patient's authorization for insurance payments to
|
96
|
+
# be made to you, not them. Box 27 on the CMS-1500 claim form.
|
97
|
+
attr_reader :provider_accepts_assignment
|
98
|
+
# @return [CandidApiClient::Encounters::V4::Types::SynchronicityType] Whether or not this was a synchronous or asynchronous encounter. Asynchronous
|
99
|
+
# encounters occur when providers and patients communicate online using forms,
|
100
|
+
# instant messaging, or other pre-recorded digital mediums. Synchronous encounters
|
101
|
+
# occur in live, real-time settings where the patient interacts directly with the
|
102
|
+
# provider, such as over video or a phone call.
|
103
|
+
attr_reader :synchronicity
|
104
|
+
# @return [CandidApiClient::Commons::Types::FacilityTypeCode] Box 24B on the CMS-1500 claim form. 837p Loop2300, CLM-05-1. 02 for
|
105
|
+
# telemedicine, 11 for in-person. Full list
|
106
|
+
# //www.cms.gov/Medicare/Coding/place-of-service-codes/Place_of_Service_Code_Set).
|
107
|
+
attr_reader :place_of_service_code
|
108
|
+
# @return [String] Human-readable description of the appointment type (ex: "Acupuncture -
|
109
|
+
# Headaches").
|
110
|
+
attr_reader :appointment_type
|
111
|
+
# @return [Date] Date formatted as YYYY-MM-DD; eg: 2019-08-25.
|
112
|
+
# This date must be the local date in the timezone where the service occurred.
|
113
|
+
# If omitted, the Encounter is assumed to be for a single day.
|
114
|
+
# Must not be temporally before the date_of_service field.
|
115
|
+
# If service lines have distinct end_date_of_service values, updating the
|
116
|
+
# encounter's end_date_of_service will fail. If all service line
|
117
|
+
# end_date_of_service values are the same, updating the encounter's
|
118
|
+
# end_date_of_service will update all service line date_of_service values.
|
119
|
+
attr_reader :end_date_of_service
|
120
|
+
# @return [CandidApiClient::Individual::Types::SubscriberCreate] Contains details of the primary insurance subscriber.
|
121
|
+
attr_reader :subscriber_primary
|
122
|
+
# @return [CandidApiClient::Individual::Types::SubscriberCreate] Contains details of the secondary insurance subscriber.
|
123
|
+
attr_reader :subscriber_secondary
|
124
|
+
# @return [String] Defines additional information on the claim needed by the payer.
|
125
|
+
# Box 19 on the CMS-1500 claim form.
|
126
|
+
attr_reader :additional_information
|
127
|
+
# @return [CandidApiClient::Encounters::V4::Types::ServiceAuthorizationExceptionCode] 837p Loop2300 REF\*4N
|
128
|
+
# Required when mandated by government law or regulation to obtain authorization
|
129
|
+
# for specific service(s) but, for the
|
130
|
+
# reasons listed in one of the enum values of ServiceAuthorizationExceptionCode,
|
131
|
+
# the service was performed without
|
132
|
+
# obtaining the authorization.
|
133
|
+
attr_reader :service_authorization_exception_code
|
134
|
+
# @return [Date] 837p Loop2300 DTP\*435, CMS-1500 Box 18
|
135
|
+
# Required on all ambulance claims when the patient was known to be admitted to
|
136
|
+
# the hospital.
|
137
|
+
# OR
|
138
|
+
# Required on all claims involving inpatient medical visits.
|
139
|
+
attr_reader :admission_date
|
140
|
+
# @return [Date] 837p Loop2300 DTP\*096, CMS-1500 Box 18
|
141
|
+
# Required for inpatient claims when the patient was discharged from the facility
|
142
|
+
# and the discharge date is known.
|
143
|
+
attr_reader :discharge_date
|
144
|
+
# @return [Date] 837p Loop2300 DTP\*431, CMS-1500 Box 14
|
145
|
+
# Required for the initial medical service or visit performed in response to a
|
146
|
+
# medical emergency when the date is available and is different than the date of
|
147
|
+
# service.
|
148
|
+
# OR
|
149
|
+
# This date is the onset of acute symptoms for the current illness or condition.
|
150
|
+
attr_reader :onset_of_current_illness_or_symptom_date
|
151
|
+
# @return [Date] 837p Loop2300 DTP\*484, CMS-1500 Box 14
|
152
|
+
# Required when, in the judgment of the provider, the services on this claim are
|
153
|
+
# related to the patient's pregnancy.de
|
154
|
+
attr_reader :last_menstrual_period_date
|
155
|
+
# @return [CandidApiClient::Commons::Types::DelayReasonCode] 837i Loop2300, CLM-1300 Box 20
|
156
|
+
# Code indicating the reason why a request was delayed
|
157
|
+
attr_reader :delay_reason_code
|
158
|
+
# @return [CandidApiClient::Individual::Types::PatientUpdate] Contains the identification information of the individual receiving medical
|
159
|
+
# services.
|
160
|
+
attr_reader :patient
|
161
|
+
# @return [Boolean] Whether this patient has authorized the release of medical information
|
162
|
+
# for billing purpose.
|
163
|
+
# Box 12 on the CMS-1500 claim form.
|
164
|
+
attr_reader :patient_authorized_release
|
165
|
+
# @return [Array<CandidApiClient::CustomSchemas::V1::Types::SchemaInstance>] Key-value pairs that must adhere to a schema created via the Custom Schema API.
|
166
|
+
# Multiple schema
|
167
|
+
# instances cannot be created for the same schema on an encounter. Updating schema
|
168
|
+
# instances utilizes PUT
|
169
|
+
# semantics, so the schema instances on the encounter will be set to whatever
|
170
|
+
# inputs are provided. If null
|
171
|
+
# is provided as an input, then the encounter's schema instances will be cleared.
|
172
|
+
attr_reader :schema_instances
|
173
|
+
# @return [CandidApiClient::Encounters::V4::Types::VitalsUpdate] If a vitals entity already exists for the encounter, then all values will be
|
174
|
+
# updated to the provided values.
|
175
|
+
# Otherwise, a new vitals object will be created for the encounter.
|
176
|
+
attr_reader :vitals
|
177
|
+
# @return [Array<CandidApiClient::Encounters::V4::Types::Medication>] Existing medications that should be on the encounter.
|
178
|
+
# Note all current existing medications on encounter will be overridden with this
|
179
|
+
# list.
|
180
|
+
attr_reader :existing_medications
|
181
|
+
# @return [CandidApiClient::EncounterProviders::V2::Types::RenderingProviderUpdate] The rendering provider is the practitioner -- physician, nurse practitioner,
|
182
|
+
# etc. -- performing the service.
|
183
|
+
# For telehealth services, the rendering provider performs the visit, asynchronous
|
184
|
+
# communication, or other service. The rendering provider address should generally
|
185
|
+
# be the same as the service facility address.
|
186
|
+
attr_reader :rendering_provider
|
187
|
+
# @return [CandidApiClient::ServiceFacility::Types::EncounterServiceFacilityUpdate] Encounter Service facility is typically the location a medical service was
|
188
|
+
# rendered, such as a provider office or hospital. For telehealth, service
|
189
|
+
# facility can represent the provider's location when the service was delivered
|
190
|
+
# (e.g., home), or the location where an in-person visit would have taken place,
|
191
|
+
# whichever is easier to identify. If the provider is in-network, service facility
|
192
|
+
# may be defined in payer contracts. Box 32 on the CMS-1500 claim form. Note that
|
193
|
+
# for an in-network claim to be successfully adjudicated, the service facility
|
194
|
+
# address listed on claims must match what was provided to the payer during the
|
195
|
+
# credentialing process.
|
196
|
+
attr_reader :service_facility
|
197
|
+
# @return [CandidApiClient::Guarantor::V1::Types::GuarantorUpdate] Personal and contact info for the guarantor of the patient responsibility.
|
198
|
+
attr_reader :guarantor
|
199
|
+
# @return [CandidApiClient::EncounterProviders::V2::Types::BillingProviderUpdate] The billing provider is the provider or business entity submitting the claim.
|
200
|
+
# Billing provider may be, but is not necessarily, the same person/NPI as the
|
201
|
+
# rendering provider. From a payer's perspective, this represents the person or
|
202
|
+
# entity being reimbursed. When a contract exists with the target payer, the
|
203
|
+
# billing provider should be the entity contracted with the payer. In some
|
204
|
+
# circumstances, this will be an individual provider. In that case, submit that
|
205
|
+
# provider's NPI and the tax ID (TIN) that the provider gave to the payer during
|
206
|
+
# contracting. In other cases, the billing entity will be a medical group. If so,
|
207
|
+
# submit the group NPI and the group's tax ID. Box 33 on the CMS-1500 claim form.
|
208
|
+
attr_reader :billing_provider
|
209
|
+
# @return [CandidApiClient::EncounterProviders::V2::Types::SupervisingProviderUpdate] Required when the rendering provider is supervised by a physician. If not
|
210
|
+
# required by this implementation guide, do not send.
|
211
|
+
attr_reader :supervising_provider
|
212
|
+
# @return [CandidApiClient::EncounterProviders::V2::Types::ReferringProviderUpdate] The final provider who referred the services that were rendered.
|
213
|
+
# All physicians who order services or refer Medicare beneficiaries must
|
214
|
+
# report this data.
|
215
|
+
attr_reader :referring_provider
|
216
|
+
# @return [CandidApiClient::EncounterProviders::V2::Types::InitialReferringProviderUpdate] The second iteration of Loop ID-2310. Use code "P3 - Primary Care Provider" in
|
217
|
+
# this loop to
|
218
|
+
# indicate the initial referral from the primary care provider or whatever
|
219
|
+
# provider wrote the initial referral for this patient's episode of care being
|
220
|
+
# billed/reported in this transaction.
|
221
|
+
attr_reader :initial_referring_provider
|
222
|
+
# @return [String] Refers to REF\*9F on the 837p. Value cannot be greater than 50 characters.
|
223
|
+
attr_reader :referral_number
|
224
|
+
# @return [OpenStruct] Additional properties unmapped to the current class definition
|
225
|
+
attr_reader :additional_properties
|
226
|
+
# @return [Object]
|
227
|
+
attr_reader :_field_set
|
228
|
+
protected :_field_set
|
229
|
+
|
230
|
+
OMIT = Object.new
|
231
|
+
|
232
|
+
# @param diagnoses [Array<CandidApiClient::Diagnoses::Types::DiagnosisCreate>] Ideally, this field should contain no more than 12 diagnoses. However, more
|
233
|
+
# diagnoses
|
234
|
+
# may be submitted at this time, and coders will later prioritize the 12 that will
|
235
|
+
# be
|
236
|
+
# submitted to the payor.
|
237
|
+
# @param interventions [Array<CandidApiClient::Encounters::V4::Types::Intervention>]
|
238
|
+
# @param external_claim_submission [CandidApiClient::ClaimSubmission::V1::Types::ExternalClaimSubmissionCreate] **_This field is in beta._**
|
239
|
+
# To be included for claims that have been submitted outside of Candid.
|
240
|
+
# Candid supports posting remits and payments to these claims and working them
|
241
|
+
# in-platform (e.g. editing, resubmitting).
|
242
|
+
# @param service_lines [Array<CandidApiClient::ServiceLines::V2::Types::ServiceLineCreate>] Each service line must be linked to a diagnosis. Concretely,
|
243
|
+
# `service_line.diagnosis_pointers`must contain at least one entry which should be
|
244
|
+
# in bounds of the diagnoses list field.
|
245
|
+
# @param patient_histories [Array<CandidApiClient::Encounters::V4::Types::PatientHistoryCategory>]
|
246
|
+
# @param billing_notes [Array<CandidApiClient::BillingNotes::V2::Types::BillingNote>] Spot to store misc, human-readable, notes about this encounter to be
|
247
|
+
# used in the billing process.
|
248
|
+
# @param benefits_assigned_to_provider [Boolean] Whether this patient has authorized insurance payments to be made to you, not
|
249
|
+
# them. If false, patient may receive reimbursement. Box 13 on the CMS-1500 claim
|
250
|
+
# form.
|
251
|
+
# @param prior_authorization_number [String] Box 23 on the CMS-1500 claim form.
|
252
|
+
# @param external_id [String] A client-specified unique ID to associate with this encounter;
|
253
|
+
# for example, your internal encounter ID or a Dr. Chrono encounter ID.
|
254
|
+
# This field should not contain PHI.
|
255
|
+
# @param date_of_service [Date] Date formatted as YYYY-MM-DD; eg: 2019-08-24.
|
256
|
+
# This date must be the local date in the timezone where the service occurred.
|
257
|
+
# Box 24a on the CMS-1500 claim form.
|
258
|
+
# If service occurred over a range of dates, this should be the start date.
|
259
|
+
# If service lines have distinct date_of_service values, updating the encounter's
|
260
|
+
# date_of_service will fail. If all service line date_of_service values are the
|
261
|
+
# same, updating the encounter's date_of_service will update all service line
|
262
|
+
# date_of_service values.
|
263
|
+
# @param tag_ids [Array<String>] Names of tags that should be on the encounter. Note all tags on encounter will
|
264
|
+
# be overridden with this list.
|
265
|
+
# @param clinical_notes [Array<CandidApiClient::Encounters::V4::Types::ClinicalNoteCategoryCreate>] Holds a collection of clinical observations made by healthcare providers during
|
266
|
+
# patient encounters.
|
267
|
+
# @param pay_to_address [CandidApiClient::Commons::Types::StreetAddressLongZip] Specifies the address to which payments for the claim should be sent.
|
268
|
+
# @param billable_status [CandidApiClient::Encounters::V4::Types::BillableStatusType] Defines if the Encounter is to be billed by Candid to the responsible_party.
|
269
|
+
# Examples for when this should be set to NOT_BILLABLE include if the Encounter
|
270
|
+
# has not occurred yet or if there is no intention of ever billing the
|
271
|
+
# responsible_party.
|
272
|
+
# @param responsible_party [CandidApiClient::Encounters::V4::Types::ResponsiblePartyType] Defines the party to be billed with the initial balance owed on the claim. Use
|
273
|
+
# SELF_PAY if you intend to bill self pay/cash pay.
|
274
|
+
# @param provider_accepts_assignment [Boolean] Whether you have accepted the patient's authorization for insurance payments to
|
275
|
+
# be made to you, not them. Box 27 on the CMS-1500 claim form.
|
276
|
+
# @param synchronicity [CandidApiClient::Encounters::V4::Types::SynchronicityType] Whether or not this was a synchronous or asynchronous encounter. Asynchronous
|
277
|
+
# encounters occur when providers and patients communicate online using forms,
|
278
|
+
# instant messaging, or other pre-recorded digital mediums. Synchronous encounters
|
279
|
+
# occur in live, real-time settings where the patient interacts directly with the
|
280
|
+
# provider, such as over video or a phone call.
|
281
|
+
# @param place_of_service_code [CandidApiClient::Commons::Types::FacilityTypeCode] Box 24B on the CMS-1500 claim form. 837p Loop2300, CLM-05-1. 02 for
|
282
|
+
# telemedicine, 11 for in-person. Full list
|
283
|
+
# //www.cms.gov/Medicare/Coding/place-of-service-codes/Place_of_Service_Code_Set).
|
284
|
+
# @param appointment_type [String] Human-readable description of the appointment type (ex: "Acupuncture -
|
285
|
+
# Headaches").
|
286
|
+
# @param end_date_of_service [Date] Date formatted as YYYY-MM-DD; eg: 2019-08-25.
|
287
|
+
# This date must be the local date in the timezone where the service occurred.
|
288
|
+
# If omitted, the Encounter is assumed to be for a single day.
|
289
|
+
# Must not be temporally before the date_of_service field.
|
290
|
+
# If service lines have distinct end_date_of_service values, updating the
|
291
|
+
# encounter's end_date_of_service will fail. If all service line
|
292
|
+
# end_date_of_service values are the same, updating the encounter's
|
293
|
+
# end_date_of_service will update all service line date_of_service values.
|
294
|
+
# @param subscriber_primary [CandidApiClient::Individual::Types::SubscriberCreate] Contains details of the primary insurance subscriber.
|
295
|
+
# @param subscriber_secondary [CandidApiClient::Individual::Types::SubscriberCreate] Contains details of the secondary insurance subscriber.
|
296
|
+
# @param additional_information [String] Defines additional information on the claim needed by the payer.
|
297
|
+
# Box 19 on the CMS-1500 claim form.
|
298
|
+
# @param service_authorization_exception_code [CandidApiClient::Encounters::V4::Types::ServiceAuthorizationExceptionCode] 837p Loop2300 REF\*4N
|
299
|
+
# Required when mandated by government law or regulation to obtain authorization
|
300
|
+
# for specific service(s) but, for the
|
301
|
+
# reasons listed in one of the enum values of ServiceAuthorizationExceptionCode,
|
302
|
+
# the service was performed without
|
303
|
+
# obtaining the authorization.
|
304
|
+
# @param admission_date [Date] 837p Loop2300 DTP\*435, CMS-1500 Box 18
|
305
|
+
# Required on all ambulance claims when the patient was known to be admitted to
|
306
|
+
# the hospital.
|
307
|
+
# OR
|
308
|
+
# Required on all claims involving inpatient medical visits.
|
309
|
+
# @param discharge_date [Date] 837p Loop2300 DTP\*096, CMS-1500 Box 18
|
310
|
+
# Required for inpatient claims when the patient was discharged from the facility
|
311
|
+
# and the discharge date is known.
|
312
|
+
# @param onset_of_current_illness_or_symptom_date [Date] 837p Loop2300 DTP\*431, CMS-1500 Box 14
|
313
|
+
# Required for the initial medical service or visit performed in response to a
|
314
|
+
# medical emergency when the date is available and is different than the date of
|
315
|
+
# service.
|
316
|
+
# OR
|
317
|
+
# This date is the onset of acute symptoms for the current illness or condition.
|
318
|
+
# @param last_menstrual_period_date [Date] 837p Loop2300 DTP\*484, CMS-1500 Box 14
|
319
|
+
# Required when, in the judgment of the provider, the services on this claim are
|
320
|
+
# related to the patient's pregnancy.de
|
321
|
+
# @param delay_reason_code [CandidApiClient::Commons::Types::DelayReasonCode] 837i Loop2300, CLM-1300 Box 20
|
322
|
+
# Code indicating the reason why a request was delayed
|
323
|
+
# @param patient [CandidApiClient::Individual::Types::PatientUpdate] Contains the identification information of the individual receiving medical
|
324
|
+
# services.
|
325
|
+
# @param patient_authorized_release [Boolean] Whether this patient has authorized the release of medical information
|
326
|
+
# for billing purpose.
|
327
|
+
# Box 12 on the CMS-1500 claim form.
|
328
|
+
# @param schema_instances [Array<CandidApiClient::CustomSchemas::V1::Types::SchemaInstance>] Key-value pairs that must adhere to a schema created via the Custom Schema API.
|
329
|
+
# Multiple schema
|
330
|
+
# instances cannot be created for the same schema on an encounter. Updating schema
|
331
|
+
# instances utilizes PUT
|
332
|
+
# semantics, so the schema instances on the encounter will be set to whatever
|
333
|
+
# inputs are provided. If null
|
334
|
+
# is provided as an input, then the encounter's schema instances will be cleared.
|
335
|
+
# @param vitals [CandidApiClient::Encounters::V4::Types::VitalsUpdate] If a vitals entity already exists for the encounter, then all values will be
|
336
|
+
# updated to the provided values.
|
337
|
+
# Otherwise, a new vitals object will be created for the encounter.
|
338
|
+
# @param existing_medications [Array<CandidApiClient::Encounters::V4::Types::Medication>] Existing medications that should be on the encounter.
|
339
|
+
# Note all current existing medications on encounter will be overridden with this
|
340
|
+
# list.
|
341
|
+
# @param rendering_provider [CandidApiClient::EncounterProviders::V2::Types::RenderingProviderUpdate] The rendering provider is the practitioner -- physician, nurse practitioner,
|
342
|
+
# etc. -- performing the service.
|
343
|
+
# For telehealth services, the rendering provider performs the visit, asynchronous
|
344
|
+
# communication, or other service. The rendering provider address should generally
|
345
|
+
# be the same as the service facility address.
|
346
|
+
# @param service_facility [CandidApiClient::ServiceFacility::Types::EncounterServiceFacilityUpdate] Encounter Service facility is typically the location a medical service was
|
347
|
+
# rendered, such as a provider office or hospital. For telehealth, service
|
348
|
+
# facility can represent the provider's location when the service was delivered
|
349
|
+
# (e.g., home), or the location where an in-person visit would have taken place,
|
350
|
+
# whichever is easier to identify. If the provider is in-network, service facility
|
351
|
+
# may be defined in payer contracts. Box 32 on the CMS-1500 claim form. Note that
|
352
|
+
# for an in-network claim to be successfully adjudicated, the service facility
|
353
|
+
# address listed on claims must match what was provided to the payer during the
|
354
|
+
# credentialing process.
|
355
|
+
# @param guarantor [CandidApiClient::Guarantor::V1::Types::GuarantorUpdate] Personal and contact info for the guarantor of the patient responsibility.
|
356
|
+
# @param billing_provider [CandidApiClient::EncounterProviders::V2::Types::BillingProviderUpdate] The billing provider is the provider or business entity submitting the claim.
|
357
|
+
# Billing provider may be, but is not necessarily, the same person/NPI as the
|
358
|
+
# rendering provider. From a payer's perspective, this represents the person or
|
359
|
+
# entity being reimbursed. When a contract exists with the target payer, the
|
360
|
+
# billing provider should be the entity contracted with the payer. In some
|
361
|
+
# circumstances, this will be an individual provider. In that case, submit that
|
362
|
+
# provider's NPI and the tax ID (TIN) that the provider gave to the payer during
|
363
|
+
# contracting. In other cases, the billing entity will be a medical group. If so,
|
364
|
+
# submit the group NPI and the group's tax ID. Box 33 on the CMS-1500 claim form.
|
365
|
+
# @param supervising_provider [CandidApiClient::EncounterProviders::V2::Types::SupervisingProviderUpdate] Required when the rendering provider is supervised by a physician. If not
|
366
|
+
# required by this implementation guide, do not send.
|
367
|
+
# @param referring_provider [CandidApiClient::EncounterProviders::V2::Types::ReferringProviderUpdate] The final provider who referred the services that were rendered.
|
368
|
+
# All physicians who order services or refer Medicare beneficiaries must
|
369
|
+
# report this data.
|
370
|
+
# @param initial_referring_provider [CandidApiClient::EncounterProviders::V2::Types::InitialReferringProviderUpdate] The second iteration of Loop ID-2310. Use code "P3 - Primary Care Provider" in
|
371
|
+
# this loop to
|
372
|
+
# indicate the initial referral from the primary care provider or whatever
|
373
|
+
# provider wrote the initial referral for this patient's episode of care being
|
374
|
+
# billed/reported in this transaction.
|
375
|
+
# @param referral_number [String] Refers to REF\*9F on the 837p. Value cannot be greater than 50 characters.
|
376
|
+
# @param additional_properties [OpenStruct] Additional properties unmapped to the current class definition
|
377
|
+
# @return [CandidApiClient::ChargeCapture::V1::Types::ChargeCaptureData]
|
378
|
+
def initialize(diagnoses: OMIT, interventions: OMIT, external_claim_submission: OMIT, service_lines: OMIT,
|
379
|
+
patient_histories: OMIT, billing_notes: OMIT, benefits_assigned_to_provider: OMIT, prior_authorization_number: OMIT, external_id: OMIT, date_of_service: OMIT, tag_ids: OMIT, clinical_notes: OMIT, pay_to_address: OMIT, billable_status: OMIT, responsible_party: OMIT, provider_accepts_assignment: OMIT, synchronicity: OMIT, place_of_service_code: OMIT, appointment_type: OMIT, end_date_of_service: OMIT, subscriber_primary: OMIT, subscriber_secondary: OMIT, additional_information: OMIT, service_authorization_exception_code: OMIT, admission_date: OMIT, discharge_date: OMIT, onset_of_current_illness_or_symptom_date: OMIT, last_menstrual_period_date: OMIT, delay_reason_code: OMIT, patient: OMIT, patient_authorized_release: OMIT, schema_instances: OMIT, vitals: OMIT, existing_medications: OMIT, rendering_provider: OMIT, service_facility: OMIT, guarantor: OMIT, billing_provider: OMIT, supervising_provider: OMIT, referring_provider: OMIT, initial_referring_provider: OMIT, referral_number: OMIT, additional_properties: nil)
|
380
|
+
@diagnoses = diagnoses if diagnoses != OMIT
|
381
|
+
@interventions = interventions if interventions != OMIT
|
382
|
+
@external_claim_submission = external_claim_submission if external_claim_submission != OMIT
|
383
|
+
@service_lines = service_lines if service_lines != OMIT
|
384
|
+
@patient_histories = patient_histories if patient_histories != OMIT
|
385
|
+
@billing_notes = billing_notes if billing_notes != OMIT
|
386
|
+
@benefits_assigned_to_provider = benefits_assigned_to_provider if benefits_assigned_to_provider != OMIT
|
387
|
+
@prior_authorization_number = prior_authorization_number if prior_authorization_number != OMIT
|
388
|
+
@external_id = external_id if external_id != OMIT
|
389
|
+
@date_of_service = date_of_service if date_of_service != OMIT
|
390
|
+
@tag_ids = tag_ids if tag_ids != OMIT
|
391
|
+
@clinical_notes = clinical_notes if clinical_notes != OMIT
|
392
|
+
@pay_to_address = pay_to_address if pay_to_address != OMIT
|
393
|
+
@billable_status = billable_status if billable_status != OMIT
|
394
|
+
@responsible_party = responsible_party if responsible_party != OMIT
|
395
|
+
@provider_accepts_assignment = provider_accepts_assignment if provider_accepts_assignment != OMIT
|
396
|
+
@synchronicity = synchronicity if synchronicity != OMIT
|
397
|
+
@place_of_service_code = place_of_service_code if place_of_service_code != OMIT
|
398
|
+
@appointment_type = appointment_type if appointment_type != OMIT
|
399
|
+
@end_date_of_service = end_date_of_service if end_date_of_service != OMIT
|
400
|
+
@subscriber_primary = subscriber_primary if subscriber_primary != OMIT
|
401
|
+
@subscriber_secondary = subscriber_secondary if subscriber_secondary != OMIT
|
402
|
+
@additional_information = additional_information if additional_information != OMIT
|
403
|
+
if service_authorization_exception_code != OMIT
|
404
|
+
@service_authorization_exception_code = service_authorization_exception_code
|
405
|
+
end
|
406
|
+
@admission_date = admission_date if admission_date != OMIT
|
407
|
+
@discharge_date = discharge_date if discharge_date != OMIT
|
408
|
+
if onset_of_current_illness_or_symptom_date != OMIT
|
409
|
+
@onset_of_current_illness_or_symptom_date = onset_of_current_illness_or_symptom_date
|
410
|
+
end
|
411
|
+
@last_menstrual_period_date = last_menstrual_period_date if last_menstrual_period_date != OMIT
|
412
|
+
@delay_reason_code = delay_reason_code if delay_reason_code != OMIT
|
413
|
+
@patient = patient if patient != OMIT
|
414
|
+
@patient_authorized_release = patient_authorized_release if patient_authorized_release != OMIT
|
415
|
+
@schema_instances = schema_instances if schema_instances != OMIT
|
416
|
+
@vitals = vitals if vitals != OMIT
|
417
|
+
@existing_medications = existing_medications if existing_medications != OMIT
|
418
|
+
@rendering_provider = rendering_provider if rendering_provider != OMIT
|
419
|
+
@service_facility = service_facility if service_facility != OMIT
|
420
|
+
@guarantor = guarantor if guarantor != OMIT
|
421
|
+
@billing_provider = billing_provider if billing_provider != OMIT
|
422
|
+
@supervising_provider = supervising_provider if supervising_provider != OMIT
|
423
|
+
@referring_provider = referring_provider if referring_provider != OMIT
|
424
|
+
@initial_referring_provider = initial_referring_provider if initial_referring_provider != OMIT
|
425
|
+
@referral_number = referral_number if referral_number != OMIT
|
426
|
+
@additional_properties = additional_properties
|
427
|
+
@_field_set = {
|
428
|
+
"diagnoses": diagnoses,
|
429
|
+
"interventions": interventions,
|
430
|
+
"external_claim_submission": external_claim_submission,
|
431
|
+
"service_lines": service_lines,
|
432
|
+
"patient_histories": patient_histories,
|
433
|
+
"billing_notes": billing_notes,
|
434
|
+
"benefits_assigned_to_provider": benefits_assigned_to_provider,
|
435
|
+
"prior_authorization_number": prior_authorization_number,
|
436
|
+
"external_id": external_id,
|
437
|
+
"date_of_service": date_of_service,
|
438
|
+
"tag_ids": tag_ids,
|
439
|
+
"clinical_notes": clinical_notes,
|
440
|
+
"pay_to_address": pay_to_address,
|
441
|
+
"billable_status": billable_status,
|
442
|
+
"responsible_party": responsible_party,
|
443
|
+
"provider_accepts_assignment": provider_accepts_assignment,
|
444
|
+
"synchronicity": synchronicity,
|
445
|
+
"place_of_service_code": place_of_service_code,
|
446
|
+
"appointment_type": appointment_type,
|
447
|
+
"end_date_of_service": end_date_of_service,
|
448
|
+
"subscriber_primary": subscriber_primary,
|
449
|
+
"subscriber_secondary": subscriber_secondary,
|
450
|
+
"additional_information": additional_information,
|
451
|
+
"service_authorization_exception_code": service_authorization_exception_code,
|
452
|
+
"admission_date": admission_date,
|
453
|
+
"discharge_date": discharge_date,
|
454
|
+
"onset_of_current_illness_or_symptom_date": onset_of_current_illness_or_symptom_date,
|
455
|
+
"last_menstrual_period_date": last_menstrual_period_date,
|
456
|
+
"delay_reason_code": delay_reason_code,
|
457
|
+
"patient": patient,
|
458
|
+
"patient_authorized_release": patient_authorized_release,
|
459
|
+
"schema_instances": schema_instances,
|
460
|
+
"vitals": vitals,
|
461
|
+
"existing_medications": existing_medications,
|
462
|
+
"rendering_provider": rendering_provider,
|
463
|
+
"service_facility": service_facility,
|
464
|
+
"guarantor": guarantor,
|
465
|
+
"billing_provider": billing_provider,
|
466
|
+
"supervising_provider": supervising_provider,
|
467
|
+
"referring_provider": referring_provider,
|
468
|
+
"initial_referring_provider": initial_referring_provider,
|
469
|
+
"referral_number": referral_number
|
470
|
+
}.reject do |_k, v|
|
471
|
+
v == OMIT
|
472
|
+
end
|
473
|
+
end
|
474
|
+
|
475
|
+
# Deserialize a JSON object to an instance of ChargeCaptureData
|
476
|
+
#
|
477
|
+
# @param json_object [String]
|
478
|
+
# @return [CandidApiClient::ChargeCapture::V1::Types::ChargeCaptureData]
|
479
|
+
def self.from_json(json_object:)
|
480
|
+
struct = JSON.parse(json_object, object_class: OpenStruct)
|
481
|
+
parsed_json = JSON.parse(json_object)
|
482
|
+
diagnoses = parsed_json["diagnoses"]&.map do |item|
|
483
|
+
item = item.to_json
|
484
|
+
CandidApiClient::Diagnoses::Types::DiagnosisCreate.from_json(json_object: item)
|
485
|
+
end
|
486
|
+
interventions = parsed_json["interventions"]&.map do |item|
|
487
|
+
item = item.to_json
|
488
|
+
CandidApiClient::Encounters::V4::Types::Intervention.from_json(json_object: item)
|
489
|
+
end
|
490
|
+
if parsed_json["external_claim_submission"].nil?
|
491
|
+
external_claim_submission = nil
|
492
|
+
else
|
493
|
+
external_claim_submission = parsed_json["external_claim_submission"].to_json
|
494
|
+
external_claim_submission = CandidApiClient::ClaimSubmission::V1::Types::ExternalClaimSubmissionCreate.from_json(json_object: external_claim_submission)
|
495
|
+
end
|
496
|
+
service_lines = parsed_json["service_lines"]&.map do |item|
|
497
|
+
item = item.to_json
|
498
|
+
CandidApiClient::ServiceLines::V2::Types::ServiceLineCreate.from_json(json_object: item)
|
499
|
+
end
|
500
|
+
patient_histories = parsed_json["patient_histories"]&.map do |item|
|
501
|
+
item = item.to_json
|
502
|
+
CandidApiClient::Encounters::V4::Types::PatientHistoryCategory.from_json(json_object: item)
|
503
|
+
end
|
504
|
+
billing_notes = parsed_json["billing_notes"]&.map do |item|
|
505
|
+
item = item.to_json
|
506
|
+
CandidApiClient::BillingNotes::V2::Types::BillingNote.from_json(json_object: item)
|
507
|
+
end
|
508
|
+
benefits_assigned_to_provider = struct["benefits_assigned_to_provider"]
|
509
|
+
prior_authorization_number = struct["prior_authorization_number"]
|
510
|
+
external_id = struct["external_id"]
|
511
|
+
date_of_service = (Date.parse(parsed_json["date_of_service"]) unless parsed_json["date_of_service"].nil?)
|
512
|
+
tag_ids = struct["tag_ids"]
|
513
|
+
clinical_notes = parsed_json["clinical_notes"]&.map do |item|
|
514
|
+
item = item.to_json
|
515
|
+
CandidApiClient::Encounters::V4::Types::ClinicalNoteCategoryCreate.from_json(json_object: item)
|
516
|
+
end
|
517
|
+
if parsed_json["pay_to_address"].nil?
|
518
|
+
pay_to_address = nil
|
519
|
+
else
|
520
|
+
pay_to_address = parsed_json["pay_to_address"].to_json
|
521
|
+
pay_to_address = CandidApiClient::Commons::Types::StreetAddressLongZip.from_json(json_object: pay_to_address)
|
522
|
+
end
|
523
|
+
billable_status = struct["billable_status"]
|
524
|
+
responsible_party = struct["responsible_party"]
|
525
|
+
provider_accepts_assignment = struct["provider_accepts_assignment"]
|
526
|
+
synchronicity = struct["synchronicity"]
|
527
|
+
place_of_service_code = struct["place_of_service_code"]
|
528
|
+
appointment_type = struct["appointment_type"]
|
529
|
+
end_date_of_service = unless parsed_json["end_date_of_service"].nil?
|
530
|
+
Date.parse(parsed_json["end_date_of_service"])
|
531
|
+
end
|
532
|
+
if parsed_json["subscriber_primary"].nil?
|
533
|
+
subscriber_primary = nil
|
534
|
+
else
|
535
|
+
subscriber_primary = parsed_json["subscriber_primary"].to_json
|
536
|
+
subscriber_primary = CandidApiClient::Individual::Types::SubscriberCreate.from_json(json_object: subscriber_primary)
|
537
|
+
end
|
538
|
+
if parsed_json["subscriber_secondary"].nil?
|
539
|
+
subscriber_secondary = nil
|
540
|
+
else
|
541
|
+
subscriber_secondary = parsed_json["subscriber_secondary"].to_json
|
542
|
+
subscriber_secondary = CandidApiClient::Individual::Types::SubscriberCreate.from_json(json_object: subscriber_secondary)
|
543
|
+
end
|
544
|
+
additional_information = struct["additional_information"]
|
545
|
+
service_authorization_exception_code = struct["service_authorization_exception_code"]
|
546
|
+
admission_date = (Date.parse(parsed_json["admission_date"]) unless parsed_json["admission_date"].nil?)
|
547
|
+
discharge_date = (Date.parse(parsed_json["discharge_date"]) unless parsed_json["discharge_date"].nil?)
|
548
|
+
onset_of_current_illness_or_symptom_date = unless parsed_json["onset_of_current_illness_or_symptom_date"].nil?
|
549
|
+
Date.parse(parsed_json["onset_of_current_illness_or_symptom_date"])
|
550
|
+
end
|
551
|
+
last_menstrual_period_date = unless parsed_json["last_menstrual_period_date"].nil?
|
552
|
+
Date.parse(parsed_json["last_menstrual_period_date"])
|
553
|
+
end
|
554
|
+
delay_reason_code = struct["delay_reason_code"]
|
555
|
+
if parsed_json["patient"].nil?
|
556
|
+
patient = nil
|
557
|
+
else
|
558
|
+
patient = parsed_json["patient"].to_json
|
559
|
+
patient = CandidApiClient::Individual::Types::PatientUpdate.from_json(json_object: patient)
|
560
|
+
end
|
561
|
+
patient_authorized_release = struct["patient_authorized_release"]
|
562
|
+
schema_instances = parsed_json["schema_instances"]&.map do |item|
|
563
|
+
item = item.to_json
|
564
|
+
CandidApiClient::CustomSchemas::V1::Types::SchemaInstance.from_json(json_object: item)
|
565
|
+
end
|
566
|
+
if parsed_json["vitals"].nil?
|
567
|
+
vitals = nil
|
568
|
+
else
|
569
|
+
vitals = parsed_json["vitals"].to_json
|
570
|
+
vitals = CandidApiClient::Encounters::V4::Types::VitalsUpdate.from_json(json_object: vitals)
|
571
|
+
end
|
572
|
+
existing_medications = parsed_json["existing_medications"]&.map do |item|
|
573
|
+
item = item.to_json
|
574
|
+
CandidApiClient::Encounters::V4::Types::Medication.from_json(json_object: item)
|
575
|
+
end
|
576
|
+
if parsed_json["rendering_provider"].nil?
|
577
|
+
rendering_provider = nil
|
578
|
+
else
|
579
|
+
rendering_provider = parsed_json["rendering_provider"].to_json
|
580
|
+
rendering_provider = CandidApiClient::EncounterProviders::V2::Types::RenderingProviderUpdate.from_json(json_object: rendering_provider)
|
581
|
+
end
|
582
|
+
if parsed_json["service_facility"].nil?
|
583
|
+
service_facility = nil
|
584
|
+
else
|
585
|
+
service_facility = parsed_json["service_facility"].to_json
|
586
|
+
service_facility = CandidApiClient::ServiceFacility::Types::EncounterServiceFacilityUpdate.from_json(json_object: service_facility)
|
587
|
+
end
|
588
|
+
if parsed_json["guarantor"].nil?
|
589
|
+
guarantor = nil
|
590
|
+
else
|
591
|
+
guarantor = parsed_json["guarantor"].to_json
|
592
|
+
guarantor = CandidApiClient::Guarantor::V1::Types::GuarantorUpdate.from_json(json_object: guarantor)
|
593
|
+
end
|
594
|
+
if parsed_json["billing_provider"].nil?
|
595
|
+
billing_provider = nil
|
596
|
+
else
|
597
|
+
billing_provider = parsed_json["billing_provider"].to_json
|
598
|
+
billing_provider = CandidApiClient::EncounterProviders::V2::Types::BillingProviderUpdate.from_json(json_object: billing_provider)
|
599
|
+
end
|
600
|
+
if parsed_json["supervising_provider"].nil?
|
601
|
+
supervising_provider = nil
|
602
|
+
else
|
603
|
+
supervising_provider = parsed_json["supervising_provider"].to_json
|
604
|
+
supervising_provider = CandidApiClient::EncounterProviders::V2::Types::SupervisingProviderUpdate.from_json(json_object: supervising_provider)
|
605
|
+
end
|
606
|
+
if parsed_json["referring_provider"].nil?
|
607
|
+
referring_provider = nil
|
608
|
+
else
|
609
|
+
referring_provider = parsed_json["referring_provider"].to_json
|
610
|
+
referring_provider = CandidApiClient::EncounterProviders::V2::Types::ReferringProviderUpdate.from_json(json_object: referring_provider)
|
611
|
+
end
|
612
|
+
if parsed_json["initial_referring_provider"].nil?
|
613
|
+
initial_referring_provider = nil
|
614
|
+
else
|
615
|
+
initial_referring_provider = parsed_json["initial_referring_provider"].to_json
|
616
|
+
initial_referring_provider = CandidApiClient::EncounterProviders::V2::Types::InitialReferringProviderUpdate.from_json(json_object: initial_referring_provider)
|
617
|
+
end
|
618
|
+
referral_number = struct["referral_number"]
|
619
|
+
new(
|
620
|
+
diagnoses: diagnoses,
|
621
|
+
interventions: interventions,
|
622
|
+
external_claim_submission: external_claim_submission,
|
623
|
+
service_lines: service_lines,
|
624
|
+
patient_histories: patient_histories,
|
625
|
+
billing_notes: billing_notes,
|
626
|
+
benefits_assigned_to_provider: benefits_assigned_to_provider,
|
627
|
+
prior_authorization_number: prior_authorization_number,
|
628
|
+
external_id: external_id,
|
629
|
+
date_of_service: date_of_service,
|
630
|
+
tag_ids: tag_ids,
|
631
|
+
clinical_notes: clinical_notes,
|
632
|
+
pay_to_address: pay_to_address,
|
633
|
+
billable_status: billable_status,
|
634
|
+
responsible_party: responsible_party,
|
635
|
+
provider_accepts_assignment: provider_accepts_assignment,
|
636
|
+
synchronicity: synchronicity,
|
637
|
+
place_of_service_code: place_of_service_code,
|
638
|
+
appointment_type: appointment_type,
|
639
|
+
end_date_of_service: end_date_of_service,
|
640
|
+
subscriber_primary: subscriber_primary,
|
641
|
+
subscriber_secondary: subscriber_secondary,
|
642
|
+
additional_information: additional_information,
|
643
|
+
service_authorization_exception_code: service_authorization_exception_code,
|
644
|
+
admission_date: admission_date,
|
645
|
+
discharge_date: discharge_date,
|
646
|
+
onset_of_current_illness_or_symptom_date: onset_of_current_illness_or_symptom_date,
|
647
|
+
last_menstrual_period_date: last_menstrual_period_date,
|
648
|
+
delay_reason_code: delay_reason_code,
|
649
|
+
patient: patient,
|
650
|
+
patient_authorized_release: patient_authorized_release,
|
651
|
+
schema_instances: schema_instances,
|
652
|
+
vitals: vitals,
|
653
|
+
existing_medications: existing_medications,
|
654
|
+
rendering_provider: rendering_provider,
|
655
|
+
service_facility: service_facility,
|
656
|
+
guarantor: guarantor,
|
657
|
+
billing_provider: billing_provider,
|
658
|
+
supervising_provider: supervising_provider,
|
659
|
+
referring_provider: referring_provider,
|
660
|
+
initial_referring_provider: initial_referring_provider,
|
661
|
+
referral_number: referral_number,
|
662
|
+
additional_properties: struct
|
663
|
+
)
|
664
|
+
end
|
665
|
+
|
666
|
+
# Serialize an instance of ChargeCaptureData to a JSON object
|
667
|
+
#
|
668
|
+
# @return [String]
|
669
|
+
def to_json(*_args)
|
670
|
+
@_field_set&.to_json
|
671
|
+
end
|
672
|
+
|
673
|
+
# Leveraged for Union-type generation, validate_raw attempts to parse the given
|
674
|
+
# hash and check each fields type against the current object's property
|
675
|
+
# definitions.
|
676
|
+
#
|
677
|
+
# @param obj [Object]
|
678
|
+
# @return [Void]
|
679
|
+
def self.validate_raw(obj:)
|
680
|
+
obj.diagnoses&.is_a?(Array) != false || raise("Passed value for field obj.diagnoses is not the expected type, validation failed.")
|
681
|
+
obj.interventions&.is_a?(Array) != false || raise("Passed value for field obj.interventions is not the expected type, validation failed.")
|
682
|
+
obj.external_claim_submission.nil? || CandidApiClient::ClaimSubmission::V1::Types::ExternalClaimSubmissionCreate.validate_raw(obj: obj.external_claim_submission)
|
683
|
+
obj.service_lines&.is_a?(Array) != false || raise("Passed value for field obj.service_lines is not the expected type, validation failed.")
|
684
|
+
obj.patient_histories&.is_a?(Array) != false || raise("Passed value for field obj.patient_histories is not the expected type, validation failed.")
|
685
|
+
obj.billing_notes&.is_a?(Array) != false || raise("Passed value for field obj.billing_notes is not the expected type, validation failed.")
|
686
|
+
obj.benefits_assigned_to_provider&.is_a?(Boolean) != false || raise("Passed value for field obj.benefits_assigned_to_provider is not the expected type, validation failed.")
|
687
|
+
obj.prior_authorization_number&.is_a?(String) != false || raise("Passed value for field obj.prior_authorization_number is not the expected type, validation failed.")
|
688
|
+
obj.external_id&.is_a?(String) != false || raise("Passed value for field obj.external_id is not the expected type, validation failed.")
|
689
|
+
obj.date_of_service&.is_a?(Date) != false || raise("Passed value for field obj.date_of_service is not the expected type, validation failed.")
|
690
|
+
obj.tag_ids&.is_a?(Array) != false || raise("Passed value for field obj.tag_ids is not the expected type, validation failed.")
|
691
|
+
obj.clinical_notes&.is_a?(Array) != false || raise("Passed value for field obj.clinical_notes is not the expected type, validation failed.")
|
692
|
+
obj.pay_to_address.nil? || CandidApiClient::Commons::Types::StreetAddressLongZip.validate_raw(obj: obj.pay_to_address)
|
693
|
+
obj.billable_status&.is_a?(CandidApiClient::Encounters::V4::Types::BillableStatusType) != false || raise("Passed value for field obj.billable_status is not the expected type, validation failed.")
|
694
|
+
obj.responsible_party&.is_a?(CandidApiClient::Encounters::V4::Types::ResponsiblePartyType) != false || raise("Passed value for field obj.responsible_party is not the expected type, validation failed.")
|
695
|
+
obj.provider_accepts_assignment&.is_a?(Boolean) != false || raise("Passed value for field obj.provider_accepts_assignment is not the expected type, validation failed.")
|
696
|
+
obj.synchronicity&.is_a?(CandidApiClient::Encounters::V4::Types::SynchronicityType) != false || raise("Passed value for field obj.synchronicity is not the expected type, validation failed.")
|
697
|
+
obj.place_of_service_code&.is_a?(CandidApiClient::Commons::Types::FacilityTypeCode) != false || raise("Passed value for field obj.place_of_service_code is not the expected type, validation failed.")
|
698
|
+
obj.appointment_type&.is_a?(String) != false || raise("Passed value for field obj.appointment_type is not the expected type, validation failed.")
|
699
|
+
obj.end_date_of_service&.is_a?(Date) != false || raise("Passed value for field obj.end_date_of_service is not the expected type, validation failed.")
|
700
|
+
obj.subscriber_primary.nil? || CandidApiClient::Individual::Types::SubscriberCreate.validate_raw(obj: obj.subscriber_primary)
|
701
|
+
obj.subscriber_secondary.nil? || CandidApiClient::Individual::Types::SubscriberCreate.validate_raw(obj: obj.subscriber_secondary)
|
702
|
+
obj.additional_information&.is_a?(String) != false || raise("Passed value for field obj.additional_information is not the expected type, validation failed.")
|
703
|
+
obj.service_authorization_exception_code&.is_a?(CandidApiClient::Encounters::V4::Types::ServiceAuthorizationExceptionCode) != false || raise("Passed value for field obj.service_authorization_exception_code is not the expected type, validation failed.")
|
704
|
+
obj.admission_date&.is_a?(Date) != false || raise("Passed value for field obj.admission_date is not the expected type, validation failed.")
|
705
|
+
obj.discharge_date&.is_a?(Date) != false || raise("Passed value for field obj.discharge_date is not the expected type, validation failed.")
|
706
|
+
obj.onset_of_current_illness_or_symptom_date&.is_a?(Date) != false || raise("Passed value for field obj.onset_of_current_illness_or_symptom_date is not the expected type, validation failed.")
|
707
|
+
obj.last_menstrual_period_date&.is_a?(Date) != false || raise("Passed value for field obj.last_menstrual_period_date is not the expected type, validation failed.")
|
708
|
+
obj.delay_reason_code&.is_a?(CandidApiClient::Commons::Types::DelayReasonCode) != false || raise("Passed value for field obj.delay_reason_code is not the expected type, validation failed.")
|
709
|
+
obj.patient.nil? || CandidApiClient::Individual::Types::PatientUpdate.validate_raw(obj: obj.patient)
|
710
|
+
obj.patient_authorized_release&.is_a?(Boolean) != false || raise("Passed value for field obj.patient_authorized_release is not the expected type, validation failed.")
|
711
|
+
obj.schema_instances&.is_a?(Array) != false || raise("Passed value for field obj.schema_instances is not the expected type, validation failed.")
|
712
|
+
obj.vitals.nil? || CandidApiClient::Encounters::V4::Types::VitalsUpdate.validate_raw(obj: obj.vitals)
|
713
|
+
obj.existing_medications&.is_a?(Array) != false || raise("Passed value for field obj.existing_medications is not the expected type, validation failed.")
|
714
|
+
obj.rendering_provider.nil? || CandidApiClient::EncounterProviders::V2::Types::RenderingProviderUpdate.validate_raw(obj: obj.rendering_provider)
|
715
|
+
obj.service_facility.nil? || CandidApiClient::ServiceFacility::Types::EncounterServiceFacilityUpdate.validate_raw(obj: obj.service_facility)
|
716
|
+
obj.guarantor.nil? || CandidApiClient::Guarantor::V1::Types::GuarantorUpdate.validate_raw(obj: obj.guarantor)
|
717
|
+
obj.billing_provider.nil? || CandidApiClient::EncounterProviders::V2::Types::BillingProviderUpdate.validate_raw(obj: obj.billing_provider)
|
718
|
+
obj.supervising_provider.nil? || CandidApiClient::EncounterProviders::V2::Types::SupervisingProviderUpdate.validate_raw(obj: obj.supervising_provider)
|
719
|
+
obj.referring_provider.nil? || CandidApiClient::EncounterProviders::V2::Types::ReferringProviderUpdate.validate_raw(obj: obj.referring_provider)
|
720
|
+
obj.initial_referring_provider.nil? || CandidApiClient::EncounterProviders::V2::Types::InitialReferringProviderUpdate.validate_raw(obj: obj.initial_referring_provider)
|
721
|
+
obj.referral_number&.is_a?(String) != false || raise("Passed value for field obj.referral_number is not the expected type, validation failed.")
|
722
|
+
end
|
723
|
+
end
|
724
|
+
end
|
725
|
+
end
|
726
|
+
end
|
727
|
+
end
|