Skip to content

Reporting API (1.0)

This API allows you to retrieve various transaction and settlements data for a given mid.

Overview
Languages
Servers
Production
https://api.tyro.com/connect

Get Settlements for a Merchant

Request

This endpoint allows you to retrieve BECs-cleared settlement details for a specific merchant on a given date.

Security
JWT
Path
midstringrequired

The merchant ID associated with the Tyro account. Used to identify the merchant whose settlement data is being retrieved.

Query
settlementDatestring(date)required

Requested settlement date (YYYY-MM-DD). Must be within the past 3 years.

Headers
Authorizationstringrequired
Default Bearer {$$.env.access_token}
curl -i -X GET \
  'https://api.tyro.com/connect/reporting/merchants/{mid}/settlements?settlementDate=2019-08-24' \
  -H 'Authorization: Bearer <YOUR_TOKEN_HERE>'

Responses

Settlements response

Bodyapplication/json
midstringrequired

The merchant ID associated with the Tyro account. Used to identify the merchant whose settlement data is being retrieved.

settlementDatestring(date)required

Requested settlement date (YYYY-MM-DD). Must be within the past 3 years.

settlementsArray of objects(Settlements)required

List of settlements for the specified merchant on the given date. If the array is empty, it may indicate that the merchant does not settle via BECS, or no settlement occurred on that date.

settlements[].​clearingPaymentIdstring

ID of the clearing payment run used to bundle transactions for a settlement.

settlements[].​grossAmountnumber

Signed gross amount settled, in cents.

Example: 10001
settlements[].​settlementDetailsArray of objects(Settlements Detail)required

Multiple settlement entries may be returned due to settlement splits by scheme, by location, or due to additional settlement destinations such as loan repayments or ATO garnishees.

settlements[].​settlementDetails[].​typestringrequired

Settlement type indicating the destination account for the payment or transfer. More values may be added in the future.

Enum"EXTERNAL_BANK_ACCOUNT""ATO""TYRO_TRANSACTION_ACCOUNT""TYRO_BANK_ACCOUNT""LOAN"
settlements[].​settlementDetails[].​institutionNamestring

Name of the institution receiving the settlement.

settlements[].​settlementDetails[].​bsbstring

BSB code in the format 'XXXXXX'.

Example: "123456"
settlements[].​settlementDetails[].​accountNumberstring

Account number of the settlement destination, partially masked.

Example: "*****7890"
settlements[].​settlementDetails[].​accountNamestring

Name associated with the settlement destination account.

settlements[].​settlementDetails[].​settlementAmountnumber

Signed amount settled, in cents.

Example: -10001
settlements[].​settlementDetails[].​lastUpdatedAtstring(date-time)

Indicates the time of the latest settlement status update. The format of the date time is the notation as defined by RFC 3339, section 5.6

Example: "2023-10-01T12:00:00.00Z"
settlements[].​settlementDetails[].​settlementStatusstring

Status of the settlement.

  • SENT - The settlement has been successfully sent from Tyro to the merchant’s destination financial institution. Note: The actual deposit time into the merchant’s account is determined by their bank and is not known by Tyro.
  • PENDING - The settlement process has been initiated by Tyro, but funds have not yet left Tyro’s systems.
  • ON_HOLD - The settlement is currently withheld. This may occur due to account suspension, suspected fraud, or participation in a net settlement arrangement. Funds are retained by Tyro until resolution.
  • RESUBMISSION_INITIATED - The settlement got returned back by customer's bank and Tyro initiated its resubmission.
  • RESUBMISSION_SENT - The settlement got returned back by customer's bank and resubmission was successfully sent from Tyro.
  • RESUBMISSION_ON_HOLD - The settlement got returned back by customer's bank and resubmission is on hold and funds are withheld by Tyro.
  • WITHHELD_BY_ACQUIRER - The settlement failed and funds are withheld by Tyro.
  • WITHHELD_BY_BANK - The settlement failed and funds are withheld by the customer's bank.
Enum"SENT""PENDING""ON_HOLD""RESUBMISSION_INITIATED""RESUBMISSION_SENT""RESUBMISSION_ON_HOLD""WITHHELD_BY_ACQUIRER""WITHHELD_BY_BANK"
settlements[].​settlementDetails[].​lodgementReferencestring

Lodgement reference provided with the settlement to the receiving institution, up to 18 characters.

Response
application/json
{ "mid": "111", "settlementDate": "2021-07-01", "settlements": [ {} ] }

Get Transactions for a Merchant

Request

This endpoint allows you to retrieve a merchant's list of transactions for a given terminal business day.

Security
JWT
Path
midstringrequired

The merchant ID associated with the Tyro account. Used to identify the merchant whose transaction data is being retrieved.

Query
transactionDatestring(date)required

The date (YYYY-MM-DD) that the terminal has processed the requested transactions. Must be within the past 3 years.

limitnumber[ 1 .. 2000 ]required

Specifies the amount of results to be retrieved.

Example: limit=100
pagenumber>= 1required

Specify the page to retrieve.

Page-numbering is based on the value of "limit". If limit=5, then page=1 will display the hits from 1 to 5, page=3 will display the hits from 11 to 15.

Page numbers start at 1.

A request for a non-existing page will yield 0 results.

Example: page=2
Headers
Authorizationstringrequired
Default Bearer {$$.env.access_token}
curl -i -X GET \
  'https://api.tyro.com/connect/reporting/merchants/{mid}/transactions?transactionDate=2019-08-24&limit=100&page=2' \
  -H 'Authorization: Bearer <YOUR_TOKEN_HERE>'

Responses

Transactions response

Bodyapplication/json
terminalBusinessDaystring(date)required

The date (YYYY-MM-DD) that the terminal has processed the requested transactions.

Example: "2025-05-26"
merchantDetailsobject(Merchant Details)required

Details of the merchant for whom the transactions are reported.

merchantDetails.​midstringrequired

The merchant ID associated with the Tyro account.

Example: "111"
merchantDetails.​tradingNamestringrequired

The trading name of the merchant.

Example: "Test Merchant"
transactionsArray of objects(Transaction)required

List of transactions for the specified merchant and date.

transactions[].​transactionIdstringrequired

Unique identifier for the transaction.

Example: "5c05f70e3f0e3bd3b5359d5cf20e5a75fb4dd525229350e15137e78f1bfa4de6"
transactions[].​transactionLocalDateTimestring(date-time)required

The local date and time on the terminal when the transaction was processed.

Example: "2025-05-26T14:30:15"
transactions[].​transactionStatusstringrequired

Status of the transaction. Possible values include APPROVED, DECLINED, CANCELLED, TIMED_OUT, VOIDED, PRE_AUTHORISED.

Example: "APPROVED"
transactions[].​transactionDescriptionstring or nullrequired

Description of the transaction.

Example: "Card Payment"
transactions[].​locationIdstringrequired

A unique identifier used to represent a specific location of a merchant.

Example: "122"
transactions[].​tidintegerrequired

A unique identifier of the terminal used to process the transaction.

Example: 12345
transactions[].​deviceTypestring or nullrequired

Type of device used to process the transaction.

Example: "DX4000"
transactions[].​mobilePlatformTypestring or nullrequired

Mobile platform type if applicable.

Example: "IOS"
transactions[].​paymentTypestringrequired

Payment method type. Possible values include GOODS_AND_SERVICES, REFUND_GOODS_AND_SERVICES, GOODS_AND_SERVICES_WITH_CASH, CASH_WITHDRAWAL, CREDIT_ADJUSTMENT.

Example: "GOODS_AND_SERVICES"
transactions[].​feeTypestringrequired

Fee structure applied. Possible values include DEBIT_EFTPOS_CASHOUT, DEBIT_EFTPOS_NO_CASHOUT, CREDIT_SWIPED, CREDIT_COMMERCIAL_AND_PREMIUM, INTERNATIONAL, MASTERCARD_INTERNATIONAL, UNION_PAY_INTERNATIONAL_DEBIT, DEBIT_SCHEME_SWIPED, AMEX_JCB_FEES, ALIPAY, NO_FEES, UNKNOWN.

Example: "DEBIT_EFTPOS_NO_CASHOUT"
transactions[].​fromAccountTypestring or nullrequired

Source account type. Possible values include DEFAULT, SAVINGS, CHEQUE, CREDIT.

Example: "CREDIT"
transactions[].​isExpressPaymentboolean or nullrequired

Whether this was an express payment (i.e. Visa or Mastercard purchases under $35).

Example: false
transactions[].​cardobject(Card Details)required
transactions[].​card.​typestringrequired

Card type/scheme. Possible values include VISA, MASTERCARD, EFTPOS, UNION_PAY, AMEX, JCB, DINERS.

Example: "VISA"
transactions[].​card.​cardLastFourstringrequired

Masked card number, with only the last four digits visible.

Example: "XXXXXXXXXXXX0009"
transactions[].​card.​cardEntryModestringrequired

How the card payment was processed. Possible values include CHIP, CONTACTLESS, CONTACTLESS_MAG_STRIPE, MAG_STRIPE, CHIP_ERROR_MAG_STRIPE_USED, MANUAL, UNKNOWN.

Example: "MAG_STRIPE"
transactions[].​card.​cardPresentboolean or nullrequired

Whether the card was physically present.

Example: true
transactions[].​isEcommerceTransactionbooleanrequired

Whether this is an e-commerce transaction.

Example: false
transactions[].​ecommerceOrderIdstring or nullrequired

E-commerce order id if applicable.

Example: null
transactions[].​isRefundbooleanrequired

Whether this transaction is a refund.

Example: false
transactions[].​refundReasonstring or nullrequired

Reason for refund if applicable.

Example: null
transactions[].​isReversalbooleanrequired

Whether this transaction is a reversal.

Example: false
transactions[].​reversalReasonstring or nullrequired

Reason for reversal if applicable.

Example: null
transactions[].​isInternationalboolean or nullrequired

Whether the transaction was processed with in a foreign currency.

Example: false
transactions[].​dccobjectrequired

Details for a Dynamic Currency Conversion (DCC) transaction.

transactions[].​dcc.​currencyCodestring or nullrequired

Foreign currency code for DCC transaction.

Example: "USD"
transactions[].​dcc.​exchangeRatenumber or nullrequired

Exchange rate applied for DCC.

Example: 1.45
transactions[].​dcc.​foreignCurrencyAmountnumber or nullrequired

Amount in foreign currency (in cents).

Example: 5862
transactions[].​dcc.​merchantCommissionAmountnumberrequired

Commission amount for DCC (in cents).

Example: 120
transactions[].​amountDetailsobject(Amount Details)required
transactions[].​amountDetails.​saleAmountnumberrequired

Sale amount (in cents).

Example: 12550
transactions[].​amountDetails.​refundAmountnumberrequired

Refund amount (negative value, in cents).

Example: -550
transactions[].​amountDetails.​tipAmountnumberrequired

Tip amount (in cents).

Example: 0
transactions[].​amountDetails.​cashOutAmountnumberrequired

Cash out amount (in cents).

Example: 0
transactions[].​amountDetails.​surchargeAmountnumberrequired

Surcharge amount (in cents).

Example: 215
transactions[].​amountDetails.​donationAmountnumberrequired

Donation amount (in cents).

Example: 0
transactions[].​totalAmountnumberrequired

Total transaction amount (in cents).

Example: 12765
transactions[].​amountToPayMerchantnumberrequired

Amount to be paid to merchant (in cents).

Example: 12550
transactions[].​settlementAmountnumberrequired

Net settlement amount after fees (in cents).

Example: 12335
transactions[].​merchantAcquiringFeenumberrequired

Acquiring fee charged to merchant (in cents).

Example: 0.3839
transactions[].​acquirerActionCodestringrequired

Action code from acquirer. Possible values include APPROVED, DECLINED, CALL_ISSUER, CAPTURE_CARD.

Example: "APPROVED"
transactions[].​rrnnumber or nullrequired

Retrieval Reference Number.

Example: null
transactions[].​tyroReferencenumber or nullrequired

Tyro transaction reference number. Maximum six digits.

Example: null
transactions[].​integratedTransactionIdstring or nullrequired

Identifier used by the POS to process an integrated transaction with the terminal.

Example: null
paginationobjectrequired

Pagination details for the transaction results.

pagination.​pageinteger>= 1required

The current page number.

Example: 1
pagination.​sizeintegerrequired

The number of transactions per page.

Example: 10
pagination.​limitintegerrequired

The maximum number of transactions that can be returned per page.

Example: 100
pagination.​totalintegerrequired

The total number of transactions.

Example: 45
Response
application/json
{ "terminalBusinessDay": "2025-05-26", "merchantDetails": { "mid": "122", "tradingName": "Test Merchant" }, "transactions": [ {}, {}, {} ], "pagination": { "page": 1, "size": 3, "limit": 100, "total": 3 } }