FHIR Bundle transactions and batches

Oracle FHIR includes a mechanism that can be used by a client to send multiple interactions to a server for processing. This mechanism uses the FHIR bundle resource as the transport, with a collection of one or more interactions grouped inside the bundle.

FHIR bundles are sent to the FHIR server using an HTTP POST to the base URL of the server. There are two modes of processing, as determined by the Bundle.type value.

  • Transaction: All operations in the bundle are executed as a single atomic database transaction. If any failures occur, the entire transaction is rolled back.
  • Batch: Each operation in the bundle is executed as an independent database transaction. Any processing failures may cause the specific interaction to be rolled back but will not affect other operations.

Mostly, transaction bundles are commonly used to post data to a server, since any HTTP REST operation is a process to be included in a transaction.