Payabli Boarding API
The Boarding API from Payabli — 12 operation(s) for boarding.
The Boarding API from Payabli — 12 operation(s) for boarding.
openapi: 3.1.0
info:
title: API reference Bill Boarding API
version: 1.0.0
servers:
- url: https://api-sandbox.payabli.com/api
description: Sandbox
- url: https://api.payabli.com/api
description: Production
tags:
- name: Boarding
paths:
/Boarding/app:
post:
operationId: AddApplication
summary: Create boarding application
description: Creates a boarding application in an organization. This endpoint requires an application API token.
tags:
- Boarding
parameters:
- name: Authorization
in: header
description: 'OAuth2 Bearer access token from the client-credentials flow. See [OAuth authentication](/developers/oauth-authentication).
'
required: true
schema:
type: string
responses:
'200':
description: Success
content:
application/json:
schema:
$ref: '#/components/schemas/PayabliApiResponse00Responsedatanonobject'
'400':
description: Bad request / invalid data.
content:
application/json:
schema:
$ref: '#/components/schemas/PayabliErrorBody'
'401':
description: Unauthorized request.
content:
application/json:
schema:
$ref: '#/components/schemas/PayabliErrorBody'
'500':
description: Internal server error.
content:
application/json:
schema:
$ref: '#/components/schemas/PayabliErrorBody'
'503':
description: Database connection error.
content:
application/json:
schema:
$ref: '#/components/schemas/PayabliErrorBody'
requestBody:
content:
application/json:
schema:
$ref: '#/components/schemas/AddApplicationRequest'
/Boarding/applications:
post:
operationId: AddServiceToPaypointFromApp
summary: Create multi-product boarding application
description: Creates a new boarding application linked to an existing paypoint as part of the multi-product boarding flow. Use this endpoint to add new services to a paypoint without creating a duplicate record. The system copies eligible business, contact, banking, and address data from the paypoint to the new application based on 1:1 field matching. The merchant only needs to provide fields that are specific to the new service. See the [Multi-product boarding](/guides/pay-ops-developer-boarding-multi-product) guide for the full flow.
tags:
- Boarding
parameters:
- name: Authorization
in: header
description: 'OAuth2 Bearer access token from the client-credentials flow. See [OAuth authentication](/developers/oauth-authentication).
'
required: true
schema:
type: string
responses:
'200':
description: Success
content:
application/json:
schema:
$ref: '#/components/schemas/CreateApplicationFromPaypointResponse'
'400':
description: Bad request / invalid data.
content:
application/json:
schema:
$ref: '#/components/schemas/PayabliErrorBody'
'401':
description: Unauthorized request.
content:
application/json:
schema:
$ref: '#/components/schemas/PayabliErrorBody'
'500':
description: Internal server error.
content:
application/json:
schema:
$ref: '#/components/schemas/PayabliErrorBody'
'503':
description: Database connection error.
content:
application/json:
schema:
$ref: '#/components/schemas/PayabliErrorBody'
requestBody:
content:
application/json:
schema:
$ref: '#/components/schemas/CreateApplicationFromPaypointRequest'
/Boarding/read/{appId}:
get:
operationId: GetApplication
summary: Get boarding application by ID
description: Retrieves the details for a boarding application by ID.
tags:
- Boarding
parameters:
- name: appId
in: path
description: Boarding application ID.
required: true
schema:
type: integer
- name: Authorization
in: header
description: 'OAuth2 Bearer access token from the client-credentials flow. See [OAuth authentication](/developers/oauth-authentication).
'
required: true
schema:
type: string
responses:
'200':
description: Success
content:
application/json:
schema:
$ref: '#/components/schemas/ApplicationDetailsRecord'
'400':
description: Bad request / invalid data.
content:
application/json:
schema:
$ref: '#/components/schemas/PayabliErrorBody'
'401':
description: Unauthorized request.
content:
application/json:
schema:
$ref: '#/components/schemas/PayabliErrorBody'
'500':
description: Internal server error.
content:
application/json:
schema:
$ref: '#/components/schemas/PayabliErrorBody'
'503':
description: Database connection error.
content:
application/json:
schema:
$ref: '#/components/schemas/PayabliErrorBody'
/Boarding/applications/{paypointId}:
get:
operationId: GetApplicationsByPaypointId
summary: Get multi-product boarding applications for a paypoint
description: Returns all boarding applications associated with a specific paypoint, including those created through the multi-product boarding flow. Use this endpoint to track underwriting progress across multiple service additions or to build reporting views. See the [Multi-product boarding](/guides/pay-ops-developer-boarding-multi-product) guide for the full flow.
tags:
- Boarding
parameters:
- name: paypointId
in: path
description: ID of the paypoint to retrieve applications for.
required: true
schema:
type: integer
format: int64
- name: Authorization
in: header
description: 'OAuth2 Bearer access token from the client-credentials flow. See [OAuth authentication](/developers/oauth-authentication).
'
required: true
schema:
type: string
responses:
'200':
description: Success
content:
application/json:
schema:
$ref: '#/components/schemas/QueryBoardingAppsListResponse'
'400':
description: Bad request / invalid data.
content:
application/json:
schema:
$ref: '#/components/schemas/PayabliErrorBody'
'401':
description: Unauthorized request.
content:
application/json:
schema:
$ref: '#/components/schemas/PayabliErrorBody'
'500':
description: Internal server error.
content:
application/json:
schema:
$ref: '#/components/schemas/PayabliErrorBody'
'503':
description: Database connection error.
content:
application/json:
schema:
$ref: '#/components/schemas/PayabliErrorBody'
/Query/boarding/{orgId}:
get:
operationId: ListApplications
summary: Get list of applications for an organization
description: Returns a list of boarding applications for an organization. Use filters to limit results. Include the `exportFormat` query parameter to return the results as a file instead of a JSON response.
tags:
- Boarding
parameters:
- name: orgId
in: path
description: The numeric identifier for organization, assigned by Payabli.
required: true
schema:
type: integer
- name: exportFormat
in: query
description: Export format for file downloads. When specified, returns data as a file instead of JSON.
required: false
schema:
$ref: '#/components/schemas/ExportFormat'
- name: fromRecord
in: query
description: The number of records to skip before starting to collect the result set.
required: false
schema:
type: integer
default: 0
- name: limitRecord
in: query
description: Max number of records to return for the query. Use `0` or negative value to return all records.
required: false
schema:
type: integer
default: 20
- name: parameters
in: query
description: 'Collection of field names, conditions, and values used to filter the query
See [Filters and Conditions Reference](/developers/developer-guides/pay-ops-reporting-engine-overview#filters-and-conditions-reference) for help.
List of field names accepted:
- `createdAt` (gt, ge, lt, le, eq, ne)
- `startDate` (gt, ge, lt, le, eq, ne)
- `dbaname` (ct, nct)
- `legalname` (ct, nct)
- `ein` (ct, nct)
- `address` (ct, nct)
- `city` (ct, nct)
- `state` (ct, nct)
- `phone` (ct, nct)
- `mcc` (ct, nct)
- `owntype` (ct, nct)
- `ownerName` (ct, nct)
- `contactName` (ct, nct)
- `status` (in, nin, eq,ne)
- `orgParentname` (ct, nct)
- `externalpaypointID` (ct, nct, eq, ne)
- `repCode` (ct, nct, eq, ne)
- `repName` (ct, nct, eq, ne)
- `repOffice` (ct, nct, eq, ne)
List of comparison accepted - enclosed between parentheses:
- eq or empty => equal
- gt => greater than
- ge => greater or equal
- lt => less than
- le => less or equal
- ne => not equal
- ct => contains
- nct => not contains
- in => inside array
- nin => not inside array'
required: false
schema:
type: object
additionalProperties:
type:
- string
- 'null'
- name: sortBy
in: query
description: The field name to use for sorting results. Use `desc(field_name)` to sort descending by `field_name`, and use `asc(field_name)` to sort ascending by `field_name`.
required: false
schema:
type: string
- name: Authorization
in: header
description: 'OAuth2 Bearer access token from the client-credentials flow. See [OAuth authentication](/developers/oauth-authentication).
'
required: true
schema:
type: string
responses:
'200':
description: Success
content:
application/json:
schema:
$ref: '#/components/schemas/QueryBoardingAppsListResponse'
'400':
description: Bad request / invalid data.
content:
application/json:
schema:
$ref: '#/components/schemas/PayabliErrorBody'
'401':
description: Unauthorized request.
content:
application/json:
schema:
$ref: '#/components/schemas/PayabliErrorBody'
'500':
description: Internal server error.
content:
application/json:
schema:
$ref: '#/components/schemas/PayabliErrorBody'
'503':
description: Database connection error.
content:
application/json:
schema:
$ref: '#/components/schemas/PayabliErrorBody'
/Boarding/app/{appId}:
put:
operationId: UpdateApplication
summary: Update boarding application
description: Updates a boarding application by ID. This endpoint requires an application API token.
tags:
- Boarding
parameters:
- name: appId
in: path
description: Boarding application ID.
required: true
schema:
type: integer
- name: Authorization
in: header
description: 'OAuth2 Bearer access token from the client-credentials flow. See [OAuth authentication](/developers/oauth-authentication).
'
required: true
schema:
type: string
responses:
'200':
description: Success
content:
application/json:
schema:
$ref: '#/components/schemas/PayabliApiResponse00Responsedatanonobject'
'400':
description: Bad request / invalid data.
content:
application/json:
schema:
$ref: '#/components/schemas/PayabliErrorBody'
'401':
description: Unauthorized request.
content:
application/json:
schema:
$ref: '#/components/schemas/PayabliErrorBody'
'500':
description: Internal server error.
content:
application/json:
schema:
$ref: '#/components/schemas/PayabliErrorBody'
'503':
description: Database connection error.
content:
application/json:
schema:
$ref: '#/components/schemas/PayabliErrorBody'
requestBody:
content:
application/json:
schema:
$ref: '#/components/schemas/ApplicationData'
delete:
operationId: DeleteApplication
summary: Delete boarding application
description: Deletes a boarding application by ID.
tags:
- Boarding
parameters:
- name: appId
in: path
description: Boarding application ID.
required: true
schema:
type: integer
- name: Authorization
in: header
description: 'OAuth2 Bearer access token from the client-credentials flow. See [OAuth authentication](/developers/oauth-authentication).
'
required: true
schema:
type: string
responses:
'200':
description: Success
content:
application/json:
schema:
$ref: '#/components/schemas/PayabliApiResponse00Responsedatanonobject'
'400':
description: Bad request / invalid data.
content:
application/json:
schema:
$ref: '#/components/schemas/PayabliErrorBody'
'401':
description: Unauthorized request.
content:
application/json:
schema:
$ref: '#/components/schemas/PayabliErrorBody'
'500':
description: Internal server error.
content:
application/json:
schema:
$ref: '#/components/schemas/PayabliErrorBody'
'503':
description: Database connection error.
content:
application/json:
schema:
$ref: '#/components/schemas/PayabliErrorBody'
/Boarding/read/{xId}:
post:
operationId: GetApplicationByAuth
summary: Get boarding application by auth
description: Gets a boarding application by authentication information. This endpoint requires an `application` API token.
tags:
- Boarding
parameters:
- name: xId
in: path
description: 'The application ID in Hex format. Find this at the end of the boarding link URL returned in a call to api/Boarding/applink/{appId}/{mail2}. For example in: `https://boarding-sandbox.payabli.com/boarding/externalapp/load/17E`, the xId is `17E`.'
required: true
schema:
type: string
- name: Authorization
in: header
description: 'OAuth2 Bearer access token from the client-credentials flow. See [OAuth authentication](/developers/oauth-authentication).
'
required: true
schema:
type: string
responses:
'200':
description: Success
content:
application/json:
schema:
$ref: '#/components/schemas/ApplicationQueryRecord'
'400':
description: Bad request / invalid data.
content:
application/json:
schema:
$ref: '#/components/schemas/PayabliErrorBody'
'401':
description: Unauthorized request.
content:
application/json:
schema:
$ref: '#/components/schemas/PayabliErrorBody'
'500':
description: Internal server error.
content:
application/json:
schema:
$ref: '#/components/schemas/PayabliErrorBody'
'503':
description: Database connection error.
content:
application/json:
schema:
$ref: '#/components/schemas/PayabliErrorBody'
requestBody:
content:
application/json:
schema:
$ref: '#/components/schemas/RequestAppByAuth'
/Boarding/linkbyId/{boardingLinkId}:
get:
operationId: GetByIdLinkApplication
summary: Get boarding link by ID
description: Retrieves details for a boarding link, by ID.
tags:
- Boarding
parameters:
- name: boardingLinkId
in: path
description: The boarding link ID. You can find this at the end of the boarding link reference name. For example `https://boarding.payabli.com/boarding/app/myorgaccountname-00091`. The ID is `91`.
required: true
schema:
type: integer
- name: Authorization
in: header
description: 'OAuth2 Bearer access token from the client-credentials flow. See [OAuth authentication](/developers/oauth-authentication).
'
required: true
schema:
type: string
responses:
'200':
description: Success
content:
application/json:
schema:
$ref: '#/components/schemas/BoardingLinkQueryRecord'
'400':
description: Bad request / invalid data.
content:
application/json:
schema:
$ref: '#/components/schemas/PayabliErrorBody'
'401':
description: Unauthorized request.
content:
application/json:
schema:
$ref: '#/components/schemas/PayabliErrorBody'
'500':
description: Internal server error.
content:
application/json:
schema:
$ref: '#/components/schemas/PayabliErrorBody'
'503':
description: Database connection error.
content:
application/json:
schema:
$ref: '#/components/schemas/PayabliErrorBody'
/Boarding/linkbyTemplate/{templateId}:
get:
operationId: GetByTemplateIdLinkApplication
summary: Get boarding link by template ID
description: Get details for a boarding link using the boarding template ID. This endpoint requires an application API token.
tags:
- Boarding
parameters:
- name: templateId
in: path
description: 'The boarding template ID. You can find this at the end of the boarding template URL in the Payabli Portal. Example: `https://partner-sandbox.payabli.com/myorganization/boarding/edittemplate/80`. Here, the template ID is `80`.'
required: true
schema:
type: number
format: double
- name: Authorization
in: header
description: 'OAuth2 Bearer access token from the client-credentials flow. See [OAuth authentication](/developers/oauth-authentication).
'
required: true
schema:
type: string
responses:
'200':
description: Success
content:
application/json:
schema:
$ref: '#/components/schemas/BoardingLinkQueryRecord'
'400':
description: Bad request / invalid data.
content:
application/json:
schema:
$ref: '#/components/schemas/PayabliErrorBody'
'401':
description: Unauthorized request.
content:
application/json:
schema:
$ref: '#/components/schemas/PayabliErrorBody'
'500':
description: Internal server error.
content:
application/json:
schema:
$ref: '#/components/schemas/PayabliErrorBody'
'503':
description: Database connection error.
content:
application/json:
schema:
$ref: '#/components/schemas/PayabliErrorBody'
/Boarding/applink/{appId}/{mail2}:
put:
operationId: getExternalApplication
summary: Get link or email a link for a boarding application
description: Retrieves a link and the verification code used to log into an existing boarding application. You can also use this endpoint to send a link and referenceId for an existing boarding application to an email address. The recipient can use the referenceId and email address to access and edit the application.
tags:
- Boarding
parameters:
- name: appId
in: path
description: Boarding application ID.
required: true
schema:
type: integer
- name: mail2
in: path
description: Email address used to access the application. If `sendEmail` parameter is true, a link to the application is sent to this email address.
required: true
schema:
type: string
- name: sendEmail
in: query
description: If `true`, sends an email that includes the link to the application to the `mail2` address. Defaults to `false`.
required: false
schema:
type: boolean
- name: Authorization
in: header
description: 'OAuth2 Bearer access token from the client-credentials flow. See [OAuth authentication](/developers/oauth-authentication).
'
required: true
schema:
type: string
responses:
'200':
description: Success
content:
application/json:
schema:
$ref: '#/components/schemas/PayabliApiResponse00'
'400':
description: Bad request / invalid data.
content:
application/json:
schema:
$ref: '#/components/schemas/PayabliErrorBody'
'401':
description: Unauthorized request.
content:
application/json:
schema:
$ref: '#/components/schemas/PayabliErrorBody'
'500':
description: Internal server error.
content:
application/json:
schema:
$ref: '#/components/schemas/PayabliErrorBody'
'503':
description: Database connection error.
content:
application/json:
schema:
$ref: '#/components/schemas/PayabliErrorBody'
/Boarding/link/{boardingLinkReference}:
get:
operationId: GetLinkApplication
summary: Get boarding Link by reference
description: Retrieves the details for a boarding link, by reference name. This endpoint requires an application API token.
tags:
- Boarding
parameters:
- name: boardingLinkReference
in: path
description: The boarding link reference name. You can find this at the end of the boarding link URL. For example `https://boarding.payabli.com/boarding/app/myorgaccountname-00091`
required: true
schema:
type: string
- name: Authorization
in: header
description: 'OAuth2 Bearer access token from the client-credentials flow. See [OAuth authentication](/developers/oauth-authentication).
'
required: true
schema:
type: string
responses:
'200':
description: Success
content:
application/json:
schema:
$ref: '#/components/schemas/BoardingLinkQueryRecord'
'400':
description: Bad request / invalid data.
content:
application/json:
schema:
$ref: '#/components/schemas/PayabliErrorBody'
'401':
description: Unauthorized request.
content:
application/json:
schema:
$ref: '#/components/schemas/PayabliErrorBody'
'500':
description: Internal server error.
content:
application/json:
schema:
$ref: '#/components/schemas/PayabliErrorBody'
'503':
description: Database connection error.
content:
application/json:
schema:
$ref: '#/components/schemas/PayabliErrorBody'
/Query/boardinglinks/{orgId}:
get:
operationId: ListBoardingLinks
summary: Get list of boarding links for organization
description: Return a list of boarding links for an organization. Use filters to limit results.
tags:
- Boarding
parameters:
- name: orgId
in: path
description: The numeric identifier for organization, assigned by Payabli.
required: true
schema:
type: integer
- name: fromRecord
in: query
description: The number of records to skip before starting to collect the result set.
required: false
schema:
type: integer
default: 0
- name: limitRecord
in: query
description: Max number of records to return for the query. Use `0` or negative value to return all records.
required: false
schema:
type: integer
default: 20
- name: parameters
in: query
description: 'Collection of field names, conditions, and values used to filter the query
See [Filters and Conditions Reference](/developers/developer-guides/pay-ops-reporting-engine-overview#filters-and-conditions-reference) for help.
List of field names accepted:
- `lastUpdated` (gt, ge, lt, le, eq, ne)
- `templateName` (ct, nct)
- `referenceName` (ct, nct)
- `acceptRegister` (eq, ne)
- `acceptAuth` (eq, ne)
- `templateCode` (ct, nct)
- `templateId` (eq, ne)
- `orgParentname` (ct, nct)
List of comparison accepted - enclosed between parentheses:
- eq or empty => equal
- gt => greater than
- ge => greater or equal
- lt => less than
- le => less or equal
- ne => not equal
- ct => contains
- nct => not contains
- in => inside array
- nin => not inside array
List of parameters accepted:
- limitRecord : max number of records for query (default="20", "0" or negative value for all)
- fromRecord : initial record in query
Example: templateName(ct)=hoa return all records with template title containing "hoa"'
required: false
schema:
type: object
additionalProperties:
type:
- string
- 'null'
- name: sortBy
in: query
description: The field name to use for sorting results. Use `desc(field_name)` to sort descending by `field_name`, and use `asc(field_name)` to sort ascending by `field_name`.
required: false
schema:
type: string
- name: Authorization
in: header
description: 'OAuth2 Bearer access token from the client-credentials flow. See [OAuth authentication](/developers/oauth-authentication).
'
required: true
schema:
type: string
responses:
'200':
description: Success
content:
application/json:
schema:
$ref: '#/components/schemas/QueryBoardingLinksResponse'
'400':
description: Bad request / invalid data.
content:
application/json:
schema:
$ref: '#/components/schemas/PayabliErrorBody'
'401':
description: Unauthorized request.
content:
application/json:
schema:
$ref: '#/components/schemas/PayabliErrorBody'
'500':
description: Internal server error.
content:
application/json:
schema:
$ref: '#/components/schemas/PayabliErrorBody'
'503':
description: Database connection error.
content:
application/json:
schema:
$ref: '#/components/schemas/PayabliErrorBody'
components:
schemas:
Ticketamt:
type: number
format: double
description: 'The average transaction size that the business expects to process. For
example, if you process $10,000 a month across 10 transactions, that''s
an average ticket of $1000.
'
title: Ticketamt
BoardingLinkId:
type: integer
description: 'The boarding link ID. This is found at the end of the boarding link
reference name. For example:
`https://boarding.payabli.com/boarding/app/myorgaccountname-00091`. The
ID is `91`.
'
title: BoardingLinkId
ApplicationDataPayIn:
type: object
properties:
services:
$ref: '#/components/schemas/ApplicationDataPayInServices'
annualRevenue:
$ref: '#/components/schemas/Annualrevenue'
averageBillSize:
$ref: '#/components/schemas/BoardingAverageBillSize'
averageMonthlyBill:
$ref: '#/components/schemas/BoardingAvgMonthlyBill'
avgmonthly:
$ref: '#/components/schemas/Avgmonthly'
baddress:
$ref: '#/components/schemas/Baddress1'
baddress1:
$ref: '#/components/schemas/Baddress2'
bankData:
$ref: '#/components/schemas/BankData'
bcity:
$ref: '#/components/schemas/Bcity'
bcountry:
$ref: '#/components/schemas/Bcountry'
binperson:
$ref: '#/components/schemas/Binperson'
binphone:
$ref: '#/components/schemas/Binphone'
binweb:
$ref: '#/components/schemas/Binweb'
boardingLinkId:
type: string
description: Boarding link ID for the application. Either `templateId` or `boardingLinkId` are required.
bstate:
$ref: '#/components/schemas/Bstate'
bsummary:
$ref: '#/components/schemas/Bsummary'
btype:
$ref: '#/components/schemas/OwnType'
bzip:
$ref: '#/components/schemas/Bzip'
contacts:
type: array
items:
$ref: '#/components/schemas/ApplicationDataPayInContactsItem'
description: List of contacts for the business.
creditLimit:
type: string
description: The maximum amount of credit that our lending partner has authorized to your business for Pay In processing. It's the upper boundary on how much you can spend or owe on a credit account at any given time. For on-demand payout (Pay Out) credit limits, see `payoutCreditLimit`.
dbaName:
$ref: '#/components/schemas/Dbaname'
description: The alternate or common name that this business is doing business under usually referred to as a DBA name. Payabli strongly recommends including this information.
ein:
$ref: '#/components/schemas/Ein'
externalpaypointID:
$ref: '#/components/schemas/ExternalPaypointId'
faxnumber:
$ref: '#/comp
# --- truncated at 32 KB (114 KB total) ---
# Full source: https://raw.githubusercontent.com/api-evangelist/payabli/refs/heads/main/openapi/payabli-boarding-api-openapi.yml