Sales & Returns
Method 1: Pull-API - Fixed RFID POS Reader Pads Method 2: Senitron POS Assistant (windows app) Method 3: Senitron POS Assistant (web-based app | Lightspeed) Method 4: Push API – Via Senitron Hand-Held RFID Scanner Method 5: Commit Sales / Returns to Cloud-Endpoint (RFID POS) Method 6: Commit Sales / Returns to Cloud-Endpoint (External Software) Note: The best practice methods are Method(s) 1 and 4
Method 1: Pull-API - Fixed RFID POS Reader Pads
- Start Reader
- Stop Reader
- Get Reader status
- Pull current reads
- Clear current reads
- Commit transaction
Configuration required data:
- Store location (optional - depreciated, no longer needed, any value can be used)
- Client ID (optional - depreciated, no longer needed, any value can be used)
- Rfid Reader ID
- Transaction type
Method 2: Senitron POS Assistant (windows app)

Method 3: Senitron POS Assistant (web-based app | Lightspeed)

Method 4: Push API – Via Senitron's Hand-Held RFID Scanner
Method 5: Commit Sales / Returns to Cloud-Endpoint
Once any external system, uses any one of the mentioned methods to read RFID data, once the transaction is completed the external system can send the data to Senitron cloud, mark those items are sold (aka removed from inventory) or returned (added back into the inventory) Note: depending on the method, this process may also be handled elsewhere in the other processes. (f0r example client that use the POS assistant in conjunction with the CDM. POS Assistant will commit back to the CDM, and the CDM will commit back the cloud automatically)
Commit Sales / Return | Endpoint
METHOD: POST
URL: {tenant}/{location}/api/v1/sale?key={api_key}
BODY: JSON Object containing the transaction information
RESPONSE:
200 -> OK
404 -> Error, reason included in the response body
To send a sale transaction, make a POST request to the sale endpoint for the destination tenant / location. And attach in the body
of the request the raw JSON containing the transaction data.
The name field is how Senitron recognizes the type of transaction. Thus send in the name field Sale, or Return
POST
https://app.senitron.net/{tenant}/{location_number}/api/v1/sale?key={key}
BODY
{
"Name": "Sale",
"Currency": "USD",
"Location": "001",
"TenantKey": "4",
"Total": "0.00",
"Reference4": "10",
"DocumentId": "",
"Id": "1",
"Date": "2018-10-24 01:24:06",
"Count": 5,
"TransactionMode": "Sale",
"TransactionDetails": [
{
"Attr1": "",
"Attr2": "",
"ProductDesc": "",
"ProductId": "122454201","UnitPrice": "",
"SalePrice": "",
"EpcId": "307510BBD3202E4000000054",
"ItemNo": "122454201"
}
]
}
Method 5 - New: Transaction General API / Push Sales Orders to Cloud-Endpoint
Once any external system, uses any one of the mentioned methods to read RFID data, once the transaction is completed the external system can send the data to Senitron cloud, mark those items are sold (aka removed from inventory) or returned (added back into the inventory) Note: depending on the method, this process may also be handled elsewhere in the other processes. (f0r example client that use the POS assistant in conjunction with the CDM. POS Assistant will commit back to the CDM, and the CDM will commit back the cloud automatically)
Push Sales Orders | Endpoint
Service Name Push sales orders to Senitron
Service Method POST
Service URL /<tenant-code>/<location>/api/v1/sales
Request Parameters
api_key = <api_key>
Request Header Fields
Content-Type = application/json
Request Data
{
"transaction_type": "Sale",
"transaction_date": "11/27/2024 01:45 PM",
"transaction_number": "45001",
"title": "SO Test #45001",
"customer": "",
"reference_number": "",
"document_number": "",
"user": "api@senitron.net",
"note": "",
"zone": "Inside Zone A",
"catalog_update": false,
"inventory_update": false,
"items": [
{
"item_number": "210000000062",
"qty": 10
},
{
"item_number": "210000000040",
"qty": 20
}
],
"assets": [
{
"epc": "C000C30E4F9B43E0000004EA",
"serial_number": "1258",
"item_number": "210000000062",
"sku": "",
"upc": 3252355,
"alu": "",
"description": "FOOT JOY M OUTER-LS 215 - L -",
"price": 45.00,
"retail_price": 59.00 ,
"msrp": 57.00,
"qty": 1
},
{
"epc": "C000C30E4F9B4280000004E2",
"serial_number": "1250",
"item_number": "210000000040",
"sku": "",
"upc": 3252355,
"alu": "",
"description": "CUTTER BUCK M OUTER_VEST 105 - XXL -",
"price": 78.00,
"retail_price": 83.59 ,
"msrp": 81.59,
"qty": 5
}
]
}
Response Data
Status Code = 200
{
"message": "Sales order information has been received and will be saved in the cloud"
}
Response (Error)
Status Code <> 200
{
"error": {
"type": "LOCATION_NOT_FOUND",
"message": "The location #001 not found"
}
}
Method 6: Commit Sales / Returns to Cloud-Endpoint (External Software)
Request body: { "document_id": "183-642958", // (REQUIRED) -> Ticket No / Transaction ID "zone": "54, Sales Floor", // (OPTIONAL) -> Audit location, "user": "John Doe", // (OPTIONAL) -> User name "user_email": "john.doe@test.com", // (OPTIONAL) -> User email "comment": "Reason / notes", // (OPTIONAL) -> Reason / notes memo from the audit "reference": "6000", // (OPTIONAL) -> Misc. reference attached on transaction recorded "count": 2, // (REQUIRED) -> Count of items in transaction "total": "25.00", // (OPTIONAL) -> Total amount of sale transaction "currency": "USD", // (OPTIONAL) -> Transaction currency "date": "2020-05-14 11:51:55", // (OPTIONAL) -> Transaction date & time "transaction_details": [ { "epc": "3074D89E04D99E7503C1A452", // (OPTIONAL) -> RFID Tag EPC "serial": "8309", // (OPTIONAL) -> Serial "product_id": "1271417", // (REQUIRED) -> Catalog Product ID / Item Number "count": 2, // (REQUIRED) -> Product Qty "upc": "1271417", // (OPTIONAL) -> UPC "description": "Shimmer Lettermen Hood", // (OPTIONAL) -> Catalog Item description "price": "19.00", // (OPTIONAL) -> Catalog Item price "comment": "Reason / notes" // (OPTIONAL) -> Item notes }, { "epc": "3074D89E05372DF5038345AA", // (OPTIONAL) -> RFID Tag EPC "serial": "8311", // (OPTIONAL) -> Serial "product_id": "1367223", // (REQUIRED) -> Catalog Product ID / Item Number "count": 1, // (REQUIRED) -> Product Qty "upc": "1271417", // (OPTIONAL) -> UPC "description": "Classic Lettermen Tee", // (OPTIONAL) -> Catalog Item description "price": "6.00", // (OPTIONAL) -> Catalog Item price "comment": "Reason / notes" // (OPTIONAL) -> Item notes } ] }