Search transactions by order identifier
/v1/transactions/by-order-idLooks up all transactions matching an identifier, keyed by searchBy (order ID by default, or merchant reference, reseller order ID, or merchant ID). The merchantId search is bounded by fromDate/toDate, defaulting to yesterday through today in the caller's timezone.
Endpoint destination URL
https://sandbox-portal.datmanlabs.com/api/v1/transactions/by-order-idApiKeyAuthapi_key<token>Partner API key issued by Datman.
Request Parameters
application/json- body
query*stringThe value to search for (trimmed). The legacy field name orderId is accepted when query is absent.
1 <= length <= 200searchBy?stringWhich identifier query is matched against. For merchantId, query must be numeric.
"orderId""orderId""merchantReference""resellerOrderId""merchantId"cursor?stringThe pagination.nextCursor value from a previous page.
limit?numberPage size. Values outside 1-100 fall back to 25.
1 <= value <= 10025status?array<>Only return transactions with these statuses.
timezone?stringIANA timezone used to render timestamps (and the merchantId date window).
fromDate?stringsearchBy merchantId only. Start calendar date; defaults to yesterday.
^\d{4}-\d{2}-\d{2}$toDate?stringsearchBy merchantId only. End calendar date; defaults to today.
^\d{4}-\d{2}-\d{2}$Response parameters & Errors
Matching transactions. No match (or no reseller configuration) returns an empty page. For a liable merchant (searchBy merchantId) the body carries isLiable: true and a top-level timezone instead of data.timezone.
application/json- response
data*pagination*isLiable?booleanPresent (true) only for a liable-merchant result.
timezone?stringPresent only on liable-merchant results with rows, in place of data.timezone.

