Batch Report

Use our API to browse a list of merchant batches.

Follow this guide to request a batch report, which provides data on whole batches that have been settled from your POS device, software, or gateway. You can request all settled batches or set filters for more focused data. See Batch Report in API Reference for field definitions.


  1. See Create a Sandbox Account to sign up and log in to the Maast Manager portal.

  2. Follow the steps in Get Your API Credentials to save a sandbox ID and API key.

  3. See Authentication to format the credentials and generate your API token. (Alternatively, use the credentials as-is to test this endpoint with our 'Try It!' feature.)

  4. If you have not yet made any transaction requests, follow the steps in the API: Quick Start guide to perform a basic sale transaction.

  5. If you have not yet closed a batch, send a Close Batch request.


Write a GET request to send to the /platform/reporting/batches endpoint. See the sample code below:

curl --request GET \
     --url \
     --header 'accept: application/json' \
     --header 'authorization: Basic OjllZGVjMjFhMzFjMHh5ejc4OWUzMGEzNDE2YWJjMTIz'

The above code requests data on all closed batches for your account, using default sorting and no filtering.

The following sections describe several query parameters that you can add to your request to sort and filter the response. To add these parameters, append them to the request endpoint URL, preceded by ? and separated by &.


Use the following parameters to sort the data in the response:

  • order_on - Include this to sort results by a certain field. For example, to sort by batch number, write order_on=batch_number. All available fields are listed in the data array in the response model for this request's API Reference.
  • order_by - Include this to sort the specified field by ascending order (asc) or descending order (desc).


Use the following parameters to filter the response:

  • filter - Include this to narrow results by requiring certain fields to meet specified values. You can combine multiple filters. Each filter contains three properties, packed together with commas:
    • field name - All available fields are listed in the response model of this request's API Reference.
    • filter conditional - Find supported filter conditionals in About Our APIs: Filters.
    • the value on which to filter
  • count - Include this to set the number of records in the result.
  • page - Include this to choose a page to display when there are more results than the count parameter.


When placing strings in URLs, be sure to use your development language's URL encoding methods (e.g., for hexadecimal, use %2C in lieu of a comma).

Example Request

Once configured, the code for your request will resemble the following sample code:

curl --request GET \
     --url '' \
     --header 'accept: application/json' \
     --header 'authorization: Basic OjllZGVjMjFhMzFjMHh5ejc4OWUzMGEzNDE2YWJjMTIz'


Once you have sent your request, you will receive a response like this from the Maast server:

  "code": 0,
  "message": "Success",
  "totalPages": 10,
  "totalRecords": 100,
  "data": {
    "batch_id": 1,
    "merchant_id": 212000000001,
    "tran_currency": "840",
    "batch_number": 1,
    "batch_date": "2025-07-01T00:00:00.000Z",
    "amt_total": "101.00",
    "cnt_total": "10",
    "amt_purch": "102.00",
    "cnt_purch": "10",
    "amt_return": "1.00",
    "cnt_return": "1"

Check the code field in the request response: 0 confirms success. If the value is something other than 0, check Platform API Response Codes in Reference.

The data field shows an array of batches and their data. The sample response above shows data for one batch. See Batch Report in API Reference for response field definitions.

Test and Go Live

See our Test and Go Live guide to test your API integration and to start transacting with an active production account.