Payabli Paypoint API
The Paypoint API from Payabli — 7 operation(s) for paypoint.
The Paypoint API from Payabli — 7 operation(s) for paypoint.
openapi: 3.1.0
info:
title: API reference Bill Paypoint 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: Paypoint
paths:
/Paypoint/{entry}:
get:
operationId: getEntryConfig
summary: Get paypoint details
description: Gets the details for a single paypoint.
tags:
- Paypoint
parameters:
- name: entry
in: path
description: The paypoint's entrypoint identifier. [Learn more](/developers/api-reference/api-overview#entrypoint-vs-entry)
required: true
schema:
type: string
- name: entrypages
in: query
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/GetEntryConfigResponse'
'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'
/Paypoint/{entry}/{subdomain}:
get:
operationId: getPage
summary: Get payment page details
description: Gets the details for a single payment page for a paypoint.
tags:
- Paypoint
parameters:
- name: entry
in: path
description: The paypoint's entrypoint identifier. [Learn more](/developers/api-reference/api-overview#entrypoint-vs-entry)
required: true
schema:
type: string
- name: subdomain
in: path
description: Payment page identifier. The subdomain value is the last portion of the payment page URL. For example, in `https://paypages-sandbox.payabli.com/513823dc10/pay-your-fees-1`, the subdomain is `pay-your-fees-1`.
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/PayabliPages'
'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'
delete:
operationId: removePage
summary: Delete a payment page
description: Deletes a payment page in a paypoint.
tags:
- Paypoint
parameters:
- name: entry
in: path
description: The paypoint's entrypoint identifier. [Learn more](/developers/api-reference/api-overview#entrypoint-vs-entry)
required: true
schema:
type: string
- name: subdomain
in: path
description: Payment page identifier. The subdomain value is the last portion of the payment page URL. For example, in `https://paypages-sandbox.payabli.com/513823dc10/pay-your-fees-1`, the subdomain is `pay-your-fees-1`.
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/PayabliApiResponseGeneric2Part'
'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'
/Paypoint/basic/{entry}:
get:
operationId: getBasicEntry
summary: Get basic paypoint details
description: Gets the basic details for a paypoint.
tags:
- Paypoint
parameters:
- name: entry
in: path
description: The paypoint's entrypoint identifier. [Learn more](/developers/api-reference/api-overview#entrypoint-vs-entry)
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/GetBasicEntryResponse'
'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'
/Paypoint/basicById/{IdPaypoint}:
get:
operationId: getBasicEntryById
summary: Get paypoint details by ID
description: Retrieves the basic details for a paypoint by ID.
tags:
- Paypoint
parameters:
- name: IdPaypoint
in: path
description: Paypoint ID. You can find this value by querying `/api/Query/paypoints/{orgId}`
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/GetBasicEntryByIdResponse'
'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'
/Paypoint/settings/{entry}:
get:
operationId: settingsPage
summary: Get paypoint settings
description: Retrieves a paypoint's basic settings like custom fields, identifiers, and invoicing settings.
tags:
- Paypoint
parameters:
- name: entry
in: path
description: The paypoint's entrypoint identifier. [Learn more](/developers/api-reference/api-overview#entrypoint-vs-entry)
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/SettingsQueryRecord'
'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'
/Paypoint/logo/{entry}:
put:
operationId: saveLogo
summary: Update paypoint logo
description: Updates a paypoint logo.
tags:
- Paypoint
parameters:
- name: entry
in: path
description: The paypoint's entrypoint identifier. [Learn more](/developers/api-reference/api-overview#entrypoint-vs-entry)
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/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/FileContent'
/Paypoint/migrate:
post:
operationId: migrate
summary: Migrate paypoint
description: Migrates a paypoint to a new parent organization.
tags:
- Paypoint
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/MigratePaypointResponse'
'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/PaypointMoveRequest'
components:
schemas:
Idpaypoint:
type: integer
format: int64
description: The paypoint's ID in Payabli.
title: Idpaypoint
ContactsField:
type: array
items:
$ref: '#/components/schemas/Contacts'
description: List of contacts.
title: ContactsField
ContactElement:
type: object
properties:
emailLabel:
type: string
description: Custom content for email
enabled:
$ref: '#/components/schemas/Enabled'
header:
type: string
description: Header text for section
order:
$ref: '#/components/schemas/Order'
paymentIcons:
type: boolean
description: Flag indicating if icons for accepted card brands will be shown
phoneLabel:
type: string
description: Custom content for phone number
title: ContactElement
AccountId:
type: string
description: Custom identifier for payment connector.
title: AccountId
MethodElementSettingsApplePayButtonStyle:
type: string
enum:
- black
- white-outline
- white
default: black
description: 'The Apple Pay button style. See
[Apple Pay Button Style](/developers/developer-guides/hosted-payment-page-apple-pay#param-applepay-button-style)
for more information.
'
title: MethodElementSettingsApplePayButtonStyle
OdpSetupProcessingRegion:
type: string
enum:
- US
- CA
description: Region where payment processing occurs.
title: OdpSetupProcessingRegion
BankName:
type: string
description: Name of bank for account.
title: BankName
MinTicket:
type: number
format: double
description: 'Minimum ticket amount for transactions within the paypoint. Contact
Payabli support to request a change to this value.
'
title: MinTicket
PayabliErrorBodyResponseData:
type: object
properties:
explanation:
type: string
description: Human-readable explanation of what happened.
todoAction:
type: string
description: Suggested resolution.
description: Object with detailed error context.
title: PayabliErrorBodyResponseData
Enabled:
type: boolean
description: Toggles whether the section or element is enabled.
title: Enabled
FrequencyList:
type: object
properties:
annually:
type: boolean
description: Enable or disable the annual frequency.
every2Weeks:
type: boolean
description: Enable or disable the every-two-weeks frequency.
every3Months:
type: boolean
description: Enable or disable the every-three-months frequency.
every6Months:
type: boolean
description: Enable or disable the every-six-months frequency.
monthly:
type: boolean
description: Enable or disable the monthly frequency.
onetime:
type: boolean
description: Enable or disable the one-time frequency.
weekly:
type: boolean
description: Enable or disable the weekly frequency.
title: FrequencyList
Email:
type: string
format: email
description: Email address.
title: Email
CityNullable:
type: string
description: The city.
title: CityNullable
PayabliCredentialsPascal:
type: object
properties:
Service:
type: string
description: The payment service that this credential applies to. A paypoint can support multiple services, each represented by its own credential object in the array. Possible values are `card` (credit/debit card), `ach` (ACH bank transfer), `check` (paper check), `vcard` (virtual card), `cloud` (card-present), `cash`, `managed` (managed payment service), and `wallet`.
Mode:
type: integer
description: The payment mode supported by this service. `0` for one-time payments, `1` for recurring payments, `2` for both.
MinTicket:
$ref: '#/components/schemas/MinTicket'
MaxTicket:
$ref: '#/components/schemas/MaxTicket'
CfeeFix:
type: number
format: double
CfeeFloat:
type: number
format: double
CfeeMin:
type: number
format: double
CfeeMax:
type: number
format: double
AccountId:
$ref: '#/components/schemas/AccountId'
description: The identifier for the payment connector, matching the `accountId` of the linked bank account.
ReferenceId:
type: integer
format: int64
acceptSameDayACH:
type: boolean
Currency:
type: array
items:
type: string
description: The default currency for the paypoint, either `USD` or `CAD`.
GreaterValueAllowed:
$ref: '#/components/schemas/GreaterValueAllowed'
AbsorbDifference:
$ref: '#/components/schemas/AbsorbDifference'
AllowOverride:
$ref: '#/components/schemas/AllowOverride'
title: PayabliCredentialsPascal
Element:
type: object
properties:
enabled:
$ref: '#/components/schemas/Enabled'
order:
$ref: '#/components/schemas/Order'
title: Element
NotificationRequest:
type: object
properties:
notificationUrl:
type: string
description: Complete HTTP URL receiving the notification
webHeaderParameters:
type: array
items:
$ref: '#/components/schemas/WebHeaderParameter'
description: List of key-value header parameters to include in the notification request
required:
- notificationUrl
title: NotificationRequest
Entrypointfield:
type: string
description: The entrypoint identifier.
title: Entrypointfield
PageIdentifier:
type: string
description: Auxiliary validation used internally by payment pages and components.
title: PageIdentifier
OrgData:
type: object
properties:
idOrg:
$ref: '#/components/schemas/Orgid'
orgAddress:
$ref: '#/components/schemas/Orgaddress'
orgLogo:
$ref: '#/components/schemas/FileContent'
orgName:
$ref: '#/components/schemas/Orgname'
orgStatus:
type: integer
description: 'The paypoint''s status.
Active - `1`
Inactive - 0'
orgType:
$ref: '#/components/schemas/Orgtype'
title: OrgData
AbsorbDifference:
type: boolean
description: 'Whether the paypoint absorbs the difference between the configured service
fee and the actual fee charged to the customer.
'
title: AbsorbDifference
PayabliCredentials:
type: object
properties:
accountId:
$ref: '#/components/schemas/AccountId'
description: The identifier for the payment connector, matching the `accountId` of the linked bank account.
cfeeFix:
type: number
format: double
cfeeFloat:
type: number
format: double
cfeeMax:
type: number
format: double
cfeeMin:
type: number
format: double
maxticket:
type: number
format: double
minticket:
type: number
format: double
mode:
type: integer
description: The payment mode supported by this service. `0` for one-time payments, `1` for recurring payments, `2` for both.
referenceId:
type: integer
format: int64
service:
type: string
description: The payment service that this credential applies to. A paypoint can support multiple services, each represented by its own credential object in the array. Possible values are `card` (credit/debit card), `ach` (ACH bank transfer), `check` (paper check), `vcard` (virtual card), `cloud` (card-present), `cash`, `managed` (managed payment service), and `wallet`.
greaterValueAllowed:
$ref: '#/components/schemas/GreaterValueAllowed'
absorbDifference:
$ref: '#/components/schemas/AbsorbDifference'
allowOverride:
$ref: '#/components/schemas/AllowOverride'
title: PayabliCredentials
FileContent:
type: object
properties:
fContent:
type: string
description: 'Content of file, Base64-encoded. Ignored if `furl` is specified. Max
upload size is 30 MB.
'
filename:
type: string
description: The name of the attached file.
ftype:
$ref: '#/components/schemas/FileContentFtype'
furl:
type: string
description: Optional URL provided to show or download the file remotely.
description: Contains details about a file. Max upload size is 30 MB.
title: FileContent
HeaderElement:
type: object
properties:
enabled:
$ref: '#/components/schemas/Enabled'
header:
type: string
description: Header text for section
order:
$ref: '#/components/schemas/Order'
title: HeaderElement
Order:
type: integer
description: Order of element or section in container.
title: Order
ResponseText:
type: string
description: 'Response text for operation: ''Success'' or ''Declined''.
'
title: ResponseText
PayabliApiResponse00Responsedatanonobject:
type: object
properties:
responseCode:
$ref: '#/components/schemas/Responsecode'
pageIdentifier:
$ref: '#/components/schemas/PageIdentifier'
roomId:
type: integer
format: int64
description: Describes the room ID. Only in use on Boarding endpoints, returns `0` when not applicable.
isSuccess:
$ref: '#/components/schemas/IsSuccess'
responseText:
$ref: '#/components/schemas/ResponseText'
responseData:
$ref: '#/components/schemas/Responsedatanonobject'
required:
- responseText
title: PayabliApiResponse00Responsedatanonobject
BankAccountFunction:
type: integer
description: 'Indicates the function of the bank account:
- `0` — Deposits
- `1` — Withdrawals
- `2` — Deposits & Withdrawals
- `3` — Remittances
- `4` — Remittances & Deposits
- `5` — Remittances & Withdrawals
- `6` — Remittances & Withdrawals & Deposits
A paypoint is required to have a single deposit and withdrawal account. A
paypoint can have as many remittance accounts as needed for pay outs
(remittances).
'
title: BankAccountFunction
PaypointSummary:
type: object
properties:
amountSubs:
type: number
format: double
amountTx:
type: number
format: double
countSubs:
type: integer
countTx:
type: integer
customers:
type: integer
title: PaypointSummary
PayabliApiResponseGeneric2Part:
type: object
properties:
isSuccess:
$ref: '#/components/schemas/IsSuccess'
responseText:
$ref: '#/components/schemas/ResponseText'
required:
- responseText
description: 'Minimal response wrapper used by approval-style endpoints that don''t carry
the standard response envelope.
'
title: PayabliApiResponseGeneric2Part
Subdomain:
type: string
description: 'Refers to the payment page identifier. If provided, then the
transaction is linked to the payment page.
'
title: Subdomain
OdpSetup:
type: object
properties:
allowAch:
type: boolean
description: Enables or disables ACH payout functionality
allowChecks:
type: boolean
description: Enables or disables check printing payout functionality
allowVCard:
type: boolean
description: Enables or disables vCard payout functionality
processing_region:
$ref: '#/components/schemas/OdpSetupProcessingRegion'
description: Region where payment processing occurs
processor:
type: string
description: Payment processor identifier
issuerNetworkSettingsId:
type: string
description: Reference ID for the program enabled for ODP issuance
title: OdpSetup
PayabliErrorBody:
type: object
properties:
isSuccess:
type: boolean
description: Always `false` for error responses.
responseCode:
type: integer
description: 'Code for the response. Learn more in
[API Response Codes](/developers/api-reference/api-responses).
'
responseText:
type: string
description: Error text describing what went wrong.
responseData:
$ref: '#/components/schemas/PayabliErrorBodyResponseData'
description: Object with detailed error context.
required:
- isSuccess
- responseText
description: 'Shape returned by every Payabli API error response. The `responseData`
object carries human-readable error context.
'
title: PayabliErrorBody
PageSetting:
type: object
properties:
color:
type: string
description: 'An HTML color code in format #RRGGBB'
customCssUrl:
type: string
description: Complete URL to a custom CSS file to be loaded with the page
language:
type: string
description: Two-letter code following ISO 639-1
pageLogo:
$ref: '#/components/schemas/FileContent'
description: Object containing logo file to upload/ use in page
paymentButton:
$ref: '#/components/schemas/ButtonElement'
redirectAfterApprove:
type: boolean
description: Flag indicating if the capability for redirection in the page will be activated
redirectAfterApproveUrl:
type: string
description: Complete URL where the page will be redirected after completion
title: PageSetting
NoteElement:
type: object
properties:
enabled:
$ref: '#/components/schemas/Enabled'
header:
type: string
description: Header text for section
order:
$ref: '#/components/schemas/Order'
placeholder:
type: string
description: Placeholder text for input field
value:
type: string
description: Pre-populated value for input field
title: NoteElement
DisplayProperty:
type: object
properties:
display:
type: boolean
description: When `true`, the field is displayed on the receipt.
Fixed:
type: boolean
description: This field is unused.
name:
type: string
description: The field's name.
title: DisplayProperty
MethodElementSettings:
type: object
properties:
applePay:
$ref: '#/components/schemas/MethodElementSettingsApplePay'
description: Settings for wallet payment methods.
title: MethodElementSettings
BankAccountHolderType:
type: string
enum:
- Personal
- Business
description: Describes whether the bank is a personal or business account.
title: BankAccountHolderType
CountryNullable:
type: string
description: 'The country in ISO-3166-1 alpha 2 format. See
[ISO 3166-1](https://en.wikipedia.org/wiki/ISO_3166-1) for reference.
'
title: CountryNullable
AdditionalDataString:
type: string
description: "Custom dictionary of key:value pairs. You can use this field to store any\ndata related to the object or for your system. Example usage:\n\n```json\n{\n \"additionalData\": {\n \"key1\": \"value1\",\n \"key2\": \"value2\",\n \"key3\": \"value3\"\n }\n}\n```\n"
title: AdditionalDataString
RoutingAccount:
type: string
description: Routing number of bank account.
title: RoutingAccount
ButtonElementSize:
type: string
enum:
- sm
- md
- lg
description: Specify the size of the custom payment button.
title: ButtonElementSize
Bank:
type: object
properties:
default:
type: boolean
country:
type: string
id:
type: integer
description: The Payabli-assigned internal identifier for the bank account.
accountId:
$ref: '#/components/schemas/AccountId'
description: An identifier for the bank account, used to specify which account handles payments when multiple accounts are configured. If not provided during creation or update, the system generates one in the format `acct-{first_digit}xxxxx{last_4_digits}` based on the account number. The mask always uses five `x` characters regardless of account number length. For example, account number `123456789` produces `acct-1xxxxx6789`. If a duplicate exists within the same service at the paypoint, a numeric suffix is appended, such as `acct-1xxxxx6789-2`. This value is also used as the identifier for the bank account's associated payment connector.
nickname:
$ref: '#/components/schemas/BankNickname'
bankName:
$ref: '#/components/schemas/BankName'
routingAccou
# --- truncated at 32 KB (62 KB total) ---
# Full source: https://raw.githubusercontent.com/api-evangelist/payabli/refs/heads/main/openapi/payabli-paypoint-api-openapi.yml