Oracle Retail Xstore POS Integration
Type: ERP Integration
System: Oracle Retail Xstore POS (v24.0/v23.0/v22.0)
Confidence: 0.85
Sources: 7
Verified: 2026-03-09
Freshness: 2026-03-09
TL;DR
- Bottom line: Xstore POS transactions flow to Oracle Retail Merchandising via Sales Audit (ReSA) using either REST broadcasting (near-real-time) or RTLog file-based export (batch); foundation data (items, pricing, hierarchy) flows from RMS to Xstore via daily pipe-delimited flat file exports.
- Key limit: Direct transaction posting to RMS bypassing ReSA is not supported -- all POS transactions must route through Sales Audit for validation before impacting inventory in Merchandising.
- Watch out for: Xstore does not manage store inventory when integrated with RMS -- inventory is handled by SIM/SIOCS. Many integrators mistakenly try to configure Xstore inventory features alongside RMS.
- Best for: Multi-format retailers needing unified POS across desktop, thin client, tablet, and handheld devices with transaction posting to Oracle Retail Merchandising and Sales Audit.
- Authentication: OAuth 2.0 for Xstore Office Cloud Service REST APIs; basic auth or certificate-based for on-premise Xcenter web services.
System Profile
Oracle Retail Xstore Point of Service is Oracle's enterprise POS platform for specialty, department, and grocery retailers. The 2025 release introduced a containerized architecture on Oracle Cloud Infrastructure (OCI) and Oracle Autonomous Database. Xstore supports multiple form factors: Classic, Desktop, Thin Client, Tablet (iOS/Android), and Handheld. The integration ecosystem centers on Xstore POS, Xcenter/XOCS as the central data hub, and RMS/ORMCS as the merchandise and inventory master. Sales Audit (ReSA) serves as the mandatory intermediary for transaction validation. [src1, src2]
| System | Role | API Surface | Direction |
| Xstore POS | Point of sale -- captures transactions, customer data, tender | POSLog XML (internal) | Outbound (transactions) |
| Xcenter / XOCS | Central store server -- aggregation, broadcasting, admin | REST API, SOAP, DTXQL | Orchestrator (bidirectional) |
| Oracle Retail Sales Audit (ReSA) | Transaction validation and audit | REST (v21+), RTLog file import | Inbound (receives transactions) |
| Oracle RMS / ORMCS | Merchandise master -- items, pricing, inventory | Batch file export, REST | Outbound (foundation data to Xstore) |
| Oracle Retail SIM / SIOCS | Store inventory management | REST, file-based | Bidirectional (inventory operations) |
API Surfaces & Capabilities
| API Surface | Protocol | Best For | Direction | Real-time? | Bulk? |
| REST Broadcaster (ReSA) | HTTPS/JSON | Transaction posting from Xstore to Sales Audit | Outbound | Near-real-time | No |
| RTLog File Export | File-based (pipe-delimited) | Legacy transaction posting to ReSA | Outbound | No (batch) | Yes |
| XOCS REST API | HTTPS/JSON | Customer lookup, store data queries, admin operations | Bidirectional | Yes | No |
| DTXQL Queries | REST/HTTPS | Ad-hoc data queries against Xstore Office tables | Outbound | Yes | No |
| RMS Foundation Export | File-based (pipe-delimited) | Item master, pricing, hierarchy sync to Xstore | Inbound | No (daily batch) | Yes |
| Xcenter SOAP Services | SOAP/XML | Legacy integrations, inventory/tax engine calls | Bidirectional | Yes | No |
| Xcenter REST Services | HTTPS/JSON | Inventory (SIOCS), tax engine integration | Bidirectional | Yes | No |
Rate Limits & Quotas
Per-Request Limits
| Limit Type | Value | Applies To | Notes |
| RTLog file size | System-dependent | RTLog generator | Files generated multiple times per day; size depends on transaction volume |
| REST broadcaster payload | Per-transaction JSON | ReSA REST endpoint | Each transaction posted individually in temporal order |
| DTXQL query results | Configurable page size | XOCS REST API | Pagination via GetByQueryResource |
| Foundation export file size | Unlimited (pipe-delimited) | RMS batch exports | One file per entity type per run; store-specific files for items |
| Bulk export threads | 1-20 threads | Item/location/VAT exports | Threading parameter Y/N with configurable thread count |
Rolling / Daily Limits
| Limit Type | Value | Window | Notes |
| Foundation data exports | Must run daily | 24h | Delta records purged after 7 days -- daily runs mandatory |
| RTLog generation | Multiple per day | Configurable | Generated by Xcenter RTLog generator component |
| REST transaction posting | Near-real-time continuous | Ongoing | Temporal ordering preserved; no explicit rate cap documented |
| Rejected transaction query | Hourly | Scheduled | XOCS queries ReSA for rejected transactions hourly |
| Staging table purge | Weekly | 7-day retention | export_stg_purge.ksh removes all records older than 7 days |
Authentication
| Flow | Use When | Token Lifetime | Refresh? | Notes |
| OAuth 2.0 (XOCS Cloud) | Accessing Xstore Office Cloud Service REST APIs | Session-based | Yes | Set up OAuth Client per XOCS Security Guide |
| Basic Authentication | On-premise Xcenter web services | Session-based | N/A | Legacy; used for SOAP and some REST endpoints |
| Certificate-based | Server-to-server integration (on-premise) | Certificate validity | N/A | Used for secure Xcenter-to-ReSA communication |
| IDCS/OCI IAM | Cloud-native deployments on OCI | Token-based | Yes | Required for OCI Container Instances deployment |
Authentication Gotchas
- OAuth Client setup for XOCS requires following the Oracle Retail Xstore Office Cloud Service Security Guide exactly -- missing scopes cause silent permission failures [src7]
- On-premise to cloud migration requires switching from basic auth / certificates to OAuth 2.0 -- this is not backward-compatible [src5]
- REST broadcaster authentication to ReSA Cloud Service uses a separate credential set from the XOCS admin credentials [src2]
Constraints
- Xstore inventory functionality must be disabled when integrated with RMS -- no inventory data is exchanged between Xstore and RMS other than sales-related data. Store inventory must be managed by SIM or SIOCS.
- All POS transaction data must flow through Sales Audit (ReSA) before reaching Merchandising. Direct Xstore-to-RMS transaction posting is not supported.
- Foundation data (items, pricing, hierarchy) flows only from RMS to Xstore -- Xstore cannot write back master data changes to RMS.
- RTLog/foundation export delta mode relies on staging tables that are purged weekly. If export jobs do not run daily, delta records are permanently lost.
- Handheld devices (2x4 form factor) do not support offline transactions, reporting, employee maintenance, or training mode.
- Mobile devices (tablet, handheld, thin client) have no local database and require persistent mobile server connectivity for all operations.
- REST broadcaster mapping changes take approximately 30 minutes to propagate through the system.
Integration Pattern Decision Tree
START -- Integrating Oracle Retail Xstore POS
|-- What data are you integrating?
| |-- POS Transactions (sales, returns, voids)
| | |-- Xstore version >= 21.0?
| | | |-- YES -> REST Broadcaster to ReSA (near-real-time, recommended)
| | | |-- NO -> RTLog file-based export to ReSA (batch)
| | |-- Need real-time transaction visibility?
| | | |-- YES -> REST Broadcaster (temporal ordering preserved)
| | | |-- NO -> RTLog files (multiple times/day or once daily)
| |
| |-- Foundation Data (items, pricing, hierarchy, stores)
| | |-- Initial load? -> RMS FULL mode export
| | |-- Ongoing sync? -> RMS DELTA mode export (daily)
| |
| |-- Customer Data (lookup, enrollment)
| | |-- Cloud (XOCS)? -> XOCS REST API with OAuth 2.0 + DTXQL queries
| | |-- On-premise? -> Xcenter SOAP/REST web services
| |
| |-- Inventory Data
| |-- DO NOT use Xstore inventory features when integrated with RMS
| |-- Use Oracle Retail SIM/SIOCS for store inventory management
|
|-- Deployment model?
| |-- Cloud-native (OCI) -> Containerized Xstore on OCI
| |-- On-premise -> Traditional Xcenter server deployment
| |-- Hybrid -> Cloud XOCS with on-premise POS terminals
|
|-- Error handling?
|-- REST Broadcaster -> Rejected transactions queried hourly via Xadmin
|-- RTLog files -> saimptlog/saimptlogi validates and creates auditor errors
|-- Foundation exports -> Monitor staging table purge schedule (weekly)
Quick Reference
Transaction Posting Flow
| Step | Source | Action | Target | Data Format | Failure Handling |
| 1 | Xstore POS Register | Captures sale/return/void | Local POSLog | POSLog XML | Stored locally until broadcast |
| 2 | Xcenter Broadcaster | Translates POSLog to JSON or RTLog | ReSA | JSON (REST) or RTLog (file) | Retry; rejected queue |
| 3 | ReSA REST Endpoint | Validates and accepts transaction | Staging tables | JSON | Returns success/reject; hourly reject query |
| 4 | ReSA Batch Process | Imports into ReSA tables | ReSA tables | RTLog | saimptlog/saimptlogi validation + auditor errors |
| 5 | ReSA Export | Exports to Merchandising | RMS/ORMCS | Batch export | Impacts perpetual inventory via uploadsales_all.ksh |
Foundation Data Export Jobs
| Job Script | Entity | Output File Pattern | Mode | Contract |
| export_itemmaster.ksh | Item master data | itemhdr_{date}_{scope}_{mode}_{lines}.dat | Full/Delta | IntCon000208 |
| export_itemloc.ksh | Item-location data | itemloc_{date}_{loc}_{mode}_{lines}.dat | Full/Delta | IntCon000209 |
| export_merchhier.ksh | Merchandise hierarchy | merchhierarchy_{date}_{mode}_{lines}.dat | Full/Delta | IntCon000207 |
| export_orghier.ksh | Org hierarchy | orghierarchy_{date}_{mode}_{lines}.dat | Full/Delta | IntCon000203 |
| export_stores.ksh | Store master + addresses | store_{date}_{mode}_{lines}.dat | Full/Delta | IntCon000204 |
| export_itemvat.ksh | Item VAT by region | vatitem_{date}_{scope}_{mode}_{lines}.dat | Full/Delta | IntCon000214 |
| export_vat.ksh | VAT regions/codes/rates | vat_{date}_{mode}_{lines}.dat | Full/Delta | IntCon000215 |
| export_diffs.ksh | Differentiators | diffs_{date}_{mode}_{lines}.dat | Full/Delta | IntCon000206 |
| export_relitem.ksh | Related items | relitemhead_{date}_{scope}_{mode}_{lines}.dat | Full/Delta | IntCon000210 |
| export_stg_purge.ksh | Staging cleanup | N/A | Purge (weekly) | RMS265 |
Step-by-Step Integration Guide
1. Configure Xstore-to-ReSA REST Broadcasting (v21+)
Set up the REST broadcaster in Xcenter to post transactions to Sales Audit in near-real-time. The broadcaster translates POSLog XML into JSON payloads. [src2]
Endpoint: POST https://<resa-host>:<port>/<tenancyId>/ResaReSTServices/services/private/Resa/salesService
Configuration steps:
1. Configure ReSA REST endpoint URL in Xcenter broadcaster settings
2. Set authentication credentials (OAuth 2.0 for cloud, basic auth for on-premise)
3. Enable temporal ordering to preserve transaction sequence
4. Configure Broadcaster Customize tab for any custom YAML mapping
Verify: Check Xadmin SystemTools > Publish PosLog Data for transaction status.
2. Set Up Foundation Data Exports from RMS
Configure daily batch exports to push item master, pricing, and hierarchy data from RMS to Xcenter/Xstore. [src3]
# Run full export for initial load
./export_itemmaster.ksh <db_connection> full N
# Run delta export for daily sync
./export_itemmaster.ksh <db_connection> delta Y
# Run item location export (store-specific)
./export_itemloc.ksh <db_connection> delta Y <store_number>
Verify: Check output files. Pattern: itemhdr_{date}_corp_{mode}_{linecount}.dat
3. Configure Customer Lookup via XOCS REST API
Set up OAuth 2.0 client and use DTXQL queries for customer lookup operations. [src7]
# Obtain access token
curl -X POST "https://<idcs-host>/oauth2/v1/token" \
-H "Content-Type: application/x-www-form-urlencoded" \
-d "grant_type=client_credentials&scope=<xocs-scope>" \
-u "<client_id>:<client_secret>"
# Query customer data using DTXQL
curl -X GET "https://<xocs-host>/xocs/rest/v1/query" \
-H "Authorization: Bearer <access_token>"
Verify: HTTP 200 response with valid JSON customer records.
4. Monitor Rejected Transactions
Configure the hourly rejected transaction query and enable republishing from Xadmin UI. [src2]
Endpoint: GET https://<resa-host>/<tenancyId>/ResaReSTServices/services/private/Resa/getRejectedTransactions
Rejected transactions marked in TRN_POSLOG_WORK_ITEM table:
WORK_STATUS = "REJECTED"
Republish via: Xadmin > SystemTools > Publish PosLog Data > Republish
Verify: Count of WORK_STATUS = 'REJECTED' records should decrease after republishing.
Code Examples
Python: Query Customer Data via XOCS REST API
# Input: XOCS host, OAuth credentials, customer search criteria
# Output: Customer records matching the query
import requests
def get_xocs_token(idcs_host, client_id, client_secret, scope):
"""Obtain OAuth 2.0 access token from IDCS."""
resp = requests.post(
f"https://{idcs_host}/oauth2/v1/token",
data={"grant_type": "client_credentials", "scope": scope},
auth=(client_id, client_secret),
timeout=30
)
resp.raise_for_status()
return resp.json()["access_token"]
def lookup_customer(xocs_host, token, last_name):
"""Query customer by last name via DTXQL."""
resp = requests.get(
f"https://{xocs_host}/xocs/rest/v1/query",
headers={"Authorization": f"Bearer {token}"},
params={"q": f"last_name = '{last_name}'", "table": "crm_customer"},
timeout=30
)
resp.raise_for_status()
return resp.json()
Bash: Monitor RTLog Export and Staging Table Health
# Input: Export directory path, database connection
# Output: Export status and staging table record counts
EXPORT_DIR="/path/to/exports"
TODAY=$(date +%Y%m%d)
echo "=== Foundation Data Export Status ==="
for entity in itemhdr itemloc merchhierarchy orghierarchy store; do
FILE=$(ls ${EXPORT_DIR}/${entity}_${TODAY}_* 2>/dev/null | head -1)
if [ -n "$FILE" ]; then
LINES=$(wc -l < "$FILE")
echo "OK: ${entity} exported (${LINES} records)"
else
echo "MISSING: ${entity} -- no export file for today"
fi
done
cURL: Test ReSA REST Endpoint Connectivity
# Input: ReSA host, tenancy ID, auth token
# Output: HTTP status code confirming endpoint is reachable
curl -s -o /dev/null -w "%{http_code}" \
"https://<resa-host>:<port>/<tenancyId>/ResaReSTServices/services/private/Resa/salesService" \
-H "Authorization: Bearer <token>"
# Expected: 200 or 405 (Method Not Allowed for GET on POST-only endpoint)
Data Mapping
RTLog Record Types
| Record Type | Code | Description | Frequency |
| File Header | FHEAD | File-level metadata | 1 per file (required) |
| Transaction Header | THEAD | Transaction-level header | 1 per transaction |
| Customer Record | TCUST | Customer associated with transaction | 0-1 per transaction |
| Item Record | TITEM | Line item detail | 1+ per transaction |
| Discount Record | IDISC | Discount applied to item | 0+ per item |
| Tax Record | IGTAX | Tax applied to item | 0+ per item |
Foundation Data Field Mapping (RMS to Xstore)
| RMS Source | Xstore Target | Type | Transform | Gotcha |
| ITEM_MASTER.ITEM | Xstore item ID | String | Direct mapping | Parent items exported as separate records |
| ITEM_MASTER.ITEM_DESC | Xstore item description | String | Direct | Truncation may occur on handheld displays |
| ITEM_LOC.UNIT_RETAIL | Xstore selling price | Currency | Direct | Multi-currency requires separate VAT export |
| SUBCLASS.SUB | Xstore subclass | String | Via hierarchy export | Must match merchandise hierarchy export |
| STORE.STORE | Xstore location ID | Integer | Direct | Store-specific item files filter by ITEM_LOC |
| VAT_CODE_RATES.VAT_RATE | Xstore tax rate | Decimal | Percentage to decimal | Exempt VAT regions (SVAT type) excluded |
Data Type Gotchas
- POSLog XML uses UTC timestamps internally, but Xstore displays in store-local timezone. RTLog exports use the store timezone, causing potential mismatches in cross-timezone reporting. [src2]
- RMS foundation exports use pipe-delimited flat files. Any pipe characters in source data will corrupt file parsing. [src3]
- FULL mode exports exclude deleted records entirely, while DELTA mode includes deletion markers. Downstream systems must handle both patterns. [src3]
Error Handling & Failure Points
Common Error Scenarios
| Scenario | Symptom | Cause | Resolution |
| REST broadcast rejection | Transaction in REJECTED status | ReSA validation failure | Review in Xadmin; fix data and republish |
| RTLog import failure | saimptlog error log entries | Malformed RTLog file or corrupt data | Check RTLogMappingConfig.xml; verify mapping |
| Foundation export empty | Zero-line .dat files | No delta changes or staging already purged | Run FULL mode export to resync |
| Lost delta records | Items missing in Xstore | Export jobs not run for >7 days | Run FULL mode export to resync all records |
| OAuth token expiration | HTTP 401 on XOCS API calls | Token expired or insufficient scope | Refresh token; verify OAuth client in IDCS |
| Mobile server disconnection | Tablet/handheld cannot transact | Network outage to mobile server | Desktop/thin client can go offline; mobile cannot |
Failure Points in Production
- Staging table purge destroys unextracted deltas: If export_stg_purge.ksh runs before delta exports, changed records are permanently lost. Fix:
Schedule export jobs daily BEFORE the weekly purge job. [src3]
- REST broadcaster mapping propagation delay: Custom YAML mapping changes take ~30 minutes to propagate. Fix:
Schedule mapping changes during low-transaction periods. [src2]
- Offline transactions not syncing: Desktop/thin client offline transactions may not auto-broadcast on reconnection. Fix:
Monitor offline queue; force manual broadcast via Xadmin if needed. [src1]
- saimptlogi vs saimptlog confusion: Using the wrong import process causes incomplete loading or duplicates. Fix:
saimptlogi for continuous intraday; saimptlog for once-daily batch. Never mix both. [src2]
- Store-specific vs corporate item files: Corporate files include items not ranged to the store, causing phantom inventory. Fix:
Always use store-specific files for individual store loads. [src3]
Anti-Patterns
Wrong: Bypassing ReSA for Direct RMS Transaction Posting
// BAD -- Attempting to post Xstore transactions directly to RMS
// This is not supported and will cause inventory discrepancies
Xstore -> Custom middleware -> RMS (direct insert to inventory tables)
Correct: Route All Transactions Through Sales Audit
// GOOD -- Mandatory transaction flow through ReSA
Xstore -> Xcenter Broadcaster -> ReSA (validation) -> RMS (inventory impact)
Wrong: Enabling Xstore Inventory Features with RMS
// BAD -- Configuring Xstore inventory management when RMS is active
// Xstore inventory must be DISABLED when integrated with RMS
Correct: Use SIM/SIOCS for Store Inventory
// GOOD -- Proper inventory architecture with RMS
Xstore (sales only) -> ReSA -> RMS (inventory impact)
SIM/SIOCS (inventory mgmt) <-> RMS (inventory master)
Xstore (inventory lookup) <-> SIM/SIOCS (real-time stock)
Wrong: Skipping Daily Exports
# BAD -- Skipping exports because "nothing changed"
# Delta records in staging tables are purged after 7 days
if [ "$CHANGES_EXPECTED" = "true" ]; then
./export_itemmaster.ksh $DB delta Y
fi
Correct: Run Exports on a Fixed Daily Schedule
# GOOD -- Always run exports daily regardless of expected changes
./export_itemmaster.ksh $DB delta Y
./export_itemloc.ksh $DB delta Y
./export_merchhier.ksh $DB delta
./export_orghier.ksh $DB delta
./export_stores.ksh $DB delta
Common Pitfalls
- Confusing Oracle Retail with Oracle ERP Cloud: Oracle Retail Xstore is part of the Oracle Retail suite (RMS, ReSA, SIM), NOT Oracle ERP Cloud (Financials, SCM, HCM). Integration patterns and APIs are completely different. Fix:
Verify you are referencing Oracle Retail documentation, not Oracle ERP Cloud. [src1]
- Not pinning the export mode (FULL vs DELTA): Running FULL mode daily wastes processing time. Running DELTA mode for initial loads misses pre-existing records. Fix:
Use FULL for initial load and periodic resync. Use DELTA for daily incremental updates. [src3]
- Ignoring the threading parameter on large exports: Single-threaded item exports on retailers with 500K+ items can take hours. Fix:
Enable threading (Y) with 5-10 threads for item, location, and VAT exports. [src3]
- Deploying tablet/handheld without offline fallback: Tablet and handheld devices have no local database and cannot transact when the mobile server is unreachable. Fix:
Ensure at least one Desktop or Thin Client register per store for offline capability. [src1]
- Assuming REST broadcaster is instantaneous: While near-real-time, temporal ordering means high-volume stores may experience posting delays during peak hours. Fix:
Monitor broadcaster queue depth. Scale Xcenter broadcaster instances for high-volume stores. [src2]
- Not monitoring rejected transactions queue: Rejected transactions silently fail to reach Merchandising, causing inventory discrepancies. Fix:
Configure alerting on TRN_POSLOG_WORK_ITEM for WORK_STATUS = 'REJECTED'. Review daily. [src2]
Diagnostic Commands
# Check RTLog export file generation (today's files)
ls -la /path/to/exports/*_$(date +%Y%m%d)_*.dat
# Verify staging table record counts
sqlplus -S $DB_CONN <<EOF
SELECT 'ITEM_EXPORT_STG' AS tbl, COUNT(*) AS cnt FROM ITEM_EXPORT_STG
UNION ALL SELECT 'STORE_EXPORT_STG', COUNT(*) FROM STORE_EXPORT_STG
UNION ALL SELECT 'MERCHHIER_EXPORT_STG', COUNT(*) FROM MERCHHIER_EXPORT_STG;
EOF
# Check rejected transaction count
curl -X GET "https://<xocs-host>/ResaReSTServices/services/private/Resa/getRejectedTransactions" \
-H "Authorization: Bearer <token>" | python -c "import sys,json; print(len(json.load(sys.stdin)))"
# Test XOCS REST API authentication
curl -s -o /dev/null -w "%{http_code}" \
"https://<xocs-host>/xocs/rest/v1/health" \
-H "Authorization: Bearer <token>"
# Verify foundation data export schedule compliance
find /path/to/exports -name "*.dat" -mtime +1 -printf "%f -- STALE (>1 day old)\n"
Version History & Compatibility
| Version | Release Date | Status | Key Changes | Migration Notes |
| v24.0 | 2024-10 | Current | Containerized architecture on OCI; OCI Roving Edge | Major architecture change; requires OCI for new model |
| v23.0 | 2023-10 | Supported | Pay By Link tenders; enhanced mobile | Incremental upgrade; REST APIs backward-compatible |
| v22.0 | 2023-01 | Supported | Dark mode; enhanced accessibility | Standard upgrade path |
| v21.0 | 2022-01 | Supported (EOL approaching) | REST broadcaster for ReSA introduced | First REST-based posting; upgrade recommended |
| v20.0 | 2021-01 | EOL | Last version before REST broadcaster | RTLog file-based only; upgrade to v21+ |
When to Use / When Not to Use
| Use When | Don't Use When | Use Instead |
| Integrating Oracle Retail POS with RMS/ORMCS for merchandise and transaction management | You need financial ERP integration (AP, AR, GL) | Oracle ERP Cloud REST API or Financials integration |
| Deploying multi-format retail POS (desktop + tablet + handheld) | You need e-commerce / digital commerce integration | Oracle Commerce Cloud / ATG integration |
| Posting POS transactions through Sales Audit (ReSA) for validation | You need warehouse management integration | Oracle WMS or SIM/SIOCS integration |
| Syncing foundation data (items, pricing, hierarchy) from RMS to POS | You need real-time inventory availability across channels | Oracle Retail SIOCS or OMS integration |
| You are an Oracle Retail ecosystem customer (RMS, RPM, SIM, ReSA) | You use a non-Oracle merchandising system | Custom POS integration or alternative POS platform |
Important Caveats
- Xstore integration architecture varies significantly between on-premise (Xcenter server) and cloud (XOCS) deployments. API authentication, endpoint URLs, and configuration methods differ.
- The 2025 containerized architecture (v24+) is a major shift that may affect existing custom integrations. Custom Xcenter extensions may need to be re-containerized.
- Foundation data exports are file-based and batch-oriented. There is no real-time API for pushing item/pricing changes from RMS to Xstore. Expect a minimum 24-hour delay.
- Offline transaction capability is only available on Desktop and Thin Client form factors. Retailers relying heavily on mobile POS must ensure robust network infrastructure.
- Rate limits and throughput for REST broadcaster transaction posting are not explicitly documented by Oracle. Performance depends on server capacity and network bandwidth.
- This card covers the Oracle Retail-specific integration. Oracle ERP Cloud (Fusion) uses completely different APIs and is a separate product line.
Related Units