ASA invokes the API loadExternalOrder on ORMPOS via ATGPOSManager.m, passing it an ATG order ID. ORMPOS can then query CSC directly by invoking the fetchOrder web service for the details of that order, and then create a transaction for it in the ORMPOS system. ORMPOS internally maintains an ATG orderID-MPOS transaction id mapping. The ORMPOS API associated with loadExternalOrder is:

Class

SaleTransactionWebService

Method

TransactionStatus loadOrder(java.lang.String storeID, java.lang.String registerID, java.lang.String orderID)

The response TransactionStatus is an existing class you can find more details about in the ORMPOS javadoc. ASA uses the transactionId from TransactionStatus to communicate to ORMPOS server to add tender, add signature, suspend the transaction, or print a receipt.

@Path("{storeID}/{registerID}/{ordered}")
@GET
@Produces({MediaType.APPLICATION_JSON,MediaType.APPLICATION_XML})
public TransactionStatus loadOrder(@PathParam("storeID") String storeID,
                                   @PathParam("registerID") String registerID,
                                   @PathParam("orderID") String orderID)
The LoadExternalOrder API

Two strings are part of this method’s signature:

Session Id

A string identifier for the CSC session shared from ASA.

Session confirmation number

A string received on successful login to CSC, which is required to ensure that REST calls to Oracle Commerce Platform remain secure.

All subsequent calls that ORMPOS makes to CSC use these identifiers to reuse the ASA to CSC session.

Locale

Locale is a string representing the current locale of the device, provided by the currentLocale property of the ATGRestManager.


Copyright © 1997, 2015 Oracle and/or its affiliates. All rights reserved. Legal Notices