---
title: Get Transactions by mWallet
slug: api/get-transactions-by-mwallet
docTags: 
createdAt: 2026-08-24T01:23:09.421Z
---

{
  "id": "YbkvN5Kie_YY0RaTzLvbH",
  "type": "api-oas-v2",
  "data": {
    "method": "POST",
    "url": "https://api.mpay.com.au/mWallet/v1/transactions",
    "servers": [
      {
        "url": "https://api.mpay.com.au/mWallet/v1/transactions",
        "description": "Production URL"
      },
      {
        "url": "https://api.m-pay.com.au/mWallet/v1/transactions",
        "description": "Sandbox URL"
      }
    ],
    "name": "Get Transactions by mWallet",
    "description": "This API will return an array of transactions for an mWallet between two dates. Paging is supported by using the skip and take properties of the request. The information retrieved is in real time and represents the same details as displayed on an mAccount financial statement.",
    "contentType": "application/json",
    "request": {
      "pathParameters": [],
      "headerParameters": [
        {
          "name": "accept",
          "type": "string",
          "kind": "optional",
          "description": "Generated from available response content types",
          "enum": [
            "application/json"
          ],
          "default": "application/json"
        }
      ],
      "queryParameters": [],
      "bodyDataParameters": [
        {
          "kind": "required",
          "name": "body",
          "type": "object",
          "description": "Request payload used to retrieve a paged list of mWallet transactions between two dates.",
          "customType": "mWalletTransactionRequestDetails",
          "schema": [
            {
              "name": "accountNumber",
              "kind": "required",
              "type": "string",
              "description": "<p><strong>Required</strong>. The 16-digit number that uniquely identifies the Ledger Account or mWallet.</p>",
              "example": "4211110000000019",
              "default": "4211110000000019",
              "pattern": "^[0-9]{16}$"
            },
            {
              "name": "pin",
              "kind": "required",
              "type": "string",
              "description": "<p><strong>Required</strong>. The 4-digit numerical pin registered against the mWallet.</p>",
              "example": "1234",
              "default": "1234",
              "pattern": "^[0-9]{4}$"
            },
            {
              "name": "startDate",
              "kind": "optional",
              "type": "string",
              "description": "<p><strong>Conditional</strong>. The start date of the statement, in ISO 8601 date-time format. Required when the frequency is set to custom. Note that the timezone is suppressed; the default timezone is Sydney local time.</p>",
              "example": "2026-07-01T00:00:00",
              "default": "2026-07-01T00:00:00",
              "pattern": "^[0-9]{4}-[0-9]{2}-[0-9]{2}T[0-9]{2}:[0-9]{2}:[0-9]{2}(\\.[0-9]{1,7})?$"
            },
            {
              "name": "endDate",
              "kind": "optional",
              "type": "string",
              "description": "<p><strong>Conditional</strong>. The end date of the statement, in ISO 8601 date-time format. Required when the frequency is set to custom. Note that the timezone is suppressed; the default timezone is Sydney local time.</p>",
              "example": "2026-07-31T23:59:59",
              "default": "2026-07-31T23:59:59",
              "pattern": "^[0-9]{4}-[0-9]{2}-[0-9]{2}T[0-9]{2}:[0-9]{2}:[0-9]{2}(\\.[0-9]{1,7})?$"
            },
            {
              "name": "skip",
              "kind": "optional",
              "type": "integer",
              "description": "<p><strong>Optional</strong>. The number of records to skip for paging. 0 returns from the first record.</p>",
              "example": 0,
              "default": 0,
              "pattern": "^[0-9]{1,7}$"
            },
            {
              "name": "take",
              "kind": "optional",
              "type": "integer",
              "description": "<p><strong>Optional</strong>. The number of records to take for paging. If take is 0 then all records are returned.</p>",
              "example": 50,
              "default": 50,
              "pattern": "^[0-9]{1,7}$"
            },
            {
              "name": "descending",
              "kind": "optional",
              "type": "string",
              "description": "<p><strong>Optional</strong>. Send the text value 'true' to sort the returned transaction list in descending date order, or 'false' for ascending order.</p>",
              "example": "true",
              "default": "true",
              "pattern": "^(true|false)$"
            },
            {
              "name": "useTime",
              "kind": "optional",
              "type": "string",
              "description": "<p><strong>Optional</strong>. Send the text value 'true' to use the time component of startDate and endDate in the selection, or 'false' to select on the date component only.</p>",
              "example": "false",
              "default": "false",
              "pattern": "^(true|false)$"
            }
          ],
          "modelRef": "#/components/schemas/mWalletTransactionRequestDetails",
          "isExpanded": true
        }
      ],
      "formDataParameters": [],
      "oAuthParameters": [
        {
          "id": "basicAuth",
          "name": "basicAuth",
          "kind": "optional",
          "type": "http",
          "description": "<p>To authenticate using basic authentication, generate an API key and pass it as the username. No password is required.</p>",
          "scheme": "basic"
        }
      ],
      "cookieParameters": []
    },
    "responses": [
      {
        "statusCode": "200",
        "description": "Successful validation. The matching transactions are returned.",
        "jsonExample": "",
        "isExpanded": true,
        "schema": [
          {
            "kind": "optional",
            "type": "object",
            "description": "Response returned when retrieving transactions for an mWallet.",
            "customType": "mWalletTransactionsResponse_V1",
            "schema": [
              {
                "name": "openingBalance",
                "kind": "optional",
                "type": "number",
                "description": "<p><strong>Optional</strong>. The opening balance of the mWallet for the returned items, in AUD.</p>",
                "example": 250.75,
                "default": 250.75,
                "pattern": "^-?[0-9]{1,10}(\\.[0-9]{1,2})?$"
              },
              {
                "name": "closingBalance",
                "kind": "optional",
                "type": "number",
                "description": "<p><strong>Optional</strong>. The closing balance of the mWallet for the returned items, in AUD.</p>",
                "example": 350.75,
                "default": 350.75,
                "pattern": "^-?[0-9]{1,10}(\\.[0-9]{1,2})?$"
              },
              {
                "name": "totalDebits",
                "kind": "optional",
                "type": "number",
                "description": "<p><strong>Optional</strong>. The total debits for the returned items, in AUD.</p>",
                "example": 0,
                "default": 0,
                "pattern": "^-?[0-9]{1,10}(\\.[0-9]{1,2})?$"
              },
              {
                "name": "totalCredits",
                "kind": "optional",
                "type": "number",
                "description": "<p><strong>Optional</strong>. The total credits for the returned items, in AUD.</p>",
                "example": 100,
                "default": 100,
                "pattern": "^-?[0-9]{1,10}(\\.[0-9]{1,2})?$"
              },
              {
                "name": "items",
                "kind": "optional",
                "type": "array",
                "description": "<p><strong>Optional</strong>. The array of transaction rows returned for the requested date range and page.</p>",
                "modelRef": "#/components/schemas/mWalletTransactionLineItem",
                "customType": "mWalletTransactionLineItem[]",
                "schema": [
                  {
                    "name": "rowOrder",
                    "kind": "optional",
                    "type": "integer",
                    "description": "<p><strong>Optional</strong>. The sequence value used to sort the returned rows.</p>",
                    "example": 1,
                    "default": 1,
                    "pattern": "^[0-9]{1,7}$"
                  },
                  {
                    "name": "mPaymentsId",
                    "kind": "optional",
                    "type": "integer",
                    "description": "<p><strong>Optional</strong>. The Monoova internal Id for the row returned.</p>",
                    "example": 987654321,
                    "default": 987654321,
                    "pattern": "^[0-9]{1,12}$"
                  },
                  {
                    "name": "transactionId",
                    "kind": "optional",
                    "type": "integer",
                    "description": "<p><strong>Optional</strong>. The transactionId that was returned from the originating financial transaction.</p>",
                    "example": 123456789,
                    "default": 123456789,
                    "pattern": "^[0-9]{1,12}$"
                  },
                  {
                    "name": "dateTime",
                    "kind": "optional",
                    "type": "string",
                    "description": "<p><strong>Optional</strong>. The time the transaction occurred, in ISO 8601 date-time format. Note that the timezone is suppressed; the example timezone is Sydney local time.</p>",
                    "example": "2026-07-15T11:04:33",
                    "default": "2026-07-15T11:04:33",
                    "pattern": "^[0-9]{4}-[0-9]{2}-[0-9]{2}T[0-9]{2}:[0-9]{2}:[0-9]{2}(\\.[0-9]{1,7})?$"
                  },
                  {
                    "name": "mAccountName",
                    "kind": "optional",
                    "type": "string",
                    "description": "<p><strong>Optional</strong>. The name of the mAccount that conducted the transaction.</p>",
                    "example": "Monoova Retail Pty Ltd",
                    "default": "Monoova Retail Pty Ltd",
                    "pattern": "^.{1,100}$"
                  },
                  {
                    "name": "transactionType",
                    "kind": "optional",
                    "type": "string",
                    "description": "<p><strong>Optional</strong>. The major keyword describing the transaction, for example Payment, LoadFunds or DailySettlement.</p>",
                    "example": "Payment",
                    "default": "Payment",
                    "pattern": "^[A-Za-z]{1,50}$"
                  },
                  {
                    "name": "subTransactionType",
                    "kind": "optional",
                    "type": "string",
                    "description": "<p><strong>Optional</strong>. The minor keyword describing the transaction, for example GatewayMWalletCredit.</p>",
                    "example": "GatewayMWalletCredit",
                    "default": "GatewayMWalletCredit",
                    "pattern": "^[A-Za-z]{1,50}$"
                  },
                  {
                    "name": "credit",
                    "kind": "optional",
                    "type": "number",
                    "description": "<p><strong>Optional</strong>. The amount of funds credited to the mWallet on this row, in AUD.</p>",
                    "example": 100,
                    "default": 100,
                    "pattern": "^-?[0-9]{1,10}(\\.[0-9]{1,2})?$"
                  },
                  {
                    "name": "debit",
                    "kind": "optional",
                    "type": "number",
                    "description": "<p><strong>Optional</strong>. The amount of funds debited from the mWallet on this row, in AUD.</p>",
                    "example": 0,
                    "default": 0,
                    "pattern": "^-?[0-9]{1,10}(\\.[0-9]{1,2})?$"
                  },
                  {
                    "name": "runningBalance",
                    "kind": "optional",
                    "type": "number",
                    "description": "<p><strong>Optional</strong>. The balance of the mAccount at the end of this single row transaction, in AUD.</p>",
                    "example": 350.75,
                    "default": 350.75,
                    "pattern": "^-?[0-9]{1,10}(\\.[0-9]{1,2})?$"
                  },
                  {
                    "name": "description",
                    "kind": "optional",
                    "type": "string",
                    "description": "<p><strong>Optional</strong>. The description provided by the caller to the financial API, with your unique reference prepended.</p>",
                    "example": "INV-10023 Top up",
                    "default": "INV-10023 Top up",
                    "pattern": "^.{1,255}$"
                  }
                ]
              },
              {
                "name": "durationMs",
                "kind": "optional",
                "type": "integer",
                "description": "<p><strong>Optional</strong>. The total time in milliseconds that the Platform took to process the request.</p>",
                "example": 212,
                "default": 212,
                "pattern": "^[0-9]{1,7}$"
              },
              {
                "name": "status",
                "kind": "optional",
                "type": "string",
                "description": "<p><strong>Required</strong>. The status of the request. A code of 'Ok' indicates no errors.</p>",
                "example": "Ok",
                "default": "Ok",
                "pattern": "^[A-Za-z]{2,30}$"
              },
              {
                "name": "statusDescription",
                "kind": "optional",
                "type": "string",
                "description": "<p><strong>Required</strong>. A description of the status. If an 'Ok' status is returned, then this will be 'Operation completed successfully'.</p>",
                "example": "Operation completed successfully",
                "default": "Operation completed successfully",
                "pattern": "^.{1,500}$"
              }
            ],
            "modelRef": "#/components/schemas/mWalletTransactionsResponse_V1",
            "isExpanded": true
          }
        ]
      },
      {
        "statusCode": "400",
        "description": "<p>Bad request. The request failed validation - for example a mandatory field is missing, a value does not match the documented pattern, or the mWallet could not be found.</p>",
        "jsonExample": "",
        "isExpanded": true,
        "schema": [
          {
            "kind": "optional",
            "type": "object",
            "example": "{\"durationMs\":24,\"status\":\"Fail\",\"statusDescription\":\"The pin must be exactly 4 numeric digits.\",\"errorCode\":\"ValidationError\"}",
            "description": "<p>Standard error payload returned for 400, 401 and 500 responses.</p>",
            "customType": "errorResponse",
            "schema": [
              {
                "name": "durationMs",
                "kind": "optional",
                "type": "integer",
                "description": "<p><strong>Optional</strong>. The total time in milliseconds that the Platform took to process the request before the error was returned.</p>",
                "example": 24,
                "default": 24,
                "pattern": "^[0-9]{1,7}$"
              },
              {
                "name": "status",
                "kind": "optional",
                "type": "string",
                "description": "<p><strong>Required</strong>. The status of the request. A value other than 'Ok' indicates the request did not succeed, for example 'Fail', 'Unauthorized' or 'Exception'.</p>",
                "example": "Fail",
                "default": "Fail",
                "pattern": "^[A-Za-z]{2,30}$"
              },
              {
                "name": "statusDescription",
                "kind": "optional",
                "type": "string",
                "description": "<p><strong>Required</strong>. A human readable description of the error that occurred.</p>",
                "example": "The pin must be exactly 4 numeric digits.",
                "default": "The pin must be exactly 4 numeric digits.",
                "pattern": "^.{1,500}$"
              },
              {
                "name": "errorCode",
                "kind": "optional",
                "type": "string",
                "description": "<p><strong>Optional</strong>. A short machine readable code identifying the error condition. Use this value when logging or raising a support request.</p>",
                "example": "ValidationError",
                "default": "ValidationError",
                "pattern": "^[A-Za-z0-9_]{1,50}$"
              }
            ],
            "modelRef": "#/components/schemas/errorResponse",
            "isExpanded": true
          }
        ]
      },
      {
        "statusCode": "401",
        "description": "<p>Unauthorized. The basic authentication credentials are missing, malformed or the supplied API key is not valid for this operation.</p>",
        "jsonExample": "",
        "isExpanded": true,
        "schema": [
          {
            "kind": "optional",
            "type": "object",
            "example": "{\"durationMs\":8,\"status\":\"Unauthorized\",\"statusDescription\":\"Authentication failed. Supply a valid API key as the basic authentication username.\",\"errorCode\":\"Unauthorized\"}",
            "description": "<p>Standard error payload returned for 400, 401 and 500 responses.</p>",
            "customType": "errorResponse",
            "schema": [
              {
                "name": "durationMs",
                "kind": "optional",
                "type": "integer",
                "description": "<p><strong>Optional</strong>. The total time in milliseconds that the Platform took to process the request before the error was returned.</p>",
                "example": 24,
                "default": 24,
                "pattern": "^[0-9]{1,7}$"
              },
              {
                "name": "status",
                "kind": "optional",
                "type": "string",
                "description": "<p><strong>Required</strong>. The status of the request. A value other than 'Ok' indicates the request did not succeed, for example 'Fail', 'Unauthorized' or 'Exception'.</p>",
                "example": "Fail",
                "default": "Fail",
                "pattern": "^[A-Za-z]{2,30}$"
              },
              {
                "name": "statusDescription",
                "kind": "optional",
                "type": "string",
                "description": "<p><strong>Required</strong>. A human readable description of the error that occurred.</p>",
                "example": "The pin must be exactly 4 numeric digits.",
                "default": "The pin must be exactly 4 numeric digits.",
                "pattern": "^.{1,500}$"
              },
              {
                "name": "errorCode",
                "kind": "optional",
                "type": "string",
                "description": "<p><strong>Optional</strong>. A short machine readable code identifying the error condition. Use this value when logging or raising a support request.</p>",
                "example": "ValidationError",
                "default": "ValidationError",
                "pattern": "^[A-Za-z0-9_]{1,50}$"
              }
            ],
            "modelRef": "#/components/schemas/errorResponse",
            "isExpanded": true
          }
        ]
      },
      {
        "statusCode": "500",
        "description": "Internal server error. An unexpected condition prevented the Platform from completing the request. Retry the request and contact Monoova support if the error persists.",
        "jsonExample": "",
        "isExpanded": true,
        "schema": [
          {
            "kind": "optional",
            "type": "object",
            "example": "{\"durationMs\":1503,\"status\":\"Exception\",\"statusDescription\":\"An unexpected error occurred while processing the request.\",\"errorCode\":\"InternalServerError\"}",
            "description": "<p>Standard error payload returned for 400, 401 and 500 responses.</p>",
            "customType": "errorResponse",
            "schema": [
              {
                "name": "durationMs",
                "kind": "optional",
                "type": "integer",
                "description": "<p><strong>Optional</strong>. The total time in milliseconds that the Platform took to process the request before the error was returned.</p>",
                "example": 24,
                "default": 24,
                "pattern": "^[0-9]{1,7}$"
              },
              {
                "name": "status",
                "kind": "optional",
                "type": "string",
                "description": "<p><strong>Required</strong>. The status of the request. A value other than 'Ok' indicates the request did not succeed, for example 'Fail', 'Unauthorized' or 'Exception'.</p>",
                "example": "Fail",
                "default": "Fail",
                "pattern": "^[A-Za-z]{2,30}$"
              },
              {
                "name": "statusDescription",
                "kind": "optional",
                "type": "string",
                "description": "<p><strong>Required</strong>. A human readable description of the error that occurred.</p>",
                "example": "The pin must be exactly 4 numeric digits.",
                "default": "The pin must be exactly 4 numeric digits.",
                "pattern": "^.{1,500}$"
              },
              {
                "name": "errorCode",
                "kind": "optional",
                "type": "string",
                "description": "<p><strong>Optional</strong>. A short machine readable code identifying the error condition. Use this value when logging or raising a support request.</p>",
                "example": "ValidationError",
                "default": "ValidationError",
                "pattern": "^[A-Za-z0-9_]{1,50}$"
              }
            ],
            "modelRef": "#/components/schemas/errorResponse",
            "isExpanded": true
          }
        ]
      }
    ],
    "hasXCodeSamples": false,
    "examples": {
      "languages": [
        {
          "id": "oOx7Bsid85gzUhsxZl6is",
          "language": "curl",
          "label": "cURL",
          "code": "curl --request POST \\\n     --url https://api.mpay.com.au/mWallet/v1/transactions \\\n     --header 'accept: application/json' \\\n     --header 'content-type: application/json' \\\n     --data '{\n     \"accountNumber\": \"4211110000000019\",\n     \"pin\": \"1234\",\n     \"startDate\": \"2026-07-01T00:00:00\",\n     \"endDate\": \"2026-07-31T23:59:59\",\n     \"take\": 50,\n     \"descending\": \"true\",\n     \"useTime\": \"false\"\n     }'"
        },
        {
          "id": "8xIUQQaFtg0cLb_K8MgCN",
          "language": "javascript",
          "label": "javascript",
          "code": "var myHeaders = new Headers();\nmyHeaders.append(\"accept\", \"application/json\");\nmyHeaders.append(\"content-type\", \"application/json\");\n\nvar raw = JSON.stringify({\n   \"accountNumber\": \"4211110000000019\",\n   \"pin\": \"1234\",\n   \"startDate\": \"2026-07-01T00:00:00\",\n   \"endDate\": \"2026-07-31T23:59:59\",\n   \"take\": 50,\n   \"descending\": \"true\",\n   \"useTime\": \"false\"\n});\n\nvar requestOptions = {\n   method: 'POST',\n   headers: myHeaders,\n   body: raw,\n   redirect: 'follow'\n};\n\nfetch(\"https://api.mpay.com.au/mWallet/v1/transactions\", requestOptions)\n   .then(response => response.text())\n   .then(result => console.log(result))\n   .catch(error => console.log('error', error));"
        },
        {
          "id": "UdUKppGfd29X2FLTLkkaP",
          "language": "ruby",
          "label": "Ruby",
          "code": "require \"uri\"\nrequire \"json\"\nrequire \"net/http\"\n\nurl = URI(\"https://api.mpay.com.au/mWallet/v1/transactions\")\n\nhttps = Net::HTTP.new(url.host, url.port)\nhttps.use_ssl = true\n\nrequest = Net::HTTP::Post.new(url)\nrequest[\"accept\"] = \"application/json\"\nrequest[\"content-type\"] = \"application/json\"\nrequest.body = JSON.dump({\n   \"accountNumber\": \"4211110000000019\",\n   \"pin\": \"1234\",\n   \"startDate\": \"2026-07-01T00:00:00\",\n   \"endDate\": \"2026-07-31T23:59:59\",\n   \"take\": 50,\n   \"descending\": \"true\",\n   \"useTime\": \"false\"\n})\n\nresponse = https.request(request)\nputs response.read_body\n"
        },
        {
          "id": "RpUcg0wRamrNqYi9zHTaj",
          "language": "python",
          "label": "Python",
          "code": "import requests\nimport json\n\nurl = \"https://api.mpay.com.au/mWallet/v1/transactions\"\n\npayload = json.dumps({\n   \"accountNumber\": \"4211110000000019\",\n   \"pin\": \"1234\",\n   \"startDate\": \"2026-07-01T00:00:00\",\n   \"endDate\": \"2026-07-31T23:59:59\",\n   \"take\": 50,\n   \"descending\": \"true\",\n   \"useTime\": \"false\"\n})\nheaders = {\n   'accept': 'application/json',\n   'content-type': 'application/json'\n}\n\nresponse = requests.request(\"POST\", url, headers=headers, data=payload)\n\nprint(response.text)\n"
        }
      ],
      "selectedLanguageId": "oOx7Bsid85gzUhsxZl6is"
    },
    "results": {
      "languages": [
        {
          "id": "2zQ1VuC74TOTsRPTW3MLn",
          "language": "200",
          "code": "// Successful validation. The matching transactions are returned.\n{\n  \"openingBalance\": 250.75,\n  \"closingBalance\": 350.75,\n  \"totalDebits\": 0,\n  \"totalCredits\": 100,\n  \"items\": [\n    {\n      \"rowOrder\": 1,\n      \"mPaymentsId\": 987654321,\n      \"transactionId\": 123456789,\n      \"dateTime\": \"2026-07-15T11:04:33\",\n      \"mAccountName\": \"Monoova Retail Pty Ltd\",\n      \"transactionType\": \"Payment\",\n      \"subTransactionType\": \"GatewayMWalletCredit\",\n      \"credit\": 100,\n      \"debit\": 0,\n      \"runningBalance\": 350.75,\n      \"description\": \"INV-10023 Top up\"\n    }\n  ],\n  \"durationMs\": 212,\n  \"status\": \"Ok\",\n  \"statusDescription\": \"Operation completed successfully\"\n}"
        },
        {
          "id": "ZBZNxa7t4yinkR3wh2y5n",
          "language": "400",
          "code": "// Bad request. The request failed validation - for example a mandatory field is missing, a value does not match the documented pattern, or the mWallet could not be found.\n{\n  \"durationMs\": 24,\n  \"status\": \"Fail\",\n  \"statusDescription\": \"The pin must be exactly 4 numeric digits.\",\n  \"errorCode\": \"ValidationError\"\n}"
        },
        {
          "id": "SYtpUaTCnsj5C0W9psomW",
          "language": "401",
          "code": "// Unauthorized. The basic authentication credentials are missing, malformed or the supplied API key is not valid for this operation.\n{\n  \"durationMs\": 24,\n  \"status\": \"Fail\",\n  \"statusDescription\": \"The pin must be exactly 4 numeric digits.\",\n  \"errorCode\": \"ValidationError\"\n}"
        },
        {
          "id": "fBzc59edE2U1ZJuMnPcFX",
          "language": "500",
          "code": "// Internal server error. An unexpected condition prevented the Platform from completing the request. Retry the request and contact Monoova support if the error persists.\n{\n  \"durationMs\": 24,\n  \"status\": \"Fail\",\n  \"statusDescription\": \"The pin must be exactly 4 numeric digits.\",\n  \"errorCode\": \"ValidationError\"\n}"
        }
      ],
      "selectedLanguageId": "2zQ1VuC74TOTsRPTW3MLn"
    }
  },
  "children": [
    {
      "text": ""
    }
  ]
}