Event catalog
This is the complete list of event_type values RCM can deliver to a subscription, whether over push webhooks or the pull API. Use it to decide what to put in subscribed_event_types.
RCM does not emit events for a provider until OSIGU enables them for that provider and environment. Sandbox and production are switched on independently. Before debugging a consumer that receives nothing, confirm with the Integrations team which families are active for your account.
Contract status
| Status | Meaning |
|---|---|
| Stable | Full payload spec published on this site. Field changes are announced in the changelog. |
| Preview | Emitted today, but the payload is not frozen: fields may be added, renamed or removed without a changelog entry. Subscribe explicitly and treat unknown fields as optional. |
subscribed_event_types means everythingA subscription created with subscribed_event_types: [] matches every event type in this catalog, including the preview families and the audit events. If you only want document outcomes, list them explicitly.
Stable events
event_type | entity_type | When it fires | Spec |
|---|---|---|---|
DOCUMENT_CLASSIFICATION_COMPLETED | support_document | DVS classified and associated a support file uploaded through the v2 auto-classify flow. | Classification |
DOCUMENT_CLASSIFICATION_FAILED | support_document | DVS could not classify or associate the file. | Classification |
DOCUMENT_VALIDATION_COMPLETED | support_file | The support file passed the payer's validation rules (APPROVED). | Validation |
DOCUMENT_VALIDATION_REJECTED | support_file | One or more validation rules failed (REJECTED). | Validation |
CHARGE_AUDIT_ACCEPTED | charge_audit_item | An Orizon RGA item was accepted as submitted. | Audit events |
CHARGE_AUDIT_UPDATED | charge_audit_item | The payer adjusted quantity or value of an item. | Audit events |
CHARGE_AUDIT_DELETED | charge_audit_item | The payer removed the item. | Audit events |
CHARGE_AUDIT_PENDING | charge_audit_item | The item is questioned and awaits justification. | Audit events |
ORIZON_RGA_RECEIVED | orizon_audit_report | A full RGA report arrived from Orizon, before per-item classification. | Audit events |
Preview events
These families follow the lifecycle of accounts, charges, invoices and settlement batches inside RCM. They are useful when your HIS or ERP wants to mirror RCM state without polling.
camelCaseThe envelope (event_id, event_type, created_at…) is always snake_case. The payload object of the preview families is delivered as RCM stores it, with camelCase keys such as accountId and agreementCode. Stable events keep the casing documented on their own pages.
Accounts (entity_type: account)
event_type | When it fires |
|---|---|
ACCOUNT_CREATED | The first charge of a new account was accepted and the account was created. |
ACCOUNT_SENT | The account was submitted to the payer. |
ACCOUNT_PACKAGED | The support-file package for the account was generated. |
ACCOUNT_INVOICED | The account received its invoice. Carries the list of enabled charges. |
ACCOUNT_PENDING_AUDIT | The account entered concurrent audit. |
ACCOUNT_AUDIT_COMPLETED | Concurrent audit finished. |
ACCOUNT_SETTLED | The account was settled with the payer. |
ACCOUNT_VOIDED | The account was voided. |
Key fields of the status events (ACCOUNT_SENT, ACCOUNT_PACKAGED, ACCOUNT_PENDING_AUDIT, ACCOUNT_AUDIT_COMPLETED, ACCOUNT_SETTLED, ACCOUNT_VOIDED): accountId, status, agreementCode, amount, providerSlug, providerBranchCode, payerId, payerName, baseAccount, baseAccountId, lastPatientId, lastPatientName, originEventId, supportFilesCompleted, missingSupports, concurrentAuditRequired, concurrentAuditCompleted, responsibleName, responsibleEmailAddress, uniqueVerificationCode, updatedAt.
ACCOUNT_CREATED adds patientId, patientName, serviceCode, serviceName, createdAt, createdBy. ACCOUNT_INVOICED adds charges[] (id, code, description, quantity, totalAmount, providerProductCode) and totalCharges.
Charges (entity_type: charge)
event_type | When it fires |
|---|---|
CHARGE_CREATED | A charge was accepted and stored. |
REFUND_CHARGE_CREATED | Same as above, when the charge has a negative total (a refund). |
CHARGE_UPDATED | A charge was modified through PUT /v1/charges/{chargeCode}. |
CHARGE_REJECTED | A charge failed RCM validation and was not stored. entity_id is a random UUID because no charge exists. |
Key fields: chargeId, chargeCode, description, providerProductCode, additionalProviderProductCode, quantity, amount, totalAmount, currency, invoiceable, manuallyCreated, enabled, creationDateTime, diagnosisCode, diagnosisName, accountId, providerSlug, providerBranchId, payerId, executorServiceCode, serviceTypeCode, agreementCode, createdAt.
CHARGE_REJECTED carries the request instead: chargeCode, rejectionReason, ruleApplied, rejectedAt, requestedProviderProductCode, requestedDescription, requestedQuantity, requestedAmount, requestedTotalAmount, requestedCurrency, originEventId, providerSlug, agreementCode, serviceTypeCode, diagnosisCode.
Invoices (entity_type: invoice)
event_type | When it fires |
|---|---|
INVOICE_CREATED | An invoice was created, or an existing one became ASSIGNED to an account. |
Key fields: invoiceId, invoiceNumber, invoiceSerial, invoicePrefix, electronicInvoiceNumber, status, amount, accountId, agreementCode, providerSlug, originProviderBranchCode, deliveryResponsible, invoiceSource, createdAt.
Invoice assignment (entity_type: invoice_assignment_status)
Emitted while RCM processes a POST /v1/invoices/assign-charges request.
event_type | When it fires |
|---|---|
INVOICE_ASSIGNMENT_PENDING | The assignment request was accepted and queued. |
INVOICE_ASSIGNMENT_COMPLETED | Every charge was assigned. |
INVOICE_ASSIGNMENT_ERROR | The assignment finished with errors. |
Key fields: invoiceAssignmentStatusId, status, invoiceNumber, settlementNumber, agreementCode, providerBranchId, invoiceMetadataPayload, providerSlug, timestamp. The counters totalCharges, processedCharges and errorCharges are present but not populated yet.
Invoice charge assignment (entity_type: invoice_charge_assignment_status)
One event per charge inside an assignment request.
event_type | When it fires |
|---|---|
INVOICE_CHARGE_ASSIGNMENT_PENDING | The charge is waiting to be assigned. |
INVOICE_CHARGE_ASSIGNMENT_ASSIGNED | The charge was assigned to the invoice. |
INVOICE_CHARGE_ASSIGNMENT_ERROR | The charge could not be assigned; see errorCode and errorDescription. |
Key fields: invoiceChargeAssignmentStatusId, status, chargeCode, attempts, errorCode, errorDescription, invoiceAssignmentStatusId, invoiceNumber, agreementCode, timestamp.
Settlement batches (entity_type: settlement_group)
A settlement group is the batch of invoices RCM delivers to a payer as one submission.
event_type | When it fires |
|---|---|
SETTLEMENT_GROUP_CREATED | The batch was assembled. |
SETTLEMENT_GROUP_SENT | The batch was delivered to the payer. |
SETTLEMENT_GROUP_SETTLED | The payer settled the batch. |
SETTLEMENT_GROUP_VOIDED | The batch was voided. |
Key fields: settlementGroupId, status, settlementNumber, deliveryResponsible, sentDate, providerSlug, originInvoiceGroupId, resolutionType, path, retryAttempts, nextRetryAt, timestamp.
Configuration (entity_type: provider_payer_configuration)
event_type | When it fires |
|---|---|
AUTOMATIC_SETTLEMENT_DELIVERY_ENABLED | Automatic settlement delivery was switched on for one of your agreements. |
Fields: agreementCode, agreementName, channel (RPA or Webservice), enabledDate.
Reserved names that are never delivered
You may see these names in RCM materials. They are declared but no flow emits them today; do not wait for them.
ACCOUNT_UPDATED, INVOICE_SENT, INVOICE_VOIDED, SETTLEMENT_CREATED, SETTLEMENT_DELIVERED, DOCUMENT_VALIDATION_FAILED.
DOCUMENT_VALIDATION_FAILED in particular is reserved for technical failures of the validation pipeline. Today a technical failure is retried internally and produces no event; only the business outcomes COMPLETED and REJECTED are delivered.
Next steps
- Introduction — delivery model, headers and envelope.
- Payload reference — field tables for the stable events.
- Create a subscription — where
subscribed_event_typesis set.