Newer Version Available
Immunization
The Immunization FHIR resource maps to the
PatientImmunization and PatientHealthReaction objects in Salesforce.
FHIR V4.0 - Clinical Data Model Mapping
Here’s how the fields defined by FHIR for Immunization map to the fields in Salesforce.
| Immunization Resource | Salesforce Field | Type | Salesforce Cardinality | Notes |
|---|---|---|---|---|
| identifier | Identifier | Object | 0.M | The identifier information for an immunization is represented as Identifier records that reference the PatientImmunization record using their Identifier.ParentRecordId field. |
| status | PatientImmunization.Status | Picklist | 0.1 | While FHIR defines immunization.status as a code set bundle, the Salesforce implementation of PatientImmunization.Status is picklist. |
| statusReason | PatientImmunization.StatusReasonCodeId | Lookup: CodeSetBundle | 0.1 | N/A |
| vaccineCode | PatientImmunization.VaccineCodeId | Lookup: CodeSetBundle | 0.1 | N/A |
| patient | PatientImmunization.PatientId | Master-Detail Reference: Account | 1.1 | N/A |
| encounter | PatientImmunization.ClinicalEncounterId | Lookup: ClinicalEncounter | 0.1 | N/A |
| occurrence.occurrenceDateTime | PatientImmunization.VaccinationDate | DateTime | 0.1 | N/A |
| occurrence.occurrenceString | PatientImmunization.VaccinationPeriod | String | 0.1 | N/A |
| recorded | PatientImmunization.RecordCreationDateTime | DateTime | 0.1 | N/A |
| primarySource | PatientImmunization.IsRecordedByVaccinator | Boolean | 0.1 | N/A |
| reportOrigin | PatientImmunization.InformationSourceId | Lookup: CodeSetBundle | 0.1 | N/A |
| location | PatientImmunization.FacilityId | Lookup: Healthcare.Facility | 0.1 | N/A |
| manufacturer | PatientImmunization.Manufacturer | String | 0.1 | Use this field if only the name of the organization is required. |
| PatientImmunization.ManufacturerAccountId | Lookup: Account | N/A | ||
| lotNumber | PatientImmunization.LotNumber | String | 0.1 | N/A |
| expirationDate | PatientImmunization.ExpirationDate | DateTime | 0.1 | N/A |
| site | PatientImmunization.SiteId | Lookup: CodeSetBundle | 0.1 | N/A |
| route | PatientImmunization.RouteId | Lookup: CodeSetBundle | 0.1 | N/A |
| dose | PatientImmunization.Dose | Double | 0.1 | The Salesforce equivalent of immunization.dose is represented used the fields PatientImmunization.Dose for the quantity and PatientImmunization.DoseUnitId for the unit. |
| PatientImmunization.DoseUnitId | Lookup: UnitOfMeasure | 0.1 | ||
| performer | CarePerformer | Object | 0.M | The performer information for an immunization is represented as CarePerformer records that reference the PatientImmunization record using their CarePerformer.ParentRecordId field. |
| performer.function | CarePerformer.RoleId | Lookup: CodeSetBundle | 0.1 | N/A |
| performer.actor | PatientImmunization.PersonId | Polymorphic Lookup: Account and HealthcareProvider | 1.1 | N/A |
| note | N/A | N/A | N/A | Not supported |
| reasonCode | PatientImmunization.ReasonCodeId | Lookup: CodeSetBundle | 0.1 | N/A |
| reasonReference | PatientImmunization.HealthConditionId | Lookup: HealthCondition | 0.1 | The FHIR resourceimmunization.reasonReference is flattened into three separate zero-to-one references to HealthCondition, CareObservation, and DiagnosticSummary in the Salesforce implementation. |
| PatientImmunization.CareObservationId | Lookup: CareObservation | 0.1 | ||
| PatientImmunization.DiagnosticSummaryId | Lookup: DiagnosticSummary | 0.1 | ||
| isSubpotent | PatientImmunization.IsSubpotent | Boolean | 0.1 | N/A |
| subpotentReason | PatientImmunization.SubpotencyReasonCodeId | Lookup: CodeSetBundle | 0.1 | While FHIR defines immunization.subpotentReason as a zero-to-many resource, the Salesforce implementation of PatientImmunization.SubpotencyReasonCodeId is a zero-to-one reference. |
| education | N/A | N/A | N/A | Not supported |
| programEligibility | N/A | N/A | N/A | Not supported |
| fundingSource | N/A | N/A | N/A | Not supported |
| reaction | PatientHealthReaction | Object | 0.M | The reaction information for an immunization is represented as PatientHealthReaction records that reference the PatientImmunization record using their PatientHealthReaction.ParentId field. |
| reaction.date | PatientHealthReaction.ReactionDateTime | DateTime | 0.1 | N/A |
| reaction.detail | PatientHealthReaction.ObservationId | Lookup: CareObservation | 0.1 | N/A |
| reaction.reported | PatientHealthReaction.IsSelfReported | Boolean | 0.1 | N/A |
| protocolApplied | N/A | N/A | 0.1 | While FHIR defines immunization.protocolApplied as a zero-to-many reference, the Salesforce implementation of its child resources is zero-to-one. |
| protocolApplied.series | PatientImmunization.ImmunizationRecommendation | String | 0.1 | N/A |
| protocolApplied.authority | PatientImmunization.RecommendingAuthority | String | 0.1 | While FHIR defines immunization.protocolApplied.authority as a reference to organization, the Salesforce implementation of PatientImmunization.RecommendingAuthority is a text field. |
| protocolApplied.targetDisease | PatientImmunization.TargetDiseaseCodeId | Lookup: CodeSetBundle | 0.1 | N/A |
| protocolApplied.doseNumberPositiveInt | PatientImmunization.CurrentDose | Double | 0.1 | N/A |
| protocolApplied.doseNumberString | N/A | N/A | N/A | The Salesforce implementation of immunization.protocolApplied.doseNumber supports only integer values. |
| protocolApplied.seriesDosesPositiveInt | PatientImmunization.RecommendedDoses | Double | 0.1 | N/A |
| protocolApplied.seriesDosesString | N/A | N/A | N/A | The Salesforce implementation of immunization.protocolApplied.seriesDoses supports only integer values. |