Tyro Connect Referrals API
Lets partners submit and track merchant referrals into Tyro, supporting partner-driven merchant acquisition and onboarding workflows within the Tyro Connect ecosystem.
Lets partners submit and track merchant referrals into Tyro, supporting partner-driven merchant acquisition and onboarding workflows within the Tyro Connect ecosystem.
openapi: 3.1.0
info:
title: Referrals API
version: '1.0'
contact: {}
description: >
The API allows the APP to create a referral. Currently the API supports
creating and retrieving information about a referral.
servers:
- url: https://api.tyro.com/connect
description: Production
paths:
/referrals:
post:
summary: Create Referral
description: >-
This endpoint is used to create a referral within Tyro Connect.
Use the *referralId* that is returned in the response to identify the
referral for subsequent events or retrieving the details.
operationId: create-referral-request
responses:
'200':
description: OK
content:
application/json:
schema:
type: object
properties:
referralId:
type: string
description: referralId
required:
- referralId
examples:
Created Referral:
value:
referralId: c9999d35-e494-4002-8c93-f090b174307d
'400':
description: When the provided payload is not valid.
content:
application/json:
schema:
type: object
properties:
error:
type: string
description: The validation error category.
errorCode:
type: string
description: The validation error code.
data:
type: array
description: A list of validation errors.
items:
type: string
examples:
Missing property:
value:
error: Bad request
errorCode: INVALID_INPUT
data:
- Invalid ABN
'403':
description: When you don't have the right permissions to create a referral.
'404':
description: When the partnerId or partnerChannelAgreementId does not exist.
content:
application/json:
schema:
type: object
properties:
error:
type: string
description: The validation error message.
examples:
Missing property:
value:
error: >-
Partner id "1491ec4a-3f46-4b4d-9bc0-23f2260f41c9" not
found
headers: {}
security:
- JWT: []
requestBody:
content:
application/json:
schema:
type: object
properties:
partnerId:
type: string
description: partnerId
partnerChannelAgreementId:
type: string
description: partnerChannelAgreementId
clientReference:
type: string
description: clientReference
referralType:
type: string
description: referralType
enum:
- EFTPOS_REFERRAL
- ISO
- ECOMM_ISV
- NO_COST_EFTPOS
- WHOLESALE
branchId:
type: string
description: branchId
dealerCode:
type: string
description: dealerCode
merchantDetails:
type: object
description: Account object
properties:
abn:
type: string
description: abn
companyName:
type: string
description: companyName
tradingName:
type: string
description: tradingName
merchantStatementValue:
type: number
description: merchantStatementValue
franchiseGroupId:
type: number
description: franchiseGroupId
corporateGroupId:
type: string
description: corporateGroupId
merchantGroupId:
type: string
description: merchantGroupId
websiteUrl:
type: string
description: websiteUrl
industry:
type: string
description: industry
subIndustry:
type: string
description: subIndustry
required:
- abn
- companyName
- merchantStatementValue
merchantContactDetails:
type: object
description: Contact object
properties:
firstName:
type: string
description: firstName
lastName:
type: string
description: lastName
email:
type: string
description: email
phoneNumber:
type: string
description: phoneNumber
required:
- firstName
- lastName
- email
- phoneNumber
productDetails:
type: object
description: Lead and Opportunity objects
properties:
productsOfInterest:
type: array
description: productsOfInterest
items:
type: string
enum:
- BYO_PHONE
- ECOMMERCE
- EMBEDDED_PAYMENTS_SDK
- GENERAL_ENQUIRY
- TYRO_GO_DONGLE
- TYRO_PRO_TERMINAL
otherProductsOfInterest:
type: array
description: otherProductsOfInterest
items:
type: string
enum:
- BANKING
- LOANS
- TERM_DEPOSIT
- XERO_INTEGRATION
integrationProduct:
type: string
description: integrationProduct
softwareProduct:
type: string
description: softwareProduct
required:
- productsOfInterest
pricingDetails:
type: object
description: Lead and Opportunity objects
properties:
retailRate:
type: number
description: retailRate
wholesaleRate:
type: number
description: wholesaleRate
noCostEftposRate:
type: number
description: noCostEftposRate
promotionCode:
type: string
description: promotionCode
dollarPerTransaction:
type: object
description: dollarPerTransaction
properties:
rate:
type: number
description: rate
value:
type: number
description: value
required:
- partnerId
- partnerChannelAgreementId
- referralType
- merchantDetails
- merchantContactDetails
- productDetails
- pricingDetails
examples:
Create reference:
value:
partnerId: 5491ec4a-3f46-4b4d-9bc0-23f2260f41c9
partnerChannelAgreementId: '123'
clientReference: testClientRef3
referralType: WHOLESALE
branchId: '456'
dealerCode: '789'
merchantDetails:
abn: '18842911556'
companyName: Fast Bikes
tradingName: Go Faster Bicycles
merchantStatementValue: 1000000
websiteUrl: https://gofasterbikes.com.au/
industry: Retail
subIndustry: Bicycles Tricycles and Scooters
merchantContactDetails:
firstName: Joe
lastName: bloggs
email: test+1@tyro.com
phoneNumber: '+61255501234'
productDetails:
productsOfInterest:
- TYRO_GO_DONGLE
- ECOMMERCE
otherProductsOfInterest:
- BANKING
- LOANS
integrationProduct: WhizzBangPOS
softwareProduct: ecommForAll
pricingDetails:
retailRate: 1.8
wholesaleRate: 1.2
noCostEftposRate: 1.95
promotionCode: First 3 months free second 3 months 10 percent discount
dollarPerTransaction:
rate: 10
value: 0.05
parameters:
- $ref: '#/components/parameters/header-bearer-token'
- $ref: '#/components/parameters/header-content-json'
/referrals/{referralId}:
get:
summary: Get Referral
description: This endpoint is for fetching the details of a referral.
operationId: get-referral
responses:
'200':
description: The referral response
content:
application/json:
schema:
type: object
properties:
partnerId:
type: string
description: partnerId
referralId:
type: string
description: referralId
clientReference:
type: string
description: clientReference
status:
type: string
description: status
enum:
- REFERRAL_RECEIVED
- REFERRAL_REQUESTED
- REFERRAL_FAILED
- MERCHANT_APPLICATION_FORM_NOT_YET_ACCESSED_BY_MERCHANT
- >-
MERCHANT_APPLICATION_FORM_COMPLETION_IN_PROGRESS_BY_MERCHANT
- >-
MERCHANT_APPLICATION_FORM_COMPLETED_AND_SIGNED_BY_MERCHANT
- MERCHANT_APPLICATION_IN_REVIEW
- MERCHANT_CONDITIONALLY_APPROVED
- >-
MERCHANT_APPLICATION_RETURNED_ADDITIONAL_INFORMATION_REQUIRED
- MERCHANT_FULLY_APPROVED
- MERCHANT_APPLICATION_REJECTED
- MERCHANT_APPLICATION_CANCELLED_BY_MERCHANT
error:
type: string
description: status error desciption
required:
- partnerId
- referralId
- status
examples:
Get Referral:
value:
partnerId: 5491ec4a-3f46-4b4d-9bc0-23f2260f41c9
referralId: 2688fcf2-44dd-4c72-88ac-79d0910f2983
clientReference: client-ref-001
status: MERCHANT_FULLY_APPROVED
'403':
description: When you don't have the right permissions to get a reference.
'404':
description: >-
When the provided `referralId` does not match a referral stored in
the system.
content:
application/json:
schema:
type: object
properties:
error:
type: string
description: The validation error message.
examples:
Bad Request:
value:
error: Not found
parameters:
- in: path
description: Id of the referral in Tyro Connect that should be retrieved
name: referralId
required: true
schema:
type: string
example: 2688fcf2-44dd-4c72-88ac-79d0910f2983
- $ref: '#/components/parameters/header-bearer-token'
security:
- JWT: []
components:
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