External System & Business Events Setup for OXI

External System Setup

In Opera go to Setup>System Configuration>Setup>Business Events>External Systems.

The external system ID for your interface has automatically been created at the moment you have entered the OXI 2-way license code. This is the interface user ID that Opera will use to recognize transactions from this external system.

Example:  This screen is just a sample. Please select your correct interface ID.

To see the details of External System highlighted. Select Edit button.

Note:  Make sure that the external system is ONLY being activated at the moment you are ready to start using the interface. Do not activate the external system while you are still configuring Opera and OXI, as this will create unnecessary business events that have to be deleted manually afterwards.

Button Functions

New. Enter a new external system ID – this is only necessary in case the OXI 2-way license code has not automatically presented the external system ID for use.

Delete. Remove the external system from the setup. To remove an interface, simply deactivate the external system ID.

Note: Any external system of type OXI, OXI-HUB, or BEXML cannot be deleted. When one is highlighted in the search results grid, the Delete button is grayed out from the Business Events>External Systems screen. All other external system types can be deleted.

Publisher. This option is used if the external system is also receiving transactions from another system than Opera. For example, you have a 2-way interface between Opera and external system and a 1-way interface from a second external system to Opera. All transactions that the 1-way is downloading to Opera shall be uploaded to the 2-way as well. This can be achieved by configuring the 1-way external system as Publisher to the 2-way. The 2-way would act as ‘Subscriber’ in this case, as it subscribes to data that originally came from the 1-way.

Note: Data transmission from Opera happens automatically as soon as business events are configured and the external system for the 2-way is activated.  The Publisher is only used to enable the data from an additional external system to be sent to your 2-way as well.

Business Events Setup

In Opera go to Setup>System Configuration>Setup>Business Events>External Systems>Configuration.

Business Events are required in Opera to send messages to an external system. What exact business events you need to configure depends entirely on the nature of the interface. If your interface transmits reservations and profiles to the external system, you need to configure reservation and profile business events. If rates and inventory have to be sent, you need to configure business events for rates and inventory, and so forth.

Example:  Sample of profile business event configuration.

Select your external system and the module you would like to configure business events for.

Example:  of data element selection within the business event NEW RESERVATION.

Selection of the Data Element Name is done by clicking in the X column to the left of the data element. Example: When a Data Element Name is selected here and an action is carried out in ORS that involves that data element, a business event is generated, which then becomes a message to the external system.

In the example above:  The module is RESERVATION and the business event is NEW RESERVATION, currently highlighted is the ADULTS data element name. When this data element is activated with an X; a new reservation with adults populated will trigger a business event, and thus a message to the external system. Once a data element in the business event is activated, it will be part of the business event record that is created each time a user performs an activity in Opera (e.g., create a new reservation). OXI_HUB will read the data from the business event outqueue table and will create a message from it, which is visible in the OXI_HUB message status table.

Another Example:  The other purpose of an active data element within a business event is that a message will be created as soon as the Opera user changes something in that particular element. Let's assume that you are changing the number of adults in an existing reservation in Opera, and nothing else. If ADULTS is an active data element in business element UPDATE RESERVATION, a business event record will now be created and OXI_HUB will create an upload message from it.

Stay Record Transfer between ORS/OCIS and Opera PMS

For proper Revenue Calculations and Point Calculation to be managed in OCIS the following configuration is required. Revenue types in ORS and Opera PMS  Revenue Bucket Codes have to be exactly the same as well as the Revenue Buckets Codes in ORS and Opera PMS. Or the stay data being transmitted will be staged, (Suspended Stays) or revenue not properly calculated.

Deposit Payments to Spirit Interface

Deposit payment data is sent to the SPIRIT interface by subscribing to the following business events: DELETE POSTING, NEW POSTING and UPDATE POSTING found under the Cashiering module for SPIRIT interface. Additionally, when using the SPIRIT Interface, the application parameter Reservations>Send Deposits To ORS will no longer be available.

Opera PMS Revenue Setup

In Opera PMS, go to Setup>System Configuration>Setup>Cashiering>Revenue Buckets>Bucket Types>SEARCH and make sure that there is Bucket type PROFILE.  Next you will need to setup up matching Bucket Codes in each system. Follow the same path above but once you get to Revenue Buckets select to go to Bucket Codes. Select the property as needed and Bucket Type PROFILE.

Example: Screen shot of ORS Bucket Code screen with the edit screen open for 1st entry


As shown in the sample screen shot above, the Revenue Bucket Type is PROFILE. The revenue bucket Code has to be a 3 numeric value. The Description field populated accordingly and all applicable transaction codes linked to the Revenue Bucket Code correctly.


Revenue Bucket Type. You must always have the type as PROFILE when creating New entries.

Code. You must always have a 3 numeric value.

Description. You can label according to the Transaction Codes you have linked (Room, Misc., F&B etc.)

Transaction Codes. You  link all transaction codes that generate this type of revenue to this Revenue Bucket code. Keep in mind that the transaction codes do not have to be the same between each system it is only the Revenue Bucket Code that must be the same in each system.

Note:  Do not forget that you will need a Revenue Bucket Code that will have ALL Payments linked to it. If the payments are not linked when a guest checks out of the hotel and Stay Data is sent to the ORS/OCIS database, then the amount of the guest stay will go up with a credit. This will cause a problem and the Stay record will staged with a Invalid Revenue Type.

Modifying Business Events in Opera PMS

A new business event action END OF PROCEDURES has been added to the NIGHT AUDIT business event. This action is fired when the state in the business date table is changed to NA_UDJA_COMPLETE. The purpose of this action is to notify OXI that the procedures in night audit have been executed so that OXI can perform any processing that is dependent on revenue/exports etc. and to accomodate situations where the business date is not closed during the Night Audit process. Interfaces that do NOT require statistical data (such as ACCOR) must be subscribed to the ROLL BUSINESS DATE business event. Interfaces that DO require statistical data (such as EZRMS) must have the END OF PROCEDURES for the NIGHT AUDIT business event active.

The batch will be closed and processed after each of these procedures respectively.

Go to Setup>System Configuration>Setup>Business Events>Configuration>select the External System>select Module of  NIGHT AUDIT>select SEARCH button.

1. Select Edit button and Delete the current entry of Roll Business Date.

2. Go back to Business Event field and add new entry of Close Business Date.

3. Save changes.

Notes from Opera to External System

Notes can now be setup in Opera to deliver to receiving systems. For those receiving systems the prerequisite is that the Note Type is the same, as no configuration is provided in the OXI Conversion Codes tables and that it can receive Notes in general.

In Opera:  Setup>Configuration>Setup>Notes

Account, Booking (Business Block), Contact (Individual/Contact), Event, Potential

Notes are completely configurable here. Sending the Notes out of the system we depend on the on screen parameters setup here. On screen parameters of ‘Internal’ and ‘Override Internal’ will be used to allow the Note to be sent or kept internal. Sample screen shot below shows Note type ‘Res’ under Account that is flagged with both.

Internal active only – note will not be sent to external system.

Internal not active only – note will be Global and can be sent to external system.

Override Internal active – working with the Internal flag, so that the Internal flag shows up on the Notes screen.

Combination of setup and results:

Example: Screen shot of Note within Account type.

Below is an example of Note Type that has been setup to allow for Internal and Override Internal screen flagging. Selecting to create a new Note, inside screen, the Internal and Global flags are available. To allow for the note to go to the external system un-check the Internal box and leave the Global box active.

Example:  Screen shot from Guest Profile creating a new note.

Retrieving Business Event XML from OPERA

A new servlet called BEInterface has been added to OXIServlets.war to retrieve Business Event XML output from Opera.

Usage Notes:

Example: URL: http://<servername>/Operajserv/OXIServlets/BEInterface?subscriberName=ORS&ignoreNullValue=0&showOldValue=1

HTTP return codes: 200 for success, 500 for internal errors on the server, 400 when a bad request is received from client.