Tyro Payments Pay Refunds API

The Pay Refunds API from Tyro Payments — 2 operation(s) for pay refunds.

Operations 3

POST /pay/refunds Create a Refund Request #
GET /pay/refunds List all Refunds #
GET /pay/refunds/{refundRequestId} Retrieve a Refund Request #

Documentation

📖
Documentation
https://docs.connect.tyro.com/app/apis/pay
📖
APIReference
https://docs.connect.tyro.com/app/apis/pay/0.9
📖
Authentication
https://docs.connect.tyro.com/app/authentication
📖
Documentation
https://docs.connect.tyro.com/pos/apis/pay-terminal
📖
APIReference
https://docs.connect.tyro.com/pos/apis/pay-terminal/0.9
📖
Documentation
https://docs.connect.tyro.com/pos/apis/embedded-payments
📖
APIReference
https://docs.connect.tyro.com/pos/apis/embedded-payments/1.0
📖
Documentation
https://docs.connect.tyro.com/app/apis/booking
📖
APIReference
https://docs.connect.tyro.com/app/apis/booking/1.0
📖
Documentation
https://docs.connect.tyro.com/app/apis/ordering
📖
APIReference
https://docs.connect.tyro.com/app/apis/ordering/1.0
📖
Documentation
https://docs.connect.tyro.com/app/apis/menu-management
📖
APIReference
https://docs.connect.tyro.com/app/apis/menu-management/1.0
📖
Documentation
https://docs.connect.tyro.com/app/apis/tables
📖
APIReference
https://docs.connect.tyro.com/app/apis/tables/1.0
📖
Documentation
https://docs.connect.tyro.com/app/apis/sales
📖
APIReference
https://docs.connect.tyro.com/app/apis/sales/1.1
📖
Documentation
https://docs.connect.tyro.com/app/apis/reporting
📖
APIReference
https://docs.connect.tyro.com/app/apis/reporting/1.0
📖
Documentation
https://docs.connect.tyro.com/app/apis/loyalty
📖
APIReference
https://docs.connect.tyro.com/app/apis/loyalty/0.9
📖
Documentation
https://docs.connect.tyro.com/app/apis/refunds
📖
APIReference
https://docs.connect.tyro.com/app/apis/refunds/1.0
📖
Documentation
https://docs.connect.tyro.com/app/apis/locations
📖
APIReference
https://docs.connect.tyro.com/app/apis/locations/1.0
📖
Documentation
https://docs.connect.tyro.com/app/apis/referrals
📖
APIReference
https://docs.connect.tyro.com/app/apis/referrals/1.0

Specifications

Work with this as data

Every API here is available over the APIs.io API and to AI agents over MCP.

MCP server

One button, every client — Claude, Cursor, VS Code and the rest.

https://apis.io/mcp

Tools for apis

7 MCP tools reach this
  • find_apisBrowse and filter every API in the catalog.
  • get_api_artifactsOne API's artifacts, grouped by type.
  • get_openapiThe primary OpenAPI for this API.
  • find_similar_apisAPIs that look like this one.
  • apis_io_searchSTART HERE — APIs, providers and tags for one query, each with its total.
  • resolveTurn a domain, URL or GitHub org into the provider it belongs to.
  • find_cohortsEvery scored population of providers in the catalog.
All 92 tools →

Call it yourself

curl for this page
This API
curl "https://apis.io/api/v1/apis/tyro-pay-refunds-api"
All apis
curl "https://apis.io/api/v1/apis?limit=25"

Discovery needs no key. Ratings and market analysis are Pro.

Get an API key

Free tier, no form to fill in. Signing in shares your email address with us — we store it to create your key and to recognise you if you sign in with another provider. See our Privacy Policy and Terms.

A second provider on the same verified email joins the account you already have.

OpenAPI Specification

tyro-pay-refunds-api-openapi.yml Raw ↑
openapi: 3.2.0
info:
  title: Pay Refunds API
  version: '0.9'
  contact: {}
  description: Pay API
servers:
- url: https://api.tyro.com/connect
  description: Production
tags:
- name: Pay Refunds
paths:
  /pay/refunds:
    post:
      summary: Create a Refund Request
      operationId: create-refund-request
      tags:
      - Pay Refunds
      description: 'This endpoint is used to create a Refund Request.


        Refunds can only be created for successful payments made via a Pay Request. If a Pay Request has not yet been captured, then void the Pay Request instead.


        Refunds can be made for the total or partial amount of the Pay Request. Multiple refunds can be created for the same Pay Request as long as the total refunds amount does not exceed the original Pay Request total.


        Refunds can only be sent back to the original payment method used.'
      security:
      - JWT: []
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/new-refund-request'
            examples:
              Refund Request:
                value:
                  payRequestId: 0f448ac1-862a-4c7b-bdb4-a3b7cdbf6149
                  total:
                    amount: 10000
                    currency: AUD
      responses:
        '201':
          description: Created
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/refund-request-response'
              examples:
                Refund Response:
                  value:
                    id: 2d448ac1-862a-4c7b-bdb4-a3b7cdbf6148
                    payRequestId: 0f448ac1-862a-4c7b-bdb4-a3b7cdbf6149
                    status: PROCESSING
                    total:
                      amount: 10000
                      currency: AUD
                    createdAt: '2022-11-23T22:39:54.765Z'
                    updatedAt: '2022-11-23T22:39:55.045Z'
          headers: {}
        '400':
          description: When the provided payload is not valid.
          content:
            application/json:
              schema:
                type: object
                properties:
                  error:
                    type: string
                    description: The validation error message.
                  errorCode:
                    type: string
                    description: The unique error code for message.
              examples:
                Missing property:
                  value:
                    error: '"payRequestId" is required'
                    errorCode: VALIDATION_ERROR
        '403':
          description: When you don't have the right permissions to create a Refund Request.
      parameters:
      - $ref: '#/components/parameters/header-bearer-token'
      - $ref: '#/components/parameters/header-content-json'
    get:
      summary: List all Refunds
      operationId: list-all-refunds
      tags:
      - Pay Refunds
      description: Returns a list of refunds.
      security:
      - JWT: []
      responses:
        '200':
          description: OK
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/list-refunds-response'
          headers: {}
        '403':
          description: When you don't have the right permissions to list refunds.
      parameters:
      - $ref: '#/components/parameters/header-bearer-token'
      - $ref: '#/components/parameters/header-content-json'
  /pay/refunds/{refundRequestId}:
    get:
      operationId: get-refund-request
      tags:
      - Pay Refunds
      description: Retrieve a Refund Request.
      summary: Retrieve a Refund Request
      responses:
        '200':
          description: The Refund Request response
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/refund-request-response'
        '404':
          description: When the provided `refundRequestId` does not match a Refund Request stored in the system.
      security:
      - JWT: []
      parameters:
      - $ref: '#/components/parameters/header-bearer-token'
      - schema:
          type: string
        name: refundRequestId
        in: path
        required: true
components:
  schemas:
    list-refunds-response:
      title: List Refunds Response
      type: object
      properties:
        refunds:
          type: array
          description: List of refunds
          items:
            $ref: '#/components/schemas/refund-request-response'
    new-refund-request:
      title: Create Refund Request
      type: object
      properties:
        payRequestId:
          description: The id of the Pay Request to be refunded
          type: string
          example: 0f448ac1-862a-4c7b-bdb4-a3b7cdbf6148
        total:
          allOf:
          - $ref: '#/components/schemas/money-positive-aud'
          - description: The total amount to be refunded (in smallest currency unit). Defaults to the total of the Pay Request.
      required:
      - payRequestId
    money-positive-aud:
      title: Money Positive Amount
      type: object
      properties:
        amount:
          type: integer
          description: This is the amount in smallest currency unit. e.g 12520 (in cents) is $125.20
          example: 12520
          minimum: 0
        currency:
          type: string
          default: AUD
          enum:
          - AUD
          example: AUD
          description: This is always AUD
      required:
      - amount
      - currency
    refund-request-response:
      title: Refund Request Response
      type: object
      properties:
        id:
          description: The id of the Refund Request
          type: string
          example: 2d448ac1-862a-4c7b-bdb4-a3b7cdbf6143
        payRequestId:
          description: The id of the Pay Request to be refunded
          type: string
          example: 0f448ac1-862a-4c7b-bdb4-a3b7cdbf6149
        total:
          allOf:
          - $ref: '#/components/schemas/money-positive-aud'
          - description: The total amount to be refunded (in smallest currency unit). Defaults to the total of the Pay Request.
        status:
          description: The current status of the refund
          type: string
          enum:
          - SUCCESS
          - FAILED
          - PROCESSING
        createdAt:
          description: The timestamp when the Refund Request was created
          type: string
          example: '2022-11-23T22:39:54.931Z'
        updatedAt:
          description: The timestamp when the Refund Request was last updated
          type: string
          example: '2022-11-23T22:40:48.237Z'
  parameters:
    header-bearer-token:
      schema:
        type: string
        default: Bearer {$$.env.access_token}
      in: header
      name: Authorization
      required: true
    header-content-json:
      schema:
        type: string
        enum:
        - application/json
      in: header
      name: Content-Type
      required: true
  securitySchemes:
    JWT:
      type: openIdConnect
      openIdConnectUrl: https://auth.connect.tyro.com/.well-known/openid-configuration