You are here:
Benchmarks and Best Practices for Orders and Transaction Export
Exporting orders and transactions from POS to an external system can be done in multiple ways. Learn about the various export options available, and understand the specific artifacts that can be exported. You can integrate POS data with other systems. Having the flexibility to export orders and transactions ensures comprehensive data management.
Orders and Transactions
- Orders - Any Sale, Return, Refund, or Exchange is an Order in POS.
- Transactions - All events on POS Login, Logout, Void, Till Open, etc are referred as Transactions and logged in Electronic Journal.
Export Options
- API with JSON payload - As Orders are placed on POS, an API is call out is made with
the JSON payload of the current order. Point of Sale API spec can be found here. This would require a web server on the customer side that
would accept incoming orders and provide an SLA of 99.99% uptime. Replay options are available
on CMS.
Out of the box, Point of Sale supports real-time order export into Salesforce Commerce, Salesforce OMS, and NetSuite.
- Real-time Exports flat files- As orders as placed on POS, a TLog file in POSLog 6.0 format is created and published to an SFTP site.
- Scheduled Batch Jobs with Compressed files - Scheduled jobs set to run at a set frequency, pick up the orders that were placed since the last export run, create individual TLog files for each order, and then create a compressed bundle to be exported to SFTP site.
- Scheduled Batch Jobs with individual files - Scheduled jobs set to run at a set frequency picks up the orders that were placed since the last export run, create individual TLog files for each order, and send them to the SFTP site. Recommended frequency is hourly. Anything more aggressive than this can cause delays in publishing orders.
As of July 2022, only one mode of order export is supported with API being the recommended and preferred option.
Transactions
- Scheduled Batch Job with 1 file in CSV / TSV format on selected fields
Export Throughput numbers
Orders
- API with JSON payload - 60,000 orders an hour on steady state. This is a horizontally scalable model and can scale up to 85,000 orders an hour
- Real-time Exports with XML files in NRF POSLog 6.0 format - 8,000 orders an hour on steady state with Point of Sale SFTP provider Exavault. The bottleneck here is the number of connections Exavault can handle. Customers can use another FTP provider of their choice.
- Scheduled Batch Jobs with Compressed XML files in NRF POSLog 6.0 format - 40,000 orders an hour on steady state. As the number of FTP connections are now reduced the throughput goes up.
- Scheduled Batch Jobs with individual XML files in NRF POSLog 6.0 format - 3000 orders an hour as each file has to be generated and exported out. Known Limitation of this approach is with every run at max 1000 orders can be exported. So if a customer expects 20,000 orders in a day, then the job needs to be set to run at least every 20 minutes to be able to export all orders out.
Transactions
- Scheduled Batch Job with 1 file in CSV / TSV format on selected fields
Recommended Setup 1
API with JSON payload - 60,000 orders an hour on steady state. This is a horizontally scalable model and can scale up to 85,000 orders an hour.
Recommended Setup 2
Orders
- Real-time Exports with files - As orders are placed and files are shipped out in real-time
- Scheduled Batch Jobs with Compressed files - This is a fallback that ships out the remaining orders that were not exported in real-time.

