TabaPay SubClient API
This resource represents a Client's SubClient.
This resource represents a Client's SubClient.
Every API here is available over the APIs.io API and to AI agents over MCP.
One button, every client — Claude, Cursor, VS Code and the rest.
https://apis.io/mcp
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.curl "https://apis.io/api/v1/apis/tabapay-subclient-api"
curl "https://apis.io/api/v1/apis?limit=25"
Discovery needs no key. Ratings and market analysis are Pro.
openapi: 3.2.0
info:
title: TabaPay APIs 3D Secure Sub Client API
description: TabaPay Resource and Service Operations
version: 1.0.0
license:
name: All rights reserved
servers:
- url: https://{FQDN}:{PORT}
description: TabaPay APIs
variables:
FQDN:
default: FQDN
description: Contact [TabaPay Support](https://tabapay.zendesk.com/hc/en-us/requests/new) for the Fully Qualified Domain Name you should be using.
PORT:
default: PORT
description: Ensure you have the capability to access the PORT TabaPay specifies in your credentials file.
security:
- bearerAuth: []
tags:
- name: SubClient
description: This resource represents a Client's SubClient.
paths:
/v4/clients/{ClientID}/subclients/{SubClientID}:
post:
tags:
- SubClient
summary: Create SubClient
description: "Creates a Client's SubClient Registration.\n\n*For <<glossary:ISO>>s (Independent Sales Organization) only.* \n\n Request to enable at [TabaPay Support](https://tabapay.zendesk.com/hc/en-us/requests/new#/) or [help@tabapay.com](mailto:help@tabapay.com)"
operationId: createsubclient
parameters:
- $ref: '#/components/parameters/ClientID'
- $ref: '#/components/parameters/SubClientID'
requestBody:
content:
application/json:
schema:
$ref: '#/components/schemas/subclientCreate'
required: true
responses:
'200':
description: Client's SubClient Registration Created.
content:
application/json:
schema:
$ref: '#/components/schemas/createSubClientResponse'
example:
SC: 200
EC: '0'
'207':
description: One or more failures occurred while processing the Request.
content:
application/json:
schema:
$ref: '#/components/schemas/apiResponseSCEC'
example:
SC: 207
EC: InternalErrorCode
delete:
tags:
- SubClient
summary: Delete SubClient
description: 'Deletes a Client''s SubClient Registration.
*For <<glossary:ISO>>s (Independent Sales Organization) only.*'
operationId: deletesubclient
parameters:
- $ref: '#/components/parameters/ClientID'
- $ref: '#/components/parameters/SubClientID'
responses:
'200':
description: The SubClient has been marked for deletion.
content:
application/json:
schema:
$ref: '#/components/schemas/apiResponseSCEC'
example:
SC: 200
EC: '0'
'404':
description: SubClient Registration not found.
content:
application/json:
schema:
$ref: '#/components/schemas/apiResponseSCECEM'
example:
SC: 404
EC: Internal Error Code
EM: SubClient Not Found.
get:
tags:
- SubClient
summary: Retrieve SubClient
description: 'Retrieves a Client''s SubClient Registration.
*For <<glossary:ISO>>s (Independent Sales Organization) only.*'
operationId: retrievesubclient
parameters:
- $ref: '#/components/parameters/ClientID'
- $ref: '#/components/parameters/SubClientID'
responses:
'200':
description: The SubClient registration is retrieved..
content:
application/json:
schema:
$ref: '#/components/schemas/retrieveSubClientResponse'
example:
SC: 200
EC: '0'
name: TabaPay
tin: '123456789'
type: L-Corp
url: www.tabapay.com
email: help@tabapay.com
address:
line1: 605 Ellis Street
line2: Suite 110
city: Mountain View
state: CA
zipcode: '94043'
phone:
number: '4159808222'
mcc: 1234
mvv: 1234
maid: 1234
settlement:
purchase:
routingNumber: 121140399
accountNumber: 12345
disbursement:
routingNumber: 121140399
accountNumber: 12345
fee:
routingNumber: 121140399
accountNumber: 12345
exception:
routingNumber: 121140399
accountNumber: 12345
'404':
description: SubClient Registration not found.
content:
application/json:
schema:
$ref: '#/components/schemas/apiResponseSCECEM'
example:
SC: 404
EC: InternalErrorCode
EM: SubClient Registration Not Found.
put:
tags:
- SubClient
summary: Update SubClient
description: 'Updates a Client''s SubClient Registration.
*For <<glossary:ISO>>s (Independent Sales Organization) only.*'
operationId: updatesubclient
parameters:
- $ref: '#/components/parameters/ClientID'
- $ref: '#/components/parameters/SubClientID'
requestBody:
content:
application/json:
schema:
$ref: '#/components/schemas/subclientUpdate'
required: true
responses:
'200':
description: The SubClient Information has been updated.
content:
application/json:
schema:
$ref: '#/components/schemas/createSubClientResponse'
example:
SC: 200
EC: '0'
/v2/clients/{ClientID}/subclients/{SubClientID}:
post:
tags:
- SubClient
summary: Create SubClient
description: "Creates a Client's SubClient Registration.\n\n*For <<glossary:ISO>>s (Independent Sales Organization) only.* \n\n Request to enable at [TabaPay Support](https://tabapay.zendesk.com/hc/en-us/requests/new#/) or [help@tabapay.com](mailto:help@tabapay.com)\n\nThis endpoint is split from the original `/subclients` endpoint."
operationId: createsubclient2
parameters:
- $ref: '#/components/parameters/ClientID'
- $ref: '#/components/parameters/SubClientID'
requestBody:
content:
application/json:
schema:
$ref: '#/components/schemas/subclient2Create'
examples:
NaturalPerson:
value:
type: NaturalPerson
settlement:
exception:
ledgerID: 22characterledgerID123
purchase:
ledgerID: 22characterledgerID123
disbursement:
ledgerID: 22characterledgerID123
fee:
ledgerID: 22characterledgerID123
serviceType: N
userID: 22CharacterTabaPayID12
useCase: CG
reserveAccount:
ledgerID: 22characterledgerID123
address:
line1: 123 Street
city: San Francisco
state: CA
zipcode: '94103'
phone:
number: '5555555555'
transactionTypes:
push: true
pull: true
identification:
type: SSN
number: '123456789'
cardTypes:
push:
debit: true
credit: true
prepaid: true
pull:
debit: true
credit: true
prepaid: true
visa:
push:
enabled: true
pull:
enabled: true
mastercard:
push:
enabled: true
pull:
enabled: true
discover:
push:
enabled: true
pull:
enabled: true
fees:
type: IPP
name: Test Name
email: ' test@gmail.com'
LLC:
value:
address:
line1: 1234 Street
city: San Francisco
state: CA
zipcode: '94103'
phone:
number: '5555555555'
transactionTypes:
push: true
pull: true
identification:
type: EIN
number: '123122349'
cardTypes:
push:
debit: true
credit: true
prepaid: true
pull:
debit: true
credit: true
prepaid: true
visa:
push:
enabled: true
pull:
enabled: true
mastercard:
push:
enabled: true
pull:
enabled: true
discover:
push:
enabled: true
pull:
enabled: true
settlement:
purchase:
routingNumber: '123456780'
accountNumber: '123456978'
ledgerID: 22CharacterledgerID123
disbursement:
routingNumber: '123456789'
accountNumber: '123456788'
ledgerID: 22CharacterledgerID123
fee:
routingNumber: '123456789'
accountNumber: '123456789'
ledgerID: 22CharacterledgerID123
exception:
routingNumber: '123456789'
ledgerID: 22CharacterledgerID123
serviceType: N
fees:
type: MDR
reserveAccount:
routingNumber: '123456789'
accountNumber: '123456789'
ledgerID: 22characterledgerID123
name: Samwise Gamgee
tin: '123456789'
type: LLC
url: https://example.com
email: test@email.com
mcc: '1299'
mvv: '123456'
maid: '123455'
userID: 22CharacterTabaPayID12
iso: '123'
useCase: EC
required: true
responses:
'200':
description: Client's SubClient Registration Created.
content:
application/json:
schema:
$ref: '#/components/schemas/createSubClientResponse'
example:
SC: 200
EC: '0'
'207':
description: One or more failures occurred while processing the Request.
content:
application/json:
schema:
$ref: '#/components/schemas/apiResponseSCEC'
example:
SC: 207
EC: InternalErrorCode
delete:
tags:
- SubClient
summary: Delete SubClient
description: 'Deletes a Client''s SubClient Registration.
*For <<glossary:ISO>>s (Independent Sales Organization) only.*
This endpoint is split from the original `/subclients` endpoint.'
operationId: deletesubclient2
parameters:
- $ref: '#/components/parameters/ClientID'
- $ref: '#/components/parameters/SubClientID'
responses:
'200':
description: The SubClient has been marked for deletion.
content:
application/json:
schema:
$ref: '#/components/schemas/apiResponseSCEC'
example:
SC: 200
EC: '0'
'404':
description: SubClient Registration not found.
content:
application/json:
schema:
$ref: '#/components/schemas/apiResponseSCECEM'
example:
SC: 404
EC: Internal Error Code
EM: SubClient Not Found.
get:
tags:
- SubClient
summary: Retrieve SubClient
description: 'Retrieves a Client''s SubClient Registration.
*For <<glossary:ISO>>s (Independent Sales Organization) only.*
This endpoint is split from the original `/subclients` endpoint.'
operationId: retrievesubclient2
parameters:
- $ref: '#/components/parameters/ClientID'
- $ref: '#/components/parameters/SubClientID'
responses:
'200':
description: The SubClient registration is retrieved..
content:
application/json:
schema:
$ref: '#/components/schemas/retrieveSubClient2Response'
example:
SC: 200
EC: '0'
name: TabaPay
tin: '123456789'
type: L-Corp
url: www.tabapay.com
email: help@tabapay.com
address:
line1: 605 Ellis Street
line2: Suite 110
city: Mountain View
state: CA
zipcode: '94043'
phone:
number: '4159808222'
mcc: 1234
mvv: 1234
maid: 1234
settlement:
purchase:
routingNumber: 121140399
accountNumber: 12345
disbursement:
routingNumber: 121140399
accountNumber: 12345
fee:
routingNumber: 121140399
accountNumber: 12345
exception:
routingNumber: 121140399
accountNumber: 12345
'404':
description: SubClient Registration not found.
content:
application/json:
schema:
$ref: '#/components/schemas/apiResponseSCECEM'
example:
SC: 404
EC: InternalErrorCode
EM: SubClient Registration Not Found.
put:
tags:
- SubClient
summary: Update SubClient
description: 'Updates a Client''s SubClient Registration.
*For <<glossary:ISO>>s (Independent Sales Organization) only.*
This endpoint is split from the original `/subclients` endpoint.'
operationId: updatesubclient2
parameters:
- $ref: '#/components/parameters/ClientID'
- $ref: '#/components/parameters/SubClientID'
requestBody:
content:
application/json:
schema:
$ref: '#/components/schemas/subclient2Update'
required: true
responses:
'200':
description: The SubClient Information has been updated.
content:
application/json:
schema:
$ref: '#/components/schemas/createSubClientResponse'
example:
SC: 200
EC: '0'
components:
schemas:
subclient2Identification:
type: object
properties:
type:
type: string
enum:
- SSN
- GovernmentID
- Passport
- EIN
country:
$ref: '#/components/schemas/tpISO4217Numeric'
number:
type: string
description: A unique ID number issued by a government or organization.
subclient2Settlement:
type: object
properties:
purchase:
$ref: '#/components/schemas/subclient2SettlementAccount'
disbursement:
$ref: '#/components/schemas/subclient2SettlementAccount'
fee:
$ref: '#/components/schemas/subclient2SettlementAccount'
exception:
$ref: '#/components/schemas/subclient2SettlementAccount'
serviceType:
type: string
description: "Includes: \n - N: Next Day \n - S: Same Day \n - R: RTP "
enum:
- N
- S
- R
routingNumber:
type: string
pattern: ^[0-9]{9}$
description: '[ABA routing transit number](https://en.wikipedia.org/wiki/ABA_routing_transit_number)'
cardTypeFee:
type: object
description: Card Type Fee
properties:
intlCreditFixed:
type: string
description: Fixed fee for successful international credit card transactions
pattern: ^[0-9]*.?[0-9]{0,4}$
intlCreditVariable:
type: string
description: Variable fee for successful international credit card transactions ( % )
pattern: ^[0-9]*.?[0-9]{0,4}$
intlDebitFixed:
type: string
description: Fixed fee for successful international debit card transactions
pattern: ^[0-9]*.?[0-9]{0,4}$
intlDebitVariable:
type: string
description: Variable fee for successful international debit card transactions ( % )
pattern: ^[0-9]*.?[0-9]{0,4}$
creditSurchargeFixed:
type: string
description: Fixed fee for credit card surcharges
pattern: ^[0-9]*.?[0-9]{0,4}$
creditSurchargeVariable:
type: string
description: Variable fee for credit card surcharges (%)
pattern: ^[0-9]*.?[0-9]{0,4}$
amexFixed:
type: string
description: Fixed fee for successful American Express transactions
pattern: ^[0-9]*.?[0-9]{0,4}$
amexVariable:
type: string
description: Variable fee for successful American Express transactions ( % )
pattern: ^[0-9]*.?[0-9]{0,4}$
EC:
type: string
description: Internal Error Code. This is used to help TabaPay team members trace an error.
tpLedgerID:
type: string
description: TabaPay ledger identifier
pattern: ^[A-Za-z0-9]{22}$
subclientUpdate:
type: object
properties:
name:
type: string
description: Company Name
pattern: ^[ a-zA-Z0-9_-]$
tin:
type: string
description: '[Taxpayer Identification Number](https://en.wikipedia.org/wiki/Taxpayer_Identification_Number) (EIN or SSN) needs to be 9 digits exactly.'
type:
type: string
description: 'Company Type:
- `LLC`
- `LLP`
- `C-Corp`
- `S-Corp`
- `SoleProprietor`
- `Nonprofit`
- `Charitable`
- `Other`'
url:
type: string
description: Company URL
email:
$ref: '#/components/schemas/email'
address:
$ref: '#/components/schemas/address'
phone:
$ref: '#/components/schemas/phone'
mcc:
type: string
pattern: ^[0-9]{4}$
description: Merchant Category Code
mvv:
type: string
pattern: ^[0-9]{6}$
description: Visa Merchant Verification Code - requires Visa registration
maid:
type: string
pattern: ^[0-9]{6}$
description: MasterCard Identification - requires MasterCard registration
settlement:
type: object
description: Settlement Accounts
properties:
purchase:
type: object
description: Purchase
properties:
routingNumber:
$ref: '#/components/schemas/routingNumber'
accountNumber:
type: string
pattern: ^[0-9]{4,17}$
description: Account Number
disbursement:
type: object
description: Disbursement
properties:
routingNumber:
$ref: '#/components/schemas/routingNumber'
accountNumber:
type: string
pattern: ^[0-9]{4,17}$
description: Account Number
fee:
type: object
description: Fee
properties:
routingNumber:
$ref: '#/components/schemas/routingNumber'
accountNumber:
type: string
pattern: ^[0-9]{4,17}$
description: Account Number
exception:
type: object
description: Exception
properties:
routingNumber:
$ref: '#/components/schemas/routingNumber'
accountNumber:
type: string
pattern: ^[0-9]{4,17}$
description: Account Number
serviceType:
type: string
description: "Indicate the payment rail that TabaPay will utilize with the client/sub-client. \nOptions are: \n\n - N - Next-Day <<glossary:ACH>> (Default) \n - S - Same-Day <<glossary:ACH>> \n - R - <<glossary:RTP>>"
fees:
$ref: '#/components/schemas/fees'
reserveAccount:
$ref: '#/components/schemas/reserveAccount'
businessOwners:
$ref: '#/components/schemas/businessOwners'
reserveAccount:
type: object
description: Set reserve account for this subclient. If you add a reserve account, you will need a routing number and an account number.
required:
- routingNumber
- accountNumber
properties:
routingNumber:
type: string
description: Routing number for the reserve account (9 digits). *Required if account number is present.*
pattern: ^[0-9]{9,9}$
accountNumber:
type: string
description: Account number for the reserve account (4-17 digits). *Required if routing number is present.*
pattern: ^[0-9]{4,17}$
calculationsCurrencyCode:
type: string
description: "ISO-4217 3 digit currency code (3 digits). \n [Currency Code](https://developers.tabapay.com/reference/country-codes). Default: 840 (USD)."
pattern: ^[0-9]{3,3}$
example: '840'
calculationsVariable:
type: string
description: 'Percentage of amount to be held daily. Format: xxx.xxxx (e.g. 5% is written as 0.05). '
pattern: ^[0-9]*.?[0-9]{0,4}$
calculationsFixed:
type: string
description: "Amount after which hold on reserve is released (same format as amount). \n [Currency Amount](https://developers.tabapay.com/reference/currency-numbers)"
pattern: ^[0-9]*.?[0-9]{0,4}$
calculationsNoOfDays:
type: string
description: Number of days after which amount held is released (1-4 digits).
pattern: ^[0-9]{1,4}$
businessOwner:
type: object
description: Additional individuals that own at least 25% of the entity.
required:
- firstName
- lastName
- dateOfBirth
properties:
firstName:
type: string
description: First name
middleName:
type: string
description: Middle name
lastName:
type: string
description: Last name
dateOfBirth:
type: string
description: 'Date of birth with the format: YYYYMMDD. Owner must be at least 18 years old.'
subclient2Update:
type: object
properties:
name:
type: string
maxLength: 255
tin:
type: string
pattern: ^[0-9]{9}$
description: '[Taxpayer Identification Number](https://en.wikipedia.org/wiki/Taxpayer_Identification_Number) needs to be 9 digits exactly.'
type:
type: string
enum:
- LLC
- LLP
- C-Corp
- S-Corp
- SoleProprietor
- Nonprofit
- Charitable
- NaturalPerson
- Other
url:
type: string
email:
type: string
format: email
description: Valid Email Address
address:
$ref: '#/components/schemas/address'
phone:
$ref: '#/components/schemas/phone'
mcc:
type: string
pattern: ^[0-9]{4}$
mvv:
type: string
pattern: ^[0-9]{6}$
maid:
type: string
pattern: ^[0-9]{6}$
evv:
type: string
userID:
$ref: '#/components/schemas/tpUserID'
iso:
type: string
pattern: ^[0-9]{3}$
useCase:
type: string
transactionTypes:
$ref: '#/components/schemas/subclient2TransactionTypes'
identification:
$ref: '#/components/schemas/subclient2Identification'
cardTypes:
$ref: '#/components/schemas/subclient2CardTypes'
visa:
$ref: '#/components/schemas/subclient2NetworkConfig'
mastercard:
$ref: '#/components/schemas/subclient2NetworkConfig'
discover:
$ref: '#/components/schemas/subclient2NetworkConfig'
settlement:
$ref: '#/components/schemas/subclient2Settlement'
fees:
$ref: '#/components/schemas/fees'
reserveAccount:
$ref: '#/components/schemas/reserveAccount'
businessOwners:
$ref: '#/components/schemas/businessOwners'
ipAddress:
type: string
format: ipv4
dbaName:
type: string
description: Doing Business As (DBA)
payoutSchedule:
type: string
description: Partial update; only supplied fields are updated.
retrieveSubClient2Response:
type: object
properties:
SC:
$ref: '#/components/schemas/SC'
EC:
$ref: '#/components/schemas/EC'
EM:
$ref: '#/components/schemas/EM'
name:
type: string
maxLength: 255
tin:
type: string
pattern: ^[0-9]{9}$
description: '[Taxpayer Identification Number](https://en.wikipedia.org/wiki/Taxpayer_Identification_Number)'
type:
type: string
enum:
- LLC
- LLP
- C-Corp
- S-Corp
- SoleProprietor
- Nonprofit
- Charitable
- NaturalPerson
- Other
url:
type: string
email:
type: string
format: email
description: Email Address
address:
$ref: '#/components/schemas/address'
phone:
$ref: '#/components/schemas/phone'
mcc:
type: string
pattern: ^[0-9]{4}$
mvv:
type: string
pattern: ^[0-9]{6}$
maid:
type: string
pattern: ^[0-9]{6}$
evv:
type: string
userID:
$ref: '#/components/schemas/tpUserID'
iso:
type: string
pattern: ^[0-9]{3}$
useCase:
type: string
transactionTypes:
$ref: '#/components/schemas/subclient2TransactionTypes'
identification:
$ref: '#/components/schemas/subclient2Identification'
cardTypes:
$ref: '#/components/schemas/subclient2CardTypes'
visa:
$ref: '#/components/schemas/subclient2NetworkConfig'
mastercard:
$ref: '#/components/schemas/subclient2NetworkConfig'
discover:
$ref: '#/components/schemas/subclient2NetworkConfig'
settlement:
$ref: '#/components/schemas/subclient2Settlement'
fees:
$ref: '#/components/schemas/fees'
reserveAccount:
$ref: '#/components/schemas/reserveAccount'
businessOwners:
$ref: '#/components/schemas/businessOwners'
ipAddress:
type: string
format: ipv4
dbaName:
type: string
description: Doing Business As (DBA)
payoutSchedule:
type: string
createSubClientResponse:
type: object
properties:
SC:
type: string
description: HTTP Status Code
EC:
type: string
description: Internal Error Code to help TabaPay trace the error.
EM:
type: string
description: Short Description of Error if Error Occurred.
apiResponseSCECEM:
type: object
properties:
SC:
$ref: '#/components/schemas/SC'
EC:
$ref: '#/components/schemas/EC'
EM:
$ref: '#/components/schemas/EM'
EM:
type: string
description: Short description of the error if an error occurred.
phone:
type: object
required:
- number
description: Phone *object*
properties:
countryCode:
type: string
description: '1-3 digit Country Calling Code
*Optional.* Default is `1`.'
pattern: ^[0-9]{3}$
example: '1'
number:
type: string
description: 'Phone Number.
For phone numbers with `countryCode` equal to `1` (or blank), provide a 10-digit phone number. For all `countryCodes`, other than `1`, a 4-14 digit phone number is accepted.'
pattern: ^[0-9]{4,14}$
example: '5555555555'
subclient2TransactionTypes:
type: object
properties:
push:
type: boolean
description: Push transaction enabled
pull:
type: boolean
description: Pull transaction enabled
subclient2SettlementAccount:
type: object
properties:
routingNumber:
$ref: '#/components/schemas/routingNumber'
accountNumber:
type: string
pattern: ^[0-9]{4,17}$
ledgerID:
$ref: '#/components/schemas/tpLedgerID'
state:
type: string
description: 'State Code
[State Code](https://developers.tabapay.com/reference/us-state-codes#/) must be a valid 2-character code if `country` is [840](https://developers.tabapay.com/reference/country-codes#/) or [Canadian 2-char code](https://developers.tabapay.com/reference/canadian-province-codes#/) if [124](https://developers.tabapay.com/reference/country-codes#/).'
pattern: ^[ a-zA-Z0-9_-]+$
apiResponseSCEC:
type: object
properties:
SC:
$ref: '#/components/schemas/SC'
EC:
$ref: '#/components/schemas/EC'
tpISO4217Numeric:
type: string
description: ISO-4217 numeric currency code
pattern: ^[0-9]{3}$
example: '840'
subclient2CardTypes:
type: object
properties:
push:
$ref: '#/components/schemas/subclient2CardTypesDirection'
pull:
$ref: '#/components/schemas/subclient2CardTypesDirection'
SC:
type: integer
description: '[HTTP Status Code](https://developers.tabapay.com/reference/http-status-codes#/)'
subclient2NetworkDirection:
type: object
properties:
enabled:
type: boolean
description: Network enabled flag
mccOverride:
type: string
pattern: ^[0-9]{4}$
subclient2NetworkConfig:
type: object
properties:
push:
$ref: '#/components/schemas/subclient2NetworkDirection'
pull:
$ref: '#/components/schemas/subclient2NetworkDirection'
subclient2Create:
type: object
required:
- name
- mcc
properties:
name:
type: string
tin:
type: string
pattern: ^[0-9]{9}$
description: '[Taxpayer Identification Number](https://en.wikipedia.org/wiki/Taxpayer_Identification_Number
# --- truncated at 32 KB (50 KB total) ---
# Full source: https://raw.githubusercontent.com/api-evangelist/tabapay/refs/heads/main/openapi/tabapay-subclient-api-openapi.yml