Post on 07-Apr-2020
Oracle® Hospitality OPERA Property Management
OPERA XML Posting Specifications Release 3.0
November 2018
2
Copyright © 2018, Oracle and/or its affiliates. All rights reserved.
This software and related documentation are provided under a license agreement containing
restrictions on use and disclosure and are protected by intellectual property laws. Except as
expressly permitted in your license agreement or allowed by law, you may not use, copy,
reproduce, translate, broadcast, modify, license, transmit, distribute, exhibit, perform, publish, or
display any part, in any form, or by any means. Reverse engineering, disassembly, or
decompilation of this software, unless required by law for interoperability, is prohibited.
The information contained herein is subject to change without notice and is not warranted to be
error-free. If you find any errors, please report them to us in writing.
If this software or related documentation is delivered to the U.S. Government or anyone licensing it
on behalf of the U.S. Government, then the following notice is applicable:
U.S. GOVERNMENT END USERS: Oracle programs, including any operating system, integrated
software, any programs installed on the hardware, and/or documentation, delivered to U.S.
Government end users are "commercial computer software" pursuant to the applicable Federal
Acquisition Regulation and agency-specific supplemental regulations. As such, use, duplication,
disclosure, modification, and adaptation of the programs, including any operating system,
integrated software, any programs installed on the hardware, and/or documentation, shall be
subject to license terms and license restrictions applicable to the programs. No other rights are
granted to the U.S. Government.
This software or hardware is developed for general use in a variety of information management
applications. It is not developed or intended for use in any inherently dangerous applications,
including applications that may create a risk of personal injury. If you use this software or
hardware in dangerous applications, then you shall be responsible to take all appropriate fail-safe,
backup, redundancy, and other measures to ensure its safe use. Oracle Corporation and its
affiliates disclaim any liability for any damages caused by use of this software or hardware in
dangerous applications.
Oracle and Java are registered trademarks of Oracle and/or its affiliates. Other names may be
trademarks of their respective owners.
Intel and Intel Xeon are trademarks or registered trademarks of Intel Corporation. All SPARC
trademarks are used under license and are trademarks or registered trademarks of SPARC
International, Inc. AMD, Opteron, the AMD logo, and the AMD Opteron logo are trademarks or
registered trademarks of Advanced Micro Devices. UNIX is a registered trademark of The Open
Group.
This software or hardware and documentation may provide access to or information about content,
products, and services from third parties. Oracle Corporation and its affiliates are not responsible
for and expressly disclaim all warranties of any kind with respect to third-party content, products,
and services unless otherwise set forth in an applicable agreement between you and Oracle. Oracle
Corporation and its affiliates will not be responsible for any loss, costs, or damages incurred due to
your access to or use of third-party content, products, or services, except as set forth in an
applicable agreement between you and Oracle.
Contents 3
Contents
Preface ....................................................................................................... 5
Audience .................................................................................................................................. 5
Customer Support ................................................................................................................... 5
Documentation ........................................................................................................................ 5
Revision History ...................................................................................................................... 5
1 Ifcws WSDL Information ..................................................................... 6
Ifcws WSDL ............................................................................................................................. 6
2 Process Command Supported Messages (inMsg) ................................ 8
PostInquiry Schema ................................................................................................................ 8
Example ............................................................................................................................. 8
PostRequest Schema ............................................................................................................... 9
Example ............................................................................................................................. 9
GuestMessage Schema ......................................................................................................... 16
Example ........................................................................................................................... 16
OPERA Responses to PostInquiry ...................................................................................... 17
PostList Response .......................................................................................................... 17
Example ........................................................................................................................... 17
PostAnswer Response ................................................................................................... 19
Example ........................................................................................................................... 20
OPERA Response to PostRequest ....................................................................................... 21
PostAnswer Response ................................................................................................... 21
Example ........................................................................................................................... 21
3 Answer Status Table .......................................................................... 23
4 Request Type Table ............................................................................ 24
5 XML Message Examples ..................................................................... 25
Post Inquiry with No Guests/Room found ........................................................................ 25
Request ................................................................................................................................... 25
Response ......................................................................................................................... 25
Post Inquiry Returning One Guest ..................................................................................... 25
Request ............................................................................................................................ 25
Response ......................................................................................................................... 25
Post Inquiry Returning Multiple Guests ............................................................................ 25
Request ............................................................................................................................ 25
Response ......................................................................................................................... 25
4 Preface
Post Request Posting to Guest 3 from above PostList (Ms Lucille Ball, Room 210) .... 26
Request ............................................................................................................................ 26
Response ......................................................................................................................... 26
Post Request Posting to Guest 1 from above PostList (Baggins, Room 311) - NO
CREDIT................................................................................................................................... 26
Request ............................................................................................................................ 26
Response ......................................................................................................................... 26
Post Request Posting for Cash/Credit Card (Non-Room charge) -PostInquiry is not
required. ................................................................................................................................. 26
Request ............................................................................................................................ 27
Response ......................................................................................................................... 27
Ifcws WSDL Information 5
Preface
This document contains information on the Ifcws WSDL and its expected posting type
functionality.
Audience This document is intended for those developing custom applications that interact with
the IFC Process Command messages functionality.
Customer Support To contact Oracle Customer Support, access My Oracle Support at the following URL:
https://support.oracle.com
When contacting Customer Support, please provide the following:
Product version and program/module name
Tenant\Organization code
Functional and technical description of the problem (include business impact)
Detailed step-by-step instructions to re-create
Exact error message received and any associated log files
Screen shots of each step you take
Documentation Oracle Hospitality product documentation is available on the Oracle Help Center at
http://docs.oracle.com/en/industries/hospitality/
Revision History
Date Description of Change
November 2018 Initial publication
6 Ifcws WSDL Information
1 Ifcws WSDL Information
Ifcws WSDL Use of this WebService requires an OPERA Property Interface configured that is an
XML IFC Type.
The WSDL (Web Services Description Language) used for this functionality and
displayed below can be found at http(s)://appserver/Operajserv/Ifc8ws/Ifcws?WSDL,
where appserver is the local OPERA application server name.
IFC WSDL
<?xml version = '1.0' encoding = 'UTF-8'?>
<!--Generated by the Oracle JDeveloper Web Services WSDL Generator-->
<!--Date Created: Fri Jan 12 10:52:01 EST 2007-->
<definitions
name="Ifcws"
targetNamespace="http://ifcws/Ifcws.wsdl"
xmlns="http://schemas.xmlsoap.org/wsdl/"
xmlns:xsd="http://www.w3.org/2001/XMLSchema"
xmlns:soap="http://schemas.xmlsoap.org/wsdl/soap/"
xmlns:tns="http://ifcws/Ifcws.wsdl"
xmlns:ns1="http://ifcws/Ifcws.xsd">
<types>
<schema
targetNamespace="http://ifcws/Ifcws.xsd"
xmlns:SOAP-ENC="http://schemas.xmlsoap.org/soap/encoding/"
xmlns="http://www.w3.org/2001/XMLSchema">
<complexType name="ifcws_IfcwsImpl_processCommand_Out"
jdev:packageName="ifcws"
xmlns:jdev="http://xmlns.oracle.com/jdeveloper/webservices">
<all>
<element name="outmsgOut" type="string"/>
<element name="outerrcodeOut" type="decimal"/>
<element name="outerrmsgOut" type="string"/>
</all>
</complexType>
</schema>
</types>
<message name="processCommand0Request">
<part name="inConnectStr" type="xsd:string"/>
<part name="inUser" type="xsd:string"/>
<part name="inPsw" type="xsd:string"/>
<part name="inResort" type="xsd:string"/>
<part name="inRowId" type="xsd:decimal"/>
<part name="inMsg" type="xsd:string"/>
</message>
<message name="processCommand0Response">
<part name="return" type="ns1:ifcws_IfcwsImpl_processCommand_Out"/>
</message>
<portType name="IfcwsPortType">
<operation name="processCommand">
<input name="processCommand0Request"
message="tns:processCommand0Request"/>
<output name="processCommand0Response"
message="tns:processCommand0Response"/>
</operation>
</portType>
<binding name="IfcwsBinding" type="tns:IfcwsPortType">
Ifcws WSDL Information 7
<soap:binding style="rpc"
transport="http://schemas.xmlsoap.org/soap/http"/>
<operation name="processCommand">
<soap:operation soapAction="" style="rpc"/>
<input name="processCommand0Request">
<soap:body use="encoded" namespace="Ifcws"
encodingStyle="http://schemas.xmlsoap.org/soap/encoding/"/>
</input>
<output name="processCommand0Response">
<soap:body use="encoded" namespace="Ifcws"
encodingStyle="http://schemas.xmlsoap.org/soap/encoding/"/>
</output>
</operation>
</binding>
<service name="Ifcws">
<port name="IfcwsPort" binding="tns:IfcwsBinding">
<soap:address location="http://johnu:8888/IFC8WS/Ifcws"/>
</port>
</service>
</definitions>
Depending on how the XML is structured, the CDATA content may be needed to
interpret the element (inMsg) as character data:
Example –
<inMsg>><![CDATA[<]]>PostInquiry xmlns="x-schema:PostInquirySchema_I"
PostInformation="test" MaximumGuestsNum="16" PaymentMethod="16"
CreditlimitOverride="" WSNum="1" PostNum="45" RequestType="15"
Date="180419" Time="110736"/<![CDATA[>]]></inMsg>
For OPERA Cloud, the wsdl can be found on https://ServiceBus or Middleware
Layer/OPERA9OSB/schema/OperaIFCServices/IFCInternalService?wsdl
For additional security a username and password for the OPERA application can be
created by the OPERA Installation Specialist. This username and password is
provided to the vendor for populating the tags for inUser and inPsw. These are
provided to the WebService in order to validate and process the incoming requests.
This is mandatory with OPERA versions lower than 5.0.04.01. This username and
password does need to abide by PA-DSS requirements whereby the password needs
to be changed every 90 days. If it is not changed, the password will expire and
postings will be rejected. As of OPERA version 5.0.04.00E9 and higher, this is not
mandatory and inUser and inPsw can be null. With OPERA Cloud endpoint it is
mandatory.
Not all attributes in the messages are available for all Partners to consume. Please
check with your Product Manager.
8 Process Command Supported Messages (inMsg)
2 Process Command Supported Messages (inMsg)
PostInquiry Schema To query OPERA for a guest by room number or name.
Required for Guest Room Postings.
If a match is made, the response is a PostList message containing a list of guests that can
be posted to. If there is no match, the response is a PostAnswer.
Example
<PostInquiry xmlns="x-schema:PostInquirySchema_I" PostInformation="125"
MaximumGuestsNum="20" PaymentMethod=”401” WSNum="000000201" PostNum="24 "
RequestType="15" Date="130422" Time="094445"/>
Note: For additional sample messages, refer to XML
Message Examples. For a full list of PostRequest request
types, refer to the Request Type Table.
PostInquiry
<Schema name="PostInquirySchema_I" xmlns="urn:schemas-microsoft-
com:xml-data">
<ElementType name="PostInquiry" model="closed">
<AttributeType name="PostInformation"/>
<attribute type="PostInformation"/>
<AttributeType name="MaximumGuestsNum"/>
<attribute type="MaximumGuestsNum"/>
<AttributeType name="PaymentMethod"/>
<attribute type="PaymentMethod"/>
<AttributeType name="WSNum"/>
<attribute type="WSNum"/>
<AttributeType name="PostNum"/>
<attribute type="PostNum"/>
<AttributeType name="RequestType"/>
<attribute type="RequestType"/>
<AttributeType name="Date"/>
<attribute type="Date"/>
<AttributeType name="Time"/>
<attribute type="Time"/>
</ElementType>
</Schema>
Name Type Data Type Use Comment
PostInformation Attribute string required Information for the
inquiry (Room
Number/Partial
Name).
MaximumGuestsNum Attribute number optional The maximum number
of guests returned in
PostList.
Process Command Supported Messages (inMsg) 9
PostInquiry
PaymentMethod
Attribute string
optional The tender key used on
the vendor system.
WSNum Attribute string required The workstation
number on the vendor
system used to identify
where request came
from.
PostNum Attribute string required The posting sequence
number.
RequestType Attribute number required Refer to the Request
Types Table, below.
Date Attribute string required The system date of the
vendor system
YYMMDD
Time Attribute string required The system time of the
vendor system
24HHMISS
PostRequest Schema Posting record following the PostInquiry for Guest Room Posting. Data in the
PostRequest is based on the results in the PostList response for the PostInquiry.
PostRequest can be sent for non-room postings without a corresponding PostInquiry.
Example
<PostRequest xmlns="x-schema:PostRequestSchema_I" RoomNum="125" GuestNum=""
GuestName="Testname" PostInformation="125" PostListItemNum="1" RequestType="4"
InvoiceNumber="" ArAcctNumber="" TotalAmount="4505" PaymentMethod="16" Covers="2"
SalesOutlet="1" ServingTime="1" CheckNum="12345678" PostNum="1234"
Subtotal1="2000" Subtotal2="500" Subtotal3="250" Subtotal4="150" Subtotal5="1000"
Subtotal6="" Subtotal7="" Subtotal8="" Subtotal9="" Subtotal10="" Subtotal11=""
Subtotal12="" Subtotal13="" Subtotal14="" Subtotal15="" Subtotal16=""
ServiceCharge1="100" ServiceCharge2="" ServiceCharge3="" ServiceCharge4=""
ServiceCharge5="" ServiceCharge6="" ServiceCharge7="" ServiceCharge8="" Tax1="120"
Tax2="385" Tax3="" Tax4="" Tax5="" Tax6="" Tax7="" Tax8="" Tax9="" Tax10=""
Tax11="" Tax12="" Tax13="" Tax14="" Tax15="" Tax16="" Tax17="" Tax18="" Tax19=""
Tax20="" Tax21="" Tax22="" Tax23="" Tax24="" Tax25="" Tax26="" Tax27="" Tax28=""
Tax29="" Tax30="" Tax31="" Tax32="" Tax33="" Tax34="" Tax35="" Tax36="" Tax37=""
Tax38="" Tax39="" Tax40="" Tax41="" Tax42="" Tax43="" Tax44="" Tax45="" Tax46=""
Tax47="" Tax48="" Tax49="" Tax50="" Tax51="" Tax52="" Tax53="" Tax54="" Tax55=""
Tax56="" Tax57="" Tax58="" Tax59="" Tax60="" Tax61="" Tax62="" Tax63=""
Discount1="" Discount2="" Discount3="" Discount4="" Discount5="" Discount6=""
Discount7="" Discount8="" Discount9="" Discount10="" Discount11="" Discount12=""
Discount13="" Discount14="" Discount15="" Discount16="" PostType="C"
UserID="Waiter_1" WSNum="000000201" Date="181120" Time="110334"/>
10 Process Command Supported Messages (inMsg)
Note: For additional sample messages, refer to XML
Message Examples. For a full list of PostRequest request
types, refer to the Request Type Table.
Note: InvoiceNumber should not be populated unless the
vendor supports specific functionality in OPERA to post to
an existing Invoice of a checked out reservation. The Vendor
must have knowledge of the OPERA InvoiceNumber from
another source. It is not provided in the responses found
here. PostRequest using InvoiceNumber does not require a
PostInquiry.
PostRequest
<Schema name="PostRequestSchema_I" xmlns="urn:schemas-microsoft-
com:xml-data">
<ElementType name="PostRequest" model="closed">
<AttributeType name="RoomNum"/>
<attribute type="RoomNum"/>
<AttributeType name="GuestName"/>
<attribute type="GuestName"/>
<AttributeType name="PostInformation"/>
<attribute type="PostInformation"/>
<AttributeType name="GuestNum"/>
<attribute type="GuestNum"/>
<AttributeType name="InvoiceNumber"/>
<attribute type="InvoiceNumber"/>
<AttributeType name="ArAcctNumber"/>
<attribute type="ArAcctNumber"/>
<AttributeType name="PostListItemNum"/>
<attribute type="PostListItemNum"/>
<AttributeType name="RequestType"/>
<attribute type="RequestType"/>
<AttributeType name="TotalAmount"/>
<attribute type="TotalAmount"/>
<AttributeType name="PaymentMethod"/>
<attribute type="PaymentMethod"/>
<AttributeType name="Covers"/>
<attribute type="Covers"/>
<AttributeType name="SalesOutlet"/>
<attribute type="SalesOutlet"/>
<AttributeType name="ServingTime"/>
<attribute type="ServingTime"/>
<AttributeType name="CheckNum"/>
<attribute type="CheckNum"/>
<AttributeType name="PostNum"/>
<attribute type="PostNum"/>
<AttributeType name="Subtotal1"/>
<attribute type="Subtotal1"/>
<AttributeType name="Subtotal2"/>
<attribute type="Subtotal2"/>
<AttributeType name="Subtotal3"/>
<attribute type="Subtotal3"/>
<AttributeType name="Subtotal4"/>
<attribute type="Subtotal4"/>
<AttributeType name="Subtotal5"/>
<attribute type="Subtotal5"/>
<AttributeType name="Subtotal6"/>
Process Command Supported Messages (inMsg) 11
PostRequest
<attribute type="Subtotal6"/>
<AttributeType name="Subtotal7"/>
<attribute type="Subtotal7"/>
<AttributeType name="Subtotal8"/>
<attribute type="Subtotal8"/>
<AttributeType name="Subtotal9"/>
<attribute type="Subtotal9"/>
<AttributeType name="Subtotal10"/>
<attribute type="Subtotal10"/>
<AttributeType name="Subtotal11"/>
<attribute type="Subtotal11"/>
<AttributeType name="Subtotal12"/>
<attribute type="Subtotal12"/>
<AttributeType name="Subtotal13"/>
<attribute type="Subtotal13"/>
<AttributeType name="Subtotal14"/>
<attribute type="Subtotal14"/>
<AttributeType name="Subtotal15"/>
<attribute type="Subtotal15"/>
<AttributeType name="Subtotal16"/>
<attribute type="Subtotal16"/>
<AttributeType name="ServiceCharge1"/>
<attribute type="ServiceCharge1"/>
<AttributeType name="ServiceCharge2"/>
<attribute type="ServiceCharge2"/>
<AttributeType name="ServiceCharge3"/>
<attribute type="ServiceCharge3"/>
<AttributeType name="ServiceCharge4"/>
<attribute type="ServiceCharge4"/>
<AttributeType name="ServiceCharge5"/>
<attribute type="ServiceCharge5"/>
<AttributeType name="ServiceCharge6"/>
<attribute type="ServiceCharge6"/>
<AttributeType name="ServiceCharge7"/>
<attribute type="ServiceCharge7"/>
<AttributeType name="ServiceCharge8"/>
<attribute type="ServiceCharge8"/>
<AttributeType name="Tax1"/>
<attribute type="Tax1"/>
<AttributeType name="Tax2"/>
<attribute type="Tax2"/>
<AttributeType name="Tax3"/>
<attribute type="Tax3"/>
<AttributeType name="Tax4"/>
<attribute type="Tax4"/>
<AttributeType name="Tax5"/>
<attribute type="Tax5"/>
<AttributeType name="Tax6"/>
<attribute type="Tax6"/>
<AttributeType name="Tax7"/>
<attribute type="Tax7"/>
<AttributeType name="Tax8"/>
<attribute type="Tax8"/>
<AttributeType name="Tax9"/>
<attribute type="Tax9"/>
<AttributeType name="Tax10"/>
<attribute type="Tax10"/>
<AttributeType name="Tax11"/>
<attribute type="Tax11"/>
<AttributeType name="Tax12"/>
12 Process Command Supported Messages (inMsg)
PostRequest
<attribute type="Tax12"/>
<AttributeType name="Tax13"/>
<attribute type="Tax13"/>
<AttributeType name="Tax14"/>
<attribute type="Tax14"/>
<AttributeType name="Tax15"/>
<attribute type="Tax15"/>
<AttributeType name="Tax16"/>
<attribute type="Tax16"/>
<AttributeType name="Tax17"/>
<attribute type="Tax17"/>
<AttributeType name="Tax18"/>
<attribute type="Tax18"/>
<AttributeType name="Tax19"/>
<attribute type="Tax19"/>
<AttributeType name="Tax20"/>
<attribute type="Tax20"/>
<AttributeType name="Tax21"/>
<attribute type="Tax21"/>
<AttributeType name="Tax22"/>
<attribute type="Tax22"/>
<AttributeType name="Tax23"/>
<attribute type="Tax23"/>
<AttributeType name="Tax24"/>
<attribute type="Tax24"/>
<AttributeType name="Tax25"/>
<attribute type="Tax25"/>
<AttributeType name="Tax26"/>
<attribute type="Tax26"/>
<AttributeType name="Tax27"/>
<attribute type="Tax27"/>
<AttributeType name="Tax28"/>
<attribute type="Tax28"/>
<AttributeType name="Tax29"/>
<attribute type="Tax29"/>
<AttributeType name="Tax30"/>
<attribute type="Tax30"/>
<AttributeType name="Tax31"/>
<attribute type="Tax31"/>
<AttributeType name="Tax32"/>
<attribute type="Tax32"/>
<AttributeType name="Tax33"/>
<attribute type="Tax33"/>
<AttributeType name="Tax34"/>
<attribute type="Tax34"/>
<AttributeType name="Tax35"/>
<attribute type="Tax35"/>
<AttributeType name="Tax36"/>
<attribute type="Tax36"/>
<AttributeType name="Tax37"/>
<attribute type="Tax37"/>
<AttributeType name="Tax38"/>
<attribute type="Tax38"/>
<AttributeType name="Tax39"/>
<attribute type="Tax39"/>
<AttributeType name="Tax40"/>
<attribute type="Tax40"/>
<AttributeType name="Tax41"/>
<attribute type="Tax41"/>
<AttributeType name="Tax42"/>
Process Command Supported Messages (inMsg) 13
PostRequest
<attribute type="Tax42"/>
<AttributeType name="Tax43"/>
<attribute type="Tax43"/>
<AttributeType name="Tax44"/>
<attribute type="Tax44"/>
<AttributeType name="Tax45"/>
<attribute type="Tax45"/>
<AttributeType name="Tax46"/>
<attribute type="Tax46"/>
<AttributeType name="Tax47"/>
<attribute type="Tax47"/>
<AttributeType name="Tax48"/>
<attribute type="Tax48"/>
<AttributeType name="Tax49"/>
<attribute type="Tax49"/>
<AttributeType name="Tax50"/>
<attribute type="Tax50"/>
<AttributeType name="Tax51"/>
<attribute type="Tax51"/>
<AttributeType name="Tax52"/>
<attribute type="Tax52"/>
<AttributeType name="Tax53"/>
<attribute type="Tax53"/>
<AttributeType name="Tax54"/>
<attribute type="Tax54"/>
<AttributeType name="Tax55"/>
<attribute type="Tax55"/>
<AttributeType name="Tax56"/>
<attribute type="Tax56"/>
<AttributeType name="Tax57"/>
<attribute type="Tax57"/>
<AttributeType name="Tax58"/>
<attribute type="Tax58"/>
<AttributeType name="Tax59"/>
<attribute type="Tax59"/>
<AttributeType name="Tax60"/>
<attribute type="Tax60"/>
<AttributeType name="Tax61"/>
<attribute type="Tax61"/>
<AttributeType name="Tax62"/>
<attribute type="Tax62"/>
<AttributeType name="Tax63"/>
<attribute type="Tax63"/>
<AttributeType name="Discount1"/>
<attribute type="Discount1"/>
<AttributeType name="Discount2"/>
<attribute type="Discount2"/>
<AttributeType name="Discount3"/>
<attribute type="Discount3"/>
<AttributeType name="Discount4"/>
<attribute type="Discount4"/>
<AttributeType name="Discount5"/>
<attribute type="Discount5"/>
<AttributeType name="Discount6"/>
<attribute type="Discount6"/>
<AttributeType name="Discount7"/>
<attribute type="Discount7"/>
<AttributeType name="Discount8"/>
<attribute type="Discount8"/>
<AttributeType name="Discount9"/>
14 Process Command Supported Messages (inMsg)
PostRequest
<attribute type="Discount9"/>
<AttributeType name="Discount10"/>
<attribute type="Discount10"/>
<AttributeType name="Discount11"/>
<attribute type="Discount11"/>
<AttributeType name="Discount12"/>
<attribute type="Discount12"/>
<AttributeType name="Discount13"/>
<attribute type="Discount13"/>
<AttributeType name="Discount14"/>
<attribute type="Discount14"/>
<AttributeType name="Discount15"/>
<attribute type="Discount15"/>
<AttributeType name="Discount16"/>
<attribute type="Discount16"/>
<AttributeType name="PostType"/>
<attribute type="PostType"/>
<AttributeType name="UserID"/>
<attribute type="UserID"/>
<AttributeType name="WSNum"/>
<attribute type="WSNum"/>
<AttributeType name="Date"/>
<attribute type="Date"/>
<AttributeType name="Time"/>
<attribute type="Time"/>
</ElementType>
</Schema>
Name Type Data Type Use Comment
RoomNum Attribute string required The room number of
the guest.
GuestName Attribute string optional The name of the guest.
PostInformation Attribute string required Same as PostInquiry.
GuestNum Attribute Number optional Resv_name_id in
OPERA
InvoiceNumber Attribute Number optional *DNU unless
supporting specific
functionality
ArAcctNumber Attribute string optional *used with
InvoiceNumber.
Account Receivable
number in OPERA
PostListItemNum Attribute Number required The number assigned
to the guest in the
PostList used.
RequestType Attribute number required Refer to the Request
Types Table, below.
Process Command Supported Messages (inMsg) 15
PostRequest
TotalAmount Attribute Number required The total amount of the
check, including tax
and gratuity.
PaymentMethod Attribute string optional The tender key that
was used on the POS.
Covers Attribute string optional The number of covers
on this check.
SalesOutlet Attribute string optional The sales outlet or
revenue center that
generated this charge.
ServingTime Attribute string optional The serving period that
the check was opened
under.
CheckNum Attribute string optional The check number.
PostNum Attribute string required The posting sequence
number.
Subtotal 1 - 16 Attribute number optional Individual subtotals for
sales items.
Tax 1 - 63 Attribute number optional Individual tax items for
different taxes.
ServiceCharge 1 - 8 Attribute number optional Used to hold
additional gratuity.
Discount 1 - 16 Attribute number optional Individual discount
totals for different
discounts.
PostType Attribute string required Should be sent as "C"
for charge.
UserID Attribute string optional The user ID from the
vendor system.
WSNum Attribute string required The workstation
number of the vendor
system.
Date Attribute string required The system date from
the vendor system
YYMMDD
Time Attribute string required The system time from
the vendor system
24HHMISS
16 Process Command Supported Messages (inMsg)
GuestMessage Schema GuestMessageSchema_I messages can be used for two reasons. If the RequestType and
CrossReferencexx elements are used, the message may be used in conjuction with TrackIt
(in OPERA) to track packages using the PacTrac interface. If the RequestType and
CrossReferencexx elements are not used, GuestMessageSchema_I messages may be used
as simple text messages to the guest. There is no response message from OPERA for a
GuestMessage.
Note: There may be numerous CrossReferencexx elements
used within the same message. CrossReferencexx elements
may be used for a multitude of purposes and may vary from
message to message. For a full list of Guest message request
types, refer to the Request Type Table.
Example
<GuestMess xmlns="x-schema:GuestMessSchema_I" TransNum="888777" RequestType="1"
EquipmentStatus="OPEN" GuestNum="1327897" MessageText="Musical Equipment"
CrossReference0="ODH" CrossReference1="BS" CrossReference2="TODO"
CrossReference3="Y" CrossReference4="FEDEX" Date="070611" Time="134411"/>
GuestMessageSchema_I
<Schema name="GuestMessSchema_I" xmlns="urn:schemas-microsoft-com:xml-
data">
<ElementType name="GuestMess" model="closed">
<AttributeType name="TransNum"/>
<attribute type="TransNum"/>
<AttributeType name="RequestType"/>
<attribute type="RequestType"/>
<AttributeType name="EquipmentStatus"/>
<attribute type="EquipmentStatus"/>
<AttributeType name="GuestNum"/>
<attribute type="GuestNum"/>
<AttributeType name="MessageText"/>
<attribute type="MessageText"/>
<AttributeType name="CrossReference0"/>
<attribute type="CrossReference0"/>
<AttributeType name="CrossReference1"/>
<attribute type="CrossReference1"/>
<AttributeType name="CrossReference2"/>
<attribute type="CrossReference2"/>
<AttributeType name="CrossReference3"/>
<attribute type="CrossReference3"/>
<AttributeType name="CrossReference4"/>
<attribute type="CrossReference4"/>
<AttributeType name="Date"/>
<attribute type="Date"/>
<AttributeType name="Time"/>
<attribute type="Time"/>
</ElementType>
</Schema>
Name Type Data Type Use Comment
TransNum Attribute string optional The transaction number.
Process Command Supported Messages (inMsg) 17
RequestType Attribute string optional The request type.
EquipmentStatus Attribute string optional The status of the message.
OPEN or CLOSED
GuestNum Attribute string required The guest number in OPERA.
MessageText Attribute string required The simple text message.
CrossReference0 Attribute string optional The resort code.
CrossReference1 Attribute string optional The location of package.
CrossReference2 Attribute string optional The type of action that should
be taken.
CrossReference3 Attribute string optional Message creation indicator
(Y/N). “Y” indicates that the
message should be created.
CrossReference4 Attribute string optional The type of package.
Date Attribute string required The date stamp YYMMDD
Time Attribute string required The time stamp 24HHMISS
OPERA Responses to PostInquiry
PostList Response
Outgoing message that holds an array of PostListItems containing guest/room data as a
response to the PostInquiry.
Example
<PostList xmlns="x-schema:PostListSchema_O" WSNum="000000201"
PostNum="24"><PostListItem RoomNum="125" GuestNum="5651457" GuestName="Busey"
GuestFormattedname="(EN) Mr Busey" DefRef2="" DefRef3="" DefRef4="" DefRef5=""
DefRef6="" DefRef7="" DefRef8="" DefRef9="" DefRef10=""/></PostList>
Note: For additional sample messages, refer to XML
Message Examples.
18 Process Command Supported Messages (inMsg)
PostList
<Schema name="PostListSchema_O" xmlns="urn:schemas-microsoft-com:xml-
data">
<ElementType name="PostListItem" model="closed">
<AttributeType name="RoomNum" required="yes"/>
<attribute type="RoomNum"/>
<AttributeType name="GuestNum" required="yes"/>
<attribute type="GuestNum"/>
<AttributeType name="GuestName"/>
<attribute type="GuestName"/>
<AttributeType name="GuestFormattedname"/>
<attribute type="GuestFormattedname"/>
<AttributeType name="DefRef2"/>
<attribute type="DefRef2"/>
<AttributeType name="DefRef3"/>
<attribute type="DefRef3"/>
<AttributeType name="DefRef4"/>
<attribute type="DefRef4"/>
<AttributeType name="DefRef5"/>
<attribute type="DefRef5"/>
<AttributeType name="DefRef6"/>
<attribute type="DefRef6"/>
<AttributeType name="DefRef7"/>
<attribute type="DefRef7"/>
<AttributeType name="DefRef8"/>
<attribute type="DefRef8"/>
<AttributeType name="DefRef9"/>
<attribute type="DefRef9"/>
<AttributeType name="DefRef10"/>
</ElementType>
<ElementType name="PostList" model="closed">
<AttributeType name="WSNum"/>
<attribute type="WSNum"/>
<AttributeType name="PostNum"/>
<attribute type="PostNum"/>
<element type="PostListItem" maxOccurs="*"/>
</ElementType>
</Schema>
Name Type Data Type Use Comment
WSNum Attribute string required The workstation number
from the PostInquiry.
PostNum Attribute string required The PostNum from the
PostInquiry.
PostListItem Element string required Guest/Room information
for the inquiry.
Process Command Supported Messages (inMsg) 19
PostList
RoomNum Attribute string required The room number of the
guest.
GuestNum Attribute string required Resv_name_id in OPERA.
GuestName Attribute string required The guest’s name.
GuestFormattedName Attribute string required The user defined name
format. This should be
used for display to the
POS user.
DefRef 2 Attribute string optional Additional user defined
fields to be displayed to
the user.
DefRef 3 Attribute string optional Additional user defined
fields to be displayed to
the user.
DefRef 4 Attribute string optional Additional user defined
fields to be displayed to
the user.
DefRef 5 Attribute string optional Additional user defined
fields to be displayed to
the user.
DefRef 6 Attribute string optional Additional user defined
fields to be displayed to
the user.
DefRef 7 Attribute string optional Additional user defined
fields to be displayed to
the user.
DefRef 8 Attribute string optional Additional user defined
fields to be displayed to
the user.
DefRef 9 Attribute string optional Additional user defined
fields to be displayed to
the user.
DefRef 10 Attribute string optional Additional user defined
fields to be displayed to
the user.
PostAnswer Response
The response message to a PostInquiry when no data is found in PMS.
20 Process Command Supported Messages (inMsg)
Example
<PostAnswer xmlns="x-schema:PostAnswerSchema_O" RoomNum=”” GuestName=“” UserID=””
WSNum="000000201" PostNum="24" AnswerStat="NG" BusinessDate=”130422”
ClearText="Guest not found."/>
Note: For additional sample messages, refer to XML
Message Examples.
PostAnswer
<Schema name="PostAnswerSchema_O" xmlns="urn:schemas-microsoft-com:xml-
data">
<ElementType name="PostAnswer" model="closed">
<AttributeType name="RoomNum"/>
<attribute type="RoomNum"/>
<AttributeType name="GuestName"/>
<attribute type="GuestName"/>
<AttributeType name="AnswerStat" required="yes"/>
<attribute type="AnswerStat"/>
<AttributeType name="BusinessDate"/>
<attribute type="BusinessDate"/>
<AttributeType name="ClearText"/>
<attribute type="ClearText"/>
<AttributeType name="PostNum"/>
<attribute type="PostNum"/>
<AttributeType name="UserID"/>
<attribute type="UserID"/>
<AttributeType name="WSNum"/>
<attribute type="WSNum"/>
</ElementType>
</Schema>
Name Type Data Type Use Comment
RoomNum Attribute string N/A The room number of guest.
GuestName Attribute string N/A The guest’s last name.
AnswerStat Attribute string required Refer to the Answer Status
Table, below.
BusinessDate Attribute string optional PMS business date YYMMDD
ClearText Attribute string required Additional text information
(should be displayed to a user
upon failure).
PostNum Attribute string required The posting number from the
PostInquiry.
UserID Attribute string N/A The user ID from the
PostRequest.
WSNum Attribute string required The workstation number from
the PostInquiry.
Process Command Supported Messages (inMsg) 21
OPERA Response to PostRequest
PostAnswer Response
The response message to a PostRequest (Accepted or Failed).
Example
<PostAnswer xmlns="x-schema:PostAnswerSchema_O" UserID="901" GuestName=”Smith”
WSNum="000000201" PostNum="25" RoomNum="125" BusinessDate=”130422” AnswerStat="OK"
ClearText="Posting successful. Interface transaction number/s - 1925491"/>
Note: For additional sample messages, refer to XML
Message Examples. For a full list of answer statuses, refer to
the Answer Status Table.
PostAnswer
<Schema name="PostAnswerSchema_O" xmlns="urn:schemas-microsoft-com:xml-
data">
<ElementType name="PostAnswer" model="closed">
<AttributeType name="RoomNum"/>
<attribute type="RoomNum"/>
<AttributeType name="GuestName"/>
<attribute type="GuestName"/>
<AttributeType name="AnswerStat" required="yes"/>
<attribute type="AnswerStat"/>
<AttributeType name="ClearText"/>
<attribute type="ClearText"/>
<AttributeType name="BusinessDate"/>
<attribute type="BusinessDate"/>
<AttributeType name="PostNum"/>
<attribute type="PostNum"/>
<AttributeType name="UserID"/>
<attribute type="UserID"/>
<AttributeType name="WSNum"/>
<attribute type="WSNum"/>
</ElementType>
</Schema>
Name Type Data Type Use Comment
RoomNum Attribute string optional The room number of the
guest.
GuestName Attribute string optional The guest’s last name.
AnswerStat Attribute string required Refer to the Answer Status
Table, below.
ClearText Attribute string optional Additional text information
(should be displayed to a user
upon failure).
BusinessDate Attribute string optional PMS business date YYMMDD
PostNum Attribute string required The posting number from the
PostRequest.
22 Process Command Supported Messages (inMsg)
UserID Attribute string optional The user ID from the
PostRequest.
WSNum Attribute string required The workstation number from
the PostRequest.
Answer Status Table 23
3 Answer Status Table
The table below lists all of the valid Answer Status’s that will be returned in the
AnswerStat attribute.
Code Interface Type Using This Code Meaning
CO All PostingRequest Systems Posting denied because overwrite
of CreditLimit is not allowed
DM All PostingRequest Systems Difference mismatch. TotalAmount
doesn’t equal total of all subtotals
in the message.
FX All systems using Guest related
requests
Guest is not allowed to use this
feature.
IA All systems using Guest related
requests
Invalid Account (Room)
NA All systems Night Audit running
NG All info requests Guest/Room not found
NP All PostingRequest Systems Posting denied because NoPost is
set
OK All systems Command or request successful
RY All systems Retry (-ing)
UR All requests Unprocessable request, this request
cannot be carried out, no retry
24 Request Type Table
4 Request Type Table
The table below lists request types that are used in PostInquiry and PostRequest
messages to determine how we are finding the particular guest. In addition, the table
displays request types that are used in Guest messages.
A number or an additive number of multiple codes below can be used. For example, to
perform a query based on a guest name, you would fill the RequestType attribute with
‘8’. To perform a query where you are not sure if you are looking for the guest by room
number or name you would fill the RequestType attribute with ‘12’, because 8 (guest
name) + 4 (room number) = 12
RequestType Action Name Type / Meaning
1 PostInquiry &
PostRequest
Search/Post by PaymentMethod
2 PostInquiry &
PostRequest
Search/Post by Track2
4 PostInquiry &
PostRequest
Search/Post by RoomNum
8 PostInquiry &
PostRequest
Search/Post by GuestName
16 PostInquiry &
PostRequest
Search/Post by ExtensionNum
32 PostInquiry &
PostRequest
Search/Post by GuestNum
1 GuestMess_I Parcel/Baggage item
2 GuestMess_I Car/Valet Item
XML Message Examples 25
5 XML Message Examples
Post Inquiry with No Guests/Room found
Request <PostInquiry xmlns="x-schema:PostInquirySchema_I" PostInformation="zzz"
MaximumGuestsNum="20" WSNum="000000201" PostNum="26 " RequestType="15"
Date="130422" Time="094445"/>
Response
<PostAnswer xmlns="x-schema:PostAnswerSchema_O" UserID="" WSNum="000000201"
PostNum="26 " BusinessDate=”130422” AnswerStat="NG" ClearText="Guest not found."/>
Post Inquiry Returning One Guest
Request
<PostInquiry xmlns="x-schema:PostInquirySchema_I" PostInformation="VO"
MaximumGuestsNum="20" WSNum="000000201" PostNum="27 " RequestType="15"
Date="130422" Time="094845"/>
Response
<PostList xmlns="x-schema:PostListSchema_O" WSNum="000000201" PostNum="27
"><PostListItem RoomNum="1004" GuestNum="1550639" GuestName="Vorwerk"
GuestFormattedname="(EN) MR Vorwerk" DefRef2="" DefRef3="" DefRef4="" DefRef5="" DefRef6=""
DefRef7="" DefRef8="" DefRef9="" DefRef10=””/></PostList>
Post Inquiry Returning Multiple Guests
Request
<PostInquiry xmlns="x-schema:PostInquirySchema_I" PostInformation="ba"
MaximumGuestsNum="20" WSNum="000000201" PostNum="28 " RequestType="15"
Date="130422" Time="094945"/>
Response
<PostList xmlns="x-schema:PostListSchema_O" WSNum="000000201" PostNum="28
"><PostListItem RoomNum="311" GuestNum="3506698" GuestName="Baggins"
GuestFormattedname="(EN) Bilbo Baggins" DefRef2="" DefRef3="" DefRef4=""
DefRef5="" DefRef6="" DefRef7="" DefRef8="" DefRef9="" DefRef10=""/><PostListItem
RoomNum="115" GuestNum="5684458" GuestName="batur" GuestFormattedname="(EN) Mr
batur" DefRef2="" DefRef3="" DefRef4="" DefRef5="" DefRef6="" DefRef7=""
DefRef8="" DefRef9="" DefRef10=""/><PostListItem RoomNum="210" GuestNum="900140"
GuestName="Ball" GuestFormattedname="(EN) Ms Lucille Ball" DefRef2="" DefRef3=""
DefRef4="" DefRef5="" DefRef6="" DefRef7="" DefRef8="" DefRef9=""
DefRef10=""/><PostListItem RoomNum="217" GuestNum="5386707" GuestName="BATUR"
GuestFormattedname="(EN) Mr BATUR" DefRef2="" DefRef3="" DefRef4="" DefRef5=""
DefRef6="" DefRef7="" DefRef8="" DefRef9="" DefRef10=""/></PostList>
26 XML Message Examples
Post Request Posting to Guest 3 from above PostList (Ms Lucille Ball, Room 210)
Request
<PostRequest xmlns="x-schema:PostRequestSchema_I" RoomNum="210" GuestName="Ball"
PostInformation="ba" PostListItemNum="3" RequestType="15" TotalAmount="1757"
PaymentMethod="401" Covers="2" SalesOutlet="1" ServingTime="2" CheckNum="834"
PostNum="29 " Subtotal1="925" Subtotal2="250" Subtotal3="0" Subtotal4="0"
ServiceCharge1="500" ServiceCharge2="0" Tax1="82" Tax2="0" Discount1="0"
Discount2="0" Discount3="0" Discount4="0" PostType="C" UserID="901"
WSNum="000000201" Date="130422" Time="095040"/>
Response
<PostAnswer xmlns="x-schema:PostAnswerSchema_O" UserID="901" WSNum="000000201"
PostNum="29" RoomNum="210" GuestName=”Ball” BusinessDate=”130422” AnswerStat="OK"
ClearText="Posting successful. Interface transaction number/s - 1925491"/>
Post Request Posting to Guest 1 from above PostList (Baggins, Room 311) - NO CREDIT
Request
<PostRequest xmlns="x-schema:PostRequestSchema_I" RoomNum="311"
GuestName="Baggins" PostInformation="ba" PostListItemNum="1" RequestType="15"
TotalAmount="1757" PaymentMethod="401" Covers="2" SalesOutlet="1" ServingTime="2"
CheckNum="834" PostNum="29 " Subtotal1="925" Subtotal2="250" Subtotal3="0"
Subtotal4="0" ServiceCharge1="500" ServiceCharge2="0" Tax1="82" Tax2="0"
Discount1="0" Discount2="0" Discount3="0" Discount4="0" PostType="C" UserID="901"
WSNum="000000201" Date="130422" Time="095040"/>
Response
<PostAnswer xmlns="x-schema:PostAnswerSchema_O" UserID="901" WSNum="000000201"
PostNum="29" RoomNum="311" GuestName=”Baggins” BusinessDate=”130422”
AnswerStat="NP" ClearText="No Credit."/>
Post Request Posting for Cash/Credit Card (Non-Room charge) -PostInquiry is not required.
For this PostRequest functionality a PaymentMethod is required and needs to be
configured in the PMS IFC Configuration for a Posting Account.
RequestType in the PostRequest is required and needs to contain an additive of 1 for
posting by this PaymentMethod.
No RoomNum, GuestName, PostInformation, and PostListItemNum is needed for this
type of posting.
XML Message Examples 27
Request
<PostRequest xmlns="x-schema:PostRequestSchema_I" RequestType="1"
TotalAmount="12007" PaymentMethod="22" Covers="2" SalesOutlet="1" ServingTime="2"
CheckNum="837" PostNum="45" Subtotal1="11500" Subtotal2="400" Subtotal3="0"
Subtotal4="0" ServiceCharge1="100" ServiceCharge2="0" Tax1="07" Tax2="0"
Discount1="0" PostType="C" UserID="901" WSNum="000000201" Date="130422"
Time="132140"/>
Response
<PostAnswer xmlns="x-schema:PostAnswerSchema_O" UserID="901" WSNum="000000201"
GuestName="F&B Amex Account" RoomNum="9004" BusinessDate=”130422” AnswerStat="OK"
ClearText="Posting successful. Interface transaction number/s - 1925491"/>