The Batch Wallet Transactions API allows for the processing of multiple cashless payment transactions in a single request. This is especially useful for bulk operations at events, venues, or any environment where RFID-based cashless systems are used.
Endpoint #
https://l.oveit.com/api/wallet/batch?token={AUTH_TOKEN}&event_id={EVENT_ID}
AUTH_TOKEN – authorization token, see https://l.oveit.com/api-documentation/#authentication
EVENT_ID – event id, see event URL in the Oveit dashboard
Method #
POST (CSV file upload)
Purpose #
Submit a batch of wallet transactions using a single API call. Each row in the CSV represents a single transaction, enabling fast and efficient processing.
CSV Format #
CSV Header #
uuid_v4_transaction,rfid_code,amount,seller_user_oveit_email,device,products_json,date,server
Field Descriptions #
Field | Description |
uuid_v4_transaction | (Required) Unique UUID v4 for the transaction |
rfid_code | (Required) RFID code of the user’s bracelet (uppercase) |
amount | (Required) Float value; negative for debit (purchase/withdraw), positive for credit |
seller_user_oveit_email | (Required) Email of the seller/merchant user |
device | (Optional) Identifier for the device used to perform the transaction |
products_json | (Optional) JSON string describing products in the transaction (see below) |
date | (Required) Date and time in ATOM format (Y-m-d\TH:i:sP ) |
server | (Optional) Server identifier for internal tracking |
Example CSV Data #
uuid_v4_transaction,rfid_code,amount,seller_user_oveit_email,device,products_json,date,server
a20080669-30c3-4a47-8d57-cea12c455e2d,665394,-4500.00,"dev+1@oveit.com",device-operator-1,"[{""name"":""Pizza"",""quantity"":1,""total"":30,""Tax %"":""5%"",""Tax"":2.3,""Unit price"":10.99},{""name"":""Water"",""quantity"":1,""total"":15,""Tax %"":""5%"",""Tax"":2.3,""Unit price"":10.99}]",2023-05-11T14:23:20+00:00,ch1-app
45dace19-3db0-412d-a1e1-f9d8b6cd4719,665394,-6500.00,"dev+1@oveit.com",device-operator-1,"[{""name"":""Cola"",""quantity"":1,""total"":50},{""name"":""Water"",""quantity"":1,""total"":15}]",2023-05-11T14:23:20+00:00,ch1-app
Products JSON Structure #
Each transaction may include a products_json
field that details the items involved. This field should be a JSON array of product objects.
Example #
[
{
"name": "Pizza",
"quantity": 1,
"total": 30,
"Tax %": "5%",
"Tax": 2.3,
"Unit price": 10.99
},
{
"name": "Water",
"quantity": 1,
"total": 15,
"Tax %": "5%",
"Tax": 2.3,
"Unit price": 10.99
}
]
Ensure that double quotes inside the JSON string are properly escaped when included in the CSV file.
Date Format #
Use ATOM format (a subset of ISO 8601):
YYYY-MM-DDTHH:MM:SS±hh:mm
Example:
2023-05-11T14:23:20+00:00
Notes
- All transactions must have a unique UUID to prevent duplication.
- The
amount
field must reflect the net transaction value in the smallest currency unit (e.g., cents).
Best Practices #
- Log transaction responses for reconciliation and troubleshooting.
- Validate your CSV before sending it to ensure all required fields are present.
- Use HTTPS to protect sensitive data like emails and transaction amounts.