---
title: "Create a sub-TPP"
method: POST
path: "/member/sub-tpps"
tags: ["Sub-TPPs"]
---

# Create a sub-TPP

`POST /member/sub-tpps`

The `POST /member/sub-tpps` endpoint creates a new sub-TPP for a reseller.

## Request body

- union
  - object
    - `domain` string, required — The fully qualified domain name of the sub-TPP, also referred to as the absolute domain name. This specifies an exact location in the tree hierarchy of the Domain Name System (DNS). It must include all domain levels, including the top-level domain and the root zone.
    - `logo` string, byte — This field specifies the image file containing the sub-TPP's logo as a byte array (click <a href="https://thewebdev.info/2021/08/01/how-to-convert-a-file-input-value-to-a-byte-array-with-javascript" target="_blank">here</a> for the JavaScript FileReader instance needed to convert the selected file into a byte array).
    - `merchant` MemberMerchant, required — Contains information about the merchant member.
      - `merchantJurisdiction` string, required — The 'merchantJurisdiction' field specifies the jurisdiction in which the merchant operates. Previously, this field was referred to as the 'domicile country'.
      - `legalEntityName` string, required — Full name of the merchant legal entity.
      - `companyRegistrationNumber` string, required — Company registration number of merchant legal entity.
      - `primaryUseCase` string, required — Merchant primary use case. Possible values include: AIS: Accounting package integration, AIS: Cash flow management, AIS: Credit risk analysis, AIS: Customer onboarding / verification, AIS: Personal finance management, PIS: eCommerce merchant payment, PIS: Funding an account, PIS: In store merchant payment, PIS: Paying a bill, PIS: Paying off debt
      - `iban` string, required — The IBAN of the bank where the payments are settled. The IBAN used will depend on the specific setup for each TPP/sub-TPP. </br>For example, this will be:<ul><li>The sub-TPP's IBAN for cases where settlement is to the merchant.</li><li>The TPP's IBAN when the sub-TPP settles directly with the TPP.</li><li>A proxy for jurisdictions involved in the transaction.</li></ul>Token.io checks the jurisdiction of the bank account and, where possible, confirms that the name on the account is valid; this name can be either the client's or the merchant's. </br>You must use a valid IBAN if you're testing in Sandbox.
      - `bic` string — BIC of merchant’s recipient bank account. You must use a valid IBAN if you're testing in sandbox.
    - `name` string, required — The recognised business name or DBA of the sub-TPP.
    - `parentSubTppId` string — The Token.io-generated identifier for the parent sub-TPP.
    - `mccCode` string — Merchant Category Code is a four-digit number that classifies the type of goods or services a business offers.
    - `useNewFlow` boolean — When useNewFlow is set to true, the request is handled by the new merchant onboarding flow, rather than by the old flow.
  - object
    - `domain` string, required — The fully qualified domain name of the sub-TPP, also referred to as the absolute domain name. This specifies an exact location in the tree hierarchy of the Domain Name System (DNS). It must include all domain levels, including the top-level domain and the root zone.
    - `logo` string, byte — This field specifies the image file containing the sub-TPP's logo as a byte array (click <a href="https://thewebdev.info/2021/08/01/how-to-convert-a-file-input-value-to-a-byte-array-with-javascript" target="_blank">here</a> for the JavaScript FileReader instance needed to convert the selected file into a byte array).
    - `merchant` MemberMerchantGB, required — Contains information about the merchant member.
      - `merchantJurisdiction` string, required — The 'merchantJurisdiction' field specifies the jurisdiction in which the merchant operates. Previously, this field was referred to as the 'domicile country'.
      - `legalEntityName` string, required — Full name of the merchant legal entity.
      - `companyRegistrationNumber` string, required — Company registration number of merchant legal entity.
      - `primaryUseCase` string, required — Merchant primary use case. Possible values include: AIS: Accounting package integration, AIS: Cash flow management, AIS: Credit risk analysis, AIS: Customer onboarding / verification, AIS: Personal finance management, PIS: eCommerce merchant payment, PIS: Funding an account, PIS: In store merchant payment, PIS: Paying a bill, PIS: Paying off debt
      - `accountNumber` string, required — The unique identifier for the bank account in the UK or Ireland.
      - `sortCode` string, required — The number assigned to a branch of a bank, typically containing six digits and most commonly used in the UK and Ireland.
    - `name` string, required — The recognised business name or DBA of the sub-TPP.
    - `parentSubTppId` string — The Token.io-generated identifier for the parent sub-TPP.
    - `mccCode` string — Merchant Category Code is a four-digit number that classifies the type of goods or services a business offers.
    - `useNewFlow` boolean — When useNewFlow is set to true, the request is handled by the new merchant onboarding flow, rather than by the old flow.
  - object
    - `domain` string, required — The fully qualified domain name of the sub-TPP, also referred to as the absolute domain name. This specifies an exact location in the tree hierarchy of the Domain Name System (DNS). It must include all domain levels, including the top-level domain and the root zone.
    - `logo` string, byte — This field specifies the image file containing the sub-TPP's logo as a byte array (click <a href="https://thewebdev.info/2021/08/01/how-to-convert-a-file-input-value-to-a-byte-array-with-javascript" target="_blank">here</a> for the JavaScript FileReader instance needed to convert the selected file into a byte array).
    - `merchant` MemberTokenLicensedSoleTraderMerchant, required
      - `merchantJurisdiction` string, required — The 'merchantJurisdiction' field specifies the jurisdiction in which the merchant operates. Previously, this field was referred to as the 'domicile country'.
      - `legalEntityName` string, required — Full name of the merchant legal entity.
      - `companyRegistrationNumber` string — Company registration number of merchant legal entity.
      - `primaryUseCase` string, required — Merchant primary use case. Possible values include: AIS: Accounting package integration, AIS: Cash flow management, AIS: Credit risk analysis, AIS: Customer onboarding / verification, AIS: Personal finance management, PIS: eCommerce merchant payment, PIS: Funding an account, PIS: In store merchant payment, PIS: Paying a bill, PIS: Paying off debt
      - `iban` string, required — The IBAN of the bank where the payments are settled. The IBAN used will depend on the specific setup for each TPP/sub-TPP. </br>For example, this will be:<ul><li>The sub-TPP's IBAN for cases where settlement is to the merchant.</li><li>The TPP's IBAN when the sub-TPP settles directly with the TPP.</li><li>A proxy for jurisdictions involved in the transaction.</li></ul>Token.io checks the jurisdiction of the bank account and, where possible, confirms that the name on the account is valid; this name can be either the client's or the merchant's. </br>You must use a valid IBAN if you're testing in Sandbox.
      - `bic` string — BIC of merchant’s recipient bank account. You must use a valid IBAN if you're testing in sandbox.
      - `merchantType` 'TOKEN_LICENSED_SOLE_TRADER' — Type of merchant being onboarded. Determines compliance requirements during onboarding. <ul><li><b>TOKEN_LICENSED_SOLE_TRADER</b>Individually operated business.</li><li><b>LICENSED_TPP_SOLE_TRADER</b>Individually operated business Licensed by TPP.</li><li><b>LICENSED_TPP_NON_SOLE_TRADER</b>Publicly listed company. May require Signatories depending on sub-TPP type.</li><li> <b>TOKEN_LICENSED_NON_SOLE_TRADER_PUBLIC</b>Publicly listed company. May require Signatories depending on sub-TPP type.</li><li><b>TOKEN_LICENSED_NON_SOLE_TRADER_PRIVATE</b>Privately held company. UBOs, Directors, and Signatories will be required depending on sub-TPP type.</li></ul>
      - `mccSubType` string — Merchant Category Code Subtype, for certain industry this field needs to be provided.
      - `soleTrader` MemberPersonDetail, required — Contains personal details of a Sole Trader, Ubos, Directors, or Signatories.
        - `fullName` string — Full name.
        - `address` string — Personal Address Details.
        - `dateOfBirth` string — Date of Birth in ISO format (YYYY-MM-DD).
    - `name` string, required — The recognised business name or DBA of the sub-TPP.
    - `parentSubTppId` string — The Token.io-generated identifier for the parent sub-TPP.
    - `mccCode` string — Merchant Category Code is a four-digit number that classifies the type of goods or services a business offers.
    - `useNewFlow` boolean — When useNewFlow is set to true, the request is handled by the new merchant onboarding flow, rather than by the old flow.
  - object
    - `domain` string, required — The fully qualified domain name of the sub-TPP, also referred to as the absolute domain name. This specifies an exact location in the tree hierarchy of the Domain Name System (DNS). It must include all domain levels, including the top-level domain and the root zone.
    - `logo` string, byte — This field specifies the image file containing the sub-TPP's logo as a byte array (click <a href="https://thewebdev.info/2021/08/01/how-to-convert-a-file-input-value-to-a-byte-array-with-javascript" target="_blank">here</a> for the JavaScript FileReader instance needed to convert the selected file into a byte array).
    - `merchant` MemberLicensedTppNonSoleTraderMerchant, required — Contains information about the merchant member.
      - `merchantJurisdiction` string, required — The 'merchantJurisdiction' field specifies the jurisdiction in which the merchant operates. Previously, this field was referred to as the 'domicile country'.
      - `legalEntityName` string, required — Full name of the merchant legal entity.
      - `companyRegistrationNumber` string, required — Company registration number of merchant legal entity.
      - `primaryUseCase` string, required — Merchant primary use case. Possible values include: AIS: Accounting package integration, AIS: Cash flow management, AIS: Credit risk analysis, AIS: Customer onboarding / verification, AIS: Personal finance management, PIS: eCommerce merchant payment, PIS: Funding an account, PIS: In store merchant payment, PIS: Paying a bill, PIS: Paying off debt
      - `iban` string, required — The IBAN of the bank where the payments are settled. The IBAN used will depend on the specific setup for each TPP/sub-TPP. </br>For example, this will be:<ul><li>The sub-TPP's IBAN for cases where settlement is to the merchant.</li><li>The TPP's IBAN when the sub-TPP settles directly with the TPP.</li><li>A proxy for jurisdictions involved in the transaction.</li></ul>Token.io checks the jurisdiction of the bank account and, where possible, confirms that the name on the account is valid; this name can be either the client's or the merchant's. </br>You must use a valid IBAN if you're testing in Sandbox.
      - `bic` string — BIC of merchant’s recipient bank account. You must use a valid IBAN if you're testing in sandbox.
      - `merchantType` 'LICENSED_TPP_NON_SOLE_TRADER' — Type of merchant being onboarded. Determines compliance requirements during onboarding. <ul><li><b>TOKEN_LICENSED_SOLE_TRADER</b>Individually operated business.</li><li><b>LICENSED_TPP_SOLE_TRADER</b>Individually operated business Licensed by TPP.</li><li><b>LICENSED_TPP_NON_SOLE_TRADER</b>Publicly listed company. May require Signatories depending on sub-TPP type.</li><li> <b>TOKEN_LICENSED_NON_SOLE_TRADER_PUBLIC</b>Publicly listed company. May require Signatories depending on sub-TPP type.</li><li><b>TOKEN_LICENSED_NON_SOLE_TRADER_PRIVATE</b>Privately held company. UBOs, Directors, and Signatories will be required depending on sub-TPP type.</li></ul>
      - `mccSubType` string — Merchant Category Code Subtype, for certain industry this field needs to be provided.
    - `name` string, required — The recognised business name or DBA of the sub-TPP.
    - `parentSubTppId` string — The Token.io-generated identifier for the parent sub-TPP.
    - `mccCode` string — Merchant Category Code is a four-digit number that classifies the type of goods or services a business offers.
    - `useNewFlow` boolean — When useNewFlow is set to true, the request is handled by the new merchant onboarding flow, rather than by the old flow.
  - object
    - `domain` string, required — The fully qualified domain name of the sub-TPP, also referred to as the absolute domain name. This specifies an exact location in the tree hierarchy of the Domain Name System (DNS). It must include all domain levels, including the top-level domain and the root zone.
    - `logo` string, byte — This field specifies the image file containing the sub-TPP's logo as a byte array (click <a href="https://thewebdev.info/2021/08/01/how-to-convert-a-file-input-value-to-a-byte-array-with-javascript" target="_blank">here</a> for the JavaScript FileReader instance needed to convert the selected file into a byte array).
    - `merchant` MemberLicensedTppSoleTraderMerchant, required — Contains information about the merchant member.
      - `merchantJurisdiction` string, required — The 'merchantJurisdiction' field specifies the jurisdiction in which the merchant operates. Previously, this field was referred to as the 'domicile country'.
      - `legalEntityName` string, required — Full name of the merchant legal entity.
      - `companyRegistrationNumber` string, required — Company registration number of merchant legal entity.
      - `primaryUseCase` string, required — Merchant primary use case. Possible values include: AIS: Accounting package integration, AIS: Cash flow management, AIS: Credit risk analysis, AIS: Customer onboarding / verification, AIS: Personal finance management, PIS: eCommerce merchant payment, PIS: Funding an account, PIS: In store merchant payment, PIS: Paying a bill, PIS: Paying off debt
      - `iban` string, required — The IBAN of the bank where the payments are settled. The IBAN used will depend on the specific setup for each TPP/sub-TPP. </br>For example, this will be:<ul><li>The sub-TPP's IBAN for cases where settlement is to the merchant.</li><li>The TPP's IBAN when the sub-TPP settles directly with the TPP.</li><li>A proxy for jurisdictions involved in the transaction.</li></ul>Token.io checks the jurisdiction of the bank account and, where possible, confirms that the name on the account is valid; this name can be either the client's or the merchant's. </br>You must use a valid IBAN if you're testing in Sandbox.
      - `bic` string — BIC of merchant’s recipient bank account. You must use a valid IBAN if you're testing in sandbox.
      - `merchantType` 'LICENSED_TPP_SOLE_TRADER' — Type of merchant being onboarded. Determines compliance requirements during onboarding. <ul><li><b>TOKEN_LICENSED_SOLE_TRADER</b>Individually operated business.</li><li><b>LICENSED_TPP_SOLE_TRADER</b>Individually operated business Licensed by TPP.</li><li><b>LICENSED_TPP_NON_SOLE_TRADER</b>Publicly listed company. May require Signatories depending on sub-TPP type.</li><li> <b>TOKEN_LICENSED_NON_SOLE_TRADER_PUBLIC</b>Publicly listed company. May require Signatories depending on sub-TPP type.</li><li><b>TOKEN_LICENSED_NON_SOLE_TRADER_PRIVATE</b>Privately held company. UBOs, Directors, and Signatories will be required depending on sub-TPP type.</li></ul>
      - `mccSubType` string — Merchant Category Code Subtype, for certain industry this field needs to be provided.
    - `name` string, required — The recognised business name or DBA of the sub-TPP.
    - `parentSubTppId` string — The Token.io-generated identifier for the parent sub-TPP.
    - `mccCode` string — Merchant Category Code is a four-digit number that classifies the type of goods or services a business offers.
    - `useNewFlow` boolean — When useNewFlow is set to true, the request is handled by the new merchant onboarding flow, rather than by the old flow.
  - object
    - `domain` string, required — The fully qualified domain name of the sub-TPP, also referred to as the absolute domain name. This specifies an exact location in the tree hierarchy of the Domain Name System (DNS). It must include all domain levels, including the top-level domain and the root zone.
    - `logo` string, byte — This field specifies the image file containing the sub-TPP's logo as a byte array (click <a href="https://thewebdev.info/2021/08/01/how-to-convert-a-file-input-value-to-a-byte-array-with-javascript" target="_blank">here</a> for the JavaScript FileReader instance needed to convert the selected file into a byte array).
    - `merchant` MemberTokenLicensedNonSoleTraderPublicMerchant, required — Contains information about the merchant member.
      - `merchantJurisdiction` string, required — The 'merchantJurisdiction' field specifies the jurisdiction in which the merchant operates. Previously, this field was referred to as the 'domicile country'.
      - `legalEntityName` string, required — Full name of the merchant legal entity.
      - `companyRegistrationNumber` string, required — Company registration number of merchant legal entity.
      - `primaryUseCase` string, required — Merchant primary use case. Possible values include: AIS: Accounting package integration, AIS: Cash flow management, AIS: Credit risk analysis, AIS: Customer onboarding / verification, AIS: Personal finance management, PIS: eCommerce merchant payment, PIS: Funding an account, PIS: In store merchant payment, PIS: Paying a bill, PIS: Paying off debt
      - `iban` string, required — The IBAN of the bank where the payments are settled. The IBAN used will depend on the specific setup for each TPP/sub-TPP. </br>For example, this will be:<ul><li>The sub-TPP's IBAN for cases where settlement is to the merchant.</li><li>The TPP's IBAN when the sub-TPP settles directly with the TPP.</li><li>A proxy for jurisdictions involved in the transaction.</li></ul>Token.io checks the jurisdiction of the bank account and, where possible, confirms that the name on the account is valid; this name can be either the client's or the merchant's. </br>You must use a valid IBAN if you're testing in Sandbox.
      - `bic` string — BIC of merchant’s recipient bank account. You must use a valid IBAN if you're testing in sandbox.
      - `merchantType` 'TOKEN_LICENSED_NON_SOLE_TRADER_PUBLIC' — Type of merchant being onboarded. Determines compliance requirements during onboarding. <ul><li><b>TOKEN_LICENSED_SOLE_TRADER</b>Individually operated business.</li><li><b>LICENSED_TPP_SOLE_TRADER</b>Individually operated business Licensed by TPP.</li><li><b>LICENSED_TPP_NON_SOLE_TRADER</b>Publicly listed company. May require Signatories depending on sub-TPP type.</li><li> <b>TOKEN_LICENSED_NON_SOLE_TRADER_PUBLIC</b>Publicly listed company. May require Signatories depending on sub-TPP type.</li><li><b>TOKEN_LICENSED_NON_SOLE_TRADER_PRIVATE</b>Privately held company. UBOs, Directors, and Signatories will be required depending on sub-TPP type.</li></ul>
      - `mccSubType` string — Merchant Category Code Subtype, for certain industry this field needs to be provided.
      - `signatories` MemberPersonDetail[], required
        - `fullName` string — Full name.
        - `address` string — Personal Address Details.
        - `dateOfBirth` string — Date of Birth in ISO format (YYYY-MM-DD).
    - `name` string, required — The recognised business name or DBA of the sub-TPP.
    - `parentSubTppId` string — The Token.io-generated identifier for the parent sub-TPP.
    - `mccCode` string — Merchant Category Code is a four-digit number that classifies the type of goods or services a business offers.
    - `useNewFlow` boolean — When useNewFlow is set to true, the request is handled by the new merchant onboarding flow, rather than by the old flow.
  - object
    - `domain` string, required — The fully qualified domain name of the sub-TPP, also referred to as the absolute domain name. This specifies an exact location in the tree hierarchy of the Domain Name System (DNS). It must include all domain levels, including the top-level domain and the root zone.
    - `logo` string, byte — This field specifies the image file containing the sub-TPP's logo as a byte array (click <a href="https://thewebdev.info/2021/08/01/how-to-convert-a-file-input-value-to-a-byte-array-with-javascript" target="_blank">here</a> for the JavaScript FileReader instance needed to convert the selected file into a byte array).
    - `merchant` MemberTokenLicensedNonSoleTraderPrivateMerchant, required — Contains information about the merchant member.
      - `merchantJurisdiction` string, required — The 'merchantJurisdiction' field specifies the jurisdiction in which the merchant operates. Previously, this field was referred to as the 'domicile country'.
      - `legalEntityName` string, required — Full name of the merchant legal entity.
      - `companyRegistrationNumber` string, required — Company registration number of merchant legal entity.
      - `primaryUseCase` string, required — Merchant primary use case. Possible values include: AIS: Accounting package integration, AIS: Cash flow management, AIS: Credit risk analysis, AIS: Customer onboarding / verification, AIS: Personal finance management, PIS: eCommerce merchant payment, PIS: Funding an account, PIS: In store merchant payment, PIS: Paying a bill, PIS: Paying off debt
      - `iban` string, required — The IBAN of the bank where the payments are settled. The IBAN used will depend on the specific setup for each TPP/sub-TPP. </br>For example, this will be:<ul><li>The sub-TPP's IBAN for cases where settlement is to the merchant.</li><li>The TPP's IBAN when the sub-TPP settles directly with the TPP.</li><li>A proxy for jurisdictions involved in the transaction.</li></ul>Token.io checks the jurisdiction of the bank account and, where possible, confirms that the name on the account is valid; this name can be either the client's or the merchant's. </br>You must use a valid IBAN if you're testing in Sandbox.
      - `bic` string — BIC of merchant’s recipient bank account. You must use a valid IBAN if you're testing in sandbox.
      - `merchantType` 'TOKEN_LICENSED_NON_SOLE_TRADER_PRIVATE' — Type of merchant being onboarded. Determines compliance requirements during onboarding. <ul><li><b>TOKEN_LICENSED_SOLE_TRADER</b>Individually operated business.</li><li><b>LICENSED_TPP_SOLE_TRADER</b>Individually operated business Licensed by TPP.</li><li><b>LICENSED_TPP_NON_SOLE_TRADER</b>Publicly listed company. May require Signatories depending on sub-TPP type.</li><li> <b>TOKEN_LICENSED_NON_SOLE_TRADER_PUBLIC</b>Publicly listed company. May require Signatories depending on sub-TPP type.</li><li><b>TOKEN_LICENSED_NON_SOLE_TRADER_PRIVATE</b>Privately held company. UBOs, Directors, and Signatories will be required depending on sub-TPP type.</li></ul>
      - `mccSubType` string — Merchant Category Code Subtype, for certain industry this field needs to be provided.
      - `ubos` MemberPersonDetail[], required
        - `fullName` string — Full name.
        - `address` string — Personal Address Details.
        - `dateOfBirth` string — Date of Birth in ISO format (YYYY-MM-DD).
      - `directors` MemberPersonDetail[], required
        - `fullName` string — Full name.
        - `address` string — Personal Address Details.
        - `dateOfBirth` string — Date of Birth in ISO format (YYYY-MM-DD).
      - `signatories` MemberPersonDetail[], required
        - `fullName` string — Full name.
        - `address` string — Personal Address Details.
        - `dateOfBirth` string — Date of Birth in ISO format (YYYY-MM-DD).
    - `name` string, required — The recognised business name or DBA of the sub-TPP.
    - `parentSubTppId` string — The Token.io-generated identifier for the parent sub-TPP.
    - `mccCode` string — Merchant Category Code is a four-digit number that classifies the type of goods or services a business offers.
    - `useNewFlow` boolean — When useNewFlow is set to true, the request is handled by the new merchant onboarding flow, rather than by the old flow.
  - object
    - `domain` string, required — The fully qualified domain name of the sub-TPP, also referred to as the absolute domain name. This specifies an exact location in the tree hierarchy of the Domain Name System (DNS). It must include all domain levels, including the top-level domain and the root zone.
    - `logo` string, byte — This field specifies the image file containing the sub-TPP's logo as a byte array (click <a href="https://thewebdev.info/2021/08/01/how-to-convert-a-file-input-value-to-a-byte-array-with-javascript" target="_blank">here</a> for the JavaScript FileReader instance needed to convert the selected file into a byte array).
    - `merchant` MemberTokenLicensedSoleTraderMerchantGB, required
      - `merchantJurisdiction` string, required — The 'merchantJurisdiction' field specifies the jurisdiction in which the merchant operates. Previously, this field was referred to as the 'domicile country'.
      - `legalEntityName` string, required — Full name of the merchant legal entity.
      - `companyRegistrationNumber` string — Company registration number of merchant legal entity.
      - `primaryUseCase` string, required — Merchant primary use case. Possible values include: AIS: Accounting package integration, AIS: Cash flow management, AIS: Credit risk analysis, AIS: Customer onboarding / verification, AIS: Personal finance management, PIS: eCommerce merchant payment, PIS: Funding an account, PIS: In store merchant payment, PIS: Paying a bill, PIS: Paying off debt
      - `accountNumber` string, required — The unique identifier for the bank account in the UK or Ireland.
      - `sortCode` string, required — The number assigned to a branch of a bank, typically containing six digits and most commonly used in the UK and Ireland.
      - `merchantType` 'TOKEN_LICENSED_SOLE_TRADER' — Type of merchant being onboarded. Determines compliance requirements during onboarding. <ul><li><b>TOKEN_LICENSED_SOLE_TRADER</b>Individually operated business.</li><li><b>LICENSED_TPP_SOLE_TRADER</b>Individually operated business Licensed by TPP.</li><li><b>LICENSED_TPP_NON_SOLE_TRADER</b>Publicly listed company. May require Signatories depending on sub-TPP type.</li><li> <b>TOKEN_LICENSED_NON_SOLE_TRADER_PUBLIC</b>Publicly listed company. May require Signatories depending on sub-TPP type.</li><li><b>TOKEN_LICENSED_NON_SOLE_TRADER_PRIVATE</b>Privately held company. UBOs, Directors, and Signatories will be required depending on sub-TPP type.</li></ul>
      - `mccSubType` string — Merchant Category Code Subtype, for certain industry this field needs to be provided.
      - `soleTrader` MemberPersonDetail, required — Contains personal details of a Sole Trader, Ubos, Directors, or Signatories.
        - `fullName` string — Full name.
        - `address` string — Personal Address Details.
        - `dateOfBirth` string — Date of Birth in ISO format (YYYY-MM-DD).
    - `name` string, required — The recognised business name or DBA of the sub-TPP.
    - `parentSubTppId` string — The Token.io-generated identifier for the parent sub-TPP.
    - `mccCode` string — Merchant Category Code is a four-digit number that classifies the type of goods or services a business offers.
    - `useNewFlow` boolean — When useNewFlow is set to true, the request is handled by the new merchant onboarding flow, rather than by the old flow.
  - object
    - `domain` string, required — The fully qualified domain name of the sub-TPP, also referred to as the absolute domain name. This specifies an exact location in the tree hierarchy of the Domain Name System (DNS). It must include all domain levels, including the top-level domain and the root zone.
    - `logo` string, byte — This field specifies the image file containing the sub-TPP's logo as a byte array (click <a href="https://thewebdev.info/2021/08/01/how-to-convert-a-file-input-value-to-a-byte-array-with-javascript" target="_blank">here</a> for the JavaScript FileReader instance needed to convert the selected file into a byte array).
    - `merchant` MemberLicensedTppNonSoleTraderMerchantGB, required — Contains information about the merchant member.
      - `merchantJurisdiction` string, required — The 'merchantJurisdiction' field specifies the jurisdiction in which the merchant operates. Previously, this field was referred to as the 'domicile country'.
      - `legalEntityName` string, required — Full name of the merchant legal entity.
      - `companyRegistrationNumber` string, required — Company registration number of merchant legal entity.
      - `primaryUseCase` string, required — Merchant primary use case. Possible values include: AIS: Accounting package integration, AIS: Cash flow management, AIS: Credit risk analysis, AIS: Customer onboarding / verification, AIS: Personal finance management, PIS: eCommerce merchant payment, PIS: Funding an account, PIS: In store merchant payment, PIS: Paying a bill, PIS: Paying off debt
      - `accountNumber` string, required — The unique identifier for the bank account in the UK or Ireland.
      - `sortCode` string, required — The number assigned to a branch of a bank, typically containing six digits and most commonly used in the UK and Ireland.
      - `merchantType` 'LICENSED_TPP_NON_SOLE_TRADER' — Type of merchant being onboarded. Determines compliance requirements during onboarding. <ul><li><b>TOKEN_LICENSED_SOLE_TRADER</b>Individually operated business.</li><li><b>LICENSED_TPP_SOLE_TRADER</b>Individually operated business Licensed by TPP.</li><li><b>LICENSED_TPP_NON_SOLE_TRADER</b>Publicly listed company. May require Signatories depending on sub-TPP type.</li><li> <b>TOKEN_LICENSED_NON_SOLE_TRADER_PUBLIC</b>Publicly listed company. May require Signatories depending on sub-TPP type.</li><li><b>TOKEN_LICENSED_NON_SOLE_TRADER_PRIVATE</b>Privately held company. UBOs, Directors, and Signatories will be required depending on sub-TPP type.</li></ul>
      - `mccSubType` string — Merchant Category Code Subtype, for certain industry this field needs to be provided.
    - `name` string, required — The recognised business name or DBA of the sub-TPP.
    - `parentSubTppId` string — The Token.io-generated identifier for the parent sub-TPP.
    - `mccCode` string — Merchant Category Code is a four-digit number that classifies the type of goods or services a business offers.
    - `useNewFlow` boolean — When useNewFlow is set to true, the request is handled by the new merchant onboarding flow, rather than by the old flow.
  - object
    - `domain` string, required — The fully qualified domain name of the sub-TPP, also referred to as the absolute domain name. This specifies an exact location in the tree hierarchy of the Domain Name System (DNS). It must include all domain levels, including the top-level domain and the root zone.
    - `logo` string, byte — This field specifies the image file containing the sub-TPP's logo as a byte array (click <a href="https://thewebdev.info/2021/08/01/how-to-convert-a-file-input-value-to-a-byte-array-with-javascript" target="_blank">here</a> for the JavaScript FileReader instance needed to convert the selected file into a byte array).
    - `merchant` MemberLicensedTppSoleTraderMerchantGB, required — Contains information about the merchant member.
      - `merchantJurisdiction` string, required — The 'merchantJurisdiction' field specifies the jurisdiction in which the merchant operates. Previously, this field was referred to as the 'domicile country'.
      - `legalEntityName` string, required — Full name of the merchant legal entity.
      - `companyRegistrationNumber` string, required — Company registration number of merchant legal entity.
      - `primaryUseCase` string, required — Merchant primary use case. Possible values include: AIS: Accounting package integration, AIS: Cash flow management, AIS: Credit risk analysis, AIS: Customer onboarding / verification, AIS: Personal finance management, PIS: eCommerce merchant payment, PIS: Funding an account, PIS: In store merchant payment, PIS: Paying a bill, PIS: Paying off debt
      - `accountNumber` string, required — The unique identifier for the bank account in the UK or Ireland.
      - `sortCode` string, required — The number assigned to a branch of a bank, typically containing six digits and most commonly used in the UK and Ireland.
      - `merchantType` 'LICENSED_TPP_SOLE_TRADER' — Type of merchant being onboarded. Determines compliance requirements during onboarding. <ul><li><b>TOKEN_LICENSED_SOLE_TRADER</b>Individually operated business.</li><li><b>LICENSED_TPP_SOLE_TRADER</b>Individually operated business Licensed by TPP.</li><li><b>LICENSED_TPP_NON_SOLE_TRADER</b>Publicly listed company. May require Signatories depending on sub-TPP type.</li><li> <b>TOKEN_LICENSED_NON_SOLE_TRADER_PUBLIC</b>Publicly listed company. May require Signatories depending on sub-TPP type.</li><li><b>TOKEN_LICENSED_NON_SOLE_TRADER_PRIVATE</b>Privately held company. UBOs, Directors, and Signatories will be required depending on sub-TPP type.</li></ul>
      - `mccSubType` string — Merchant Category Code Subtype, for certain industry this field needs to be provided.
    - `name` string, required — The recognised business name or DBA of the sub-TPP.
    - `parentSubTppId` string — The Token.io-generated identifier for the parent sub-TPP.
    - `mccCode` string — Merchant Category Code is a four-digit number that classifies the type of goods or services a business offers.
    - `useNewFlow` boolean — When useNewFlow is set to true, the request is handled by the new merchant onboarding flow, rather than by the old flow.
  - object
    - `domain` string, required — The fully qualified domain name of the sub-TPP, also referred to as the absolute domain name. This specifies an exact location in the tree hierarchy of the Domain Name System (DNS). It must include all domain levels, including the top-level domain and the root zone.
    - `logo` string, byte — This field specifies the image file containing the sub-TPP's logo as a byte array (click <a href="https://thewebdev.info/2021/08/01/how-to-convert-a-file-input-value-to-a-byte-array-with-javascript" target="_blank">here</a> for the JavaScript FileReader instance needed to convert the selected file into a byte array).
    - `merchant` MemberTokenLicensedNonSoleTraderPublicMerchantGB, required — Contains information about the merchant member.
      - `merchantJurisdiction` string, required — The 'merchantJurisdiction' field specifies the jurisdiction in which the merchant operates. Previously, this field was referred to as the 'domicile country'.
      - `legalEntityName` string, required — Full name of the merchant legal entity.
      - `companyRegistrationNumber` string, required — Company registration number of merchant legal entity.
      - `primaryUseCase` string, required — Merchant primary use case. Possible values include: AIS: Accounting package integration, AIS: Cash flow management, AIS: Credit risk analysis, AIS: Customer onboarding / verification, AIS: Personal finance management, PIS: eCommerce merchant payment, PIS: Funding an account, PIS: In store merchant payment, PIS: Paying a bill, PIS: Paying off debt
      - `accountNumber` string — The unique identifier for the bank account in the UK or Ireland.
      - `sortCode` string — The number assigned to a branch of a bank, typically containing six digits and most commonly used in the UK and Ireland.
      - `merchantType` 'TOKEN_LICENSED_NON_SOLE_TRADER_PUBLIC' — Type of merchant being onboarded. Determines compliance requirements during onboarding. <ul><li><b>TOKEN_LICENSED_SOLE_TRADER</b>Individually operated business.</li><li><b>LICENSED_TPP_SOLE_TRADER</b>Individually operated business Licensed by TPP.</li><li><b>LICENSED_TPP_NON_SOLE_TRADER</b>Publicly listed company. May require Signatories depending on sub-TPP type.</li><li> <b>TOKEN_LICENSED_NON_SOLE_TRADER_PUBLIC</b>Publicly listed company. May require Signatories depending on sub-TPP type.</li><li><b>TOKEN_LICENSED_NON_SOLE_TRADER_PRIVATE</b>Privately held company. UBOs, Directors, and Signatories will be required depending on sub-TPP type.</li></ul>
      - `mccSubType` string — Merchant Category Code Subtype, for certain industry this field needs to be provided.
    - `name` string, required — The recognised business name or DBA of the sub-TPP.
    - `parentSubTppId` string — The Token.io-generated identifier for the parent sub-TPP.
    - `mccCode` string — Merchant Category Code is a four-digit number that classifies the type of goods or services a business offers.
    - `useNewFlow` boolean — When useNewFlow is set to true, the request is handled by the new merchant onboarding flow, rather than by the old flow.
  - object
    - `domain` string, required — The fully qualified domain name of the sub-TPP, also referred to as the absolute domain name. This specifies an exact location in the tree hierarchy of the Domain Name System (DNS). It must include all domain levels, including the top-level domain and the root zone.
    - `logo` string, byte — This field specifies the image file containing the sub-TPP's logo as a byte array (click <a href="https://thewebdev.info/2021/08/01/how-to-convert-a-file-input-value-to-a-byte-array-with-javascript" target="_blank">here</a> for the JavaScript FileReader instance needed to convert the selected file into a byte array).
    - `merchant` MemberTokenLicensedNonSoleTraderPrivateMerchantGB, required — Contains information about the merchant member.
      - `merchantJurisdiction` string, required — The 'merchantJurisdiction' field specifies the jurisdiction in which the merchant operates. Previously, this field was referred to as the 'domicile country'.
      - `legalEntityName` string, required — Full name of the merchant legal entity.
      - `companyRegistrationNumber` string, required — Company registration number of merchant legal entity.
      - `primaryUseCase` string, required — Merchant primary use case. Possible values include: AIS: Accounting package integration, AIS: Cash flow management, AIS: Credit risk analysis, AIS: Customer onboarding / verification, AIS: Personal finance management, PIS: eCommerce merchant payment, PIS: Funding an account, PIS: In store merchant payment, PIS: Paying a bill, PIS: Paying off debt
      - `accountNumber` string, required — The unique identifier for the bank account in the UK or Ireland.
      - `sortCode` string, required — The number assigned to a branch of a bank, typically containing six digits and most commonly used in the UK and Ireland.
      - `merchantType` 'TOKEN_LICENSED_NON_SOLE_TRADER_PRIVATE' — Type of merchant being onboarded. Determines compliance requirements during onboarding. <ul><li><b>TOKEN_LICENSED_SOLE_TRADER</b>Individually operated business.</li><li><b>LICENSED_TPP_SOLE_TRADER</b>Individually operated business Licensed by TPP.</li><li><b>LICENSED_TPP_NON_SOLE_TRADER</b>Publicly listed company. May require Signatories depending on sub-TPP type.</li><li> <b>TOKEN_LICENSED_NON_SOLE_TRADER_PUBLIC</b>Publicly listed company. May require Signatories depending on sub-TPP type.</li><li><b>TOKEN_LICENSED_NON_SOLE_TRADER_PRIVATE</b>Privately held company. UBOs, Directors, and Signatories will be required depending on sub-TPP type.</li></ul>
      - `mccSubType` string — Merchant Category Code Subtype, for certain industry this field needs to be provided.
      - `ubos` MemberPersonDetail[], required
        - `fullName` string — Full name.
        - `address` string — Personal Address Details.
        - `dateOfBirth` string — Date of Birth in ISO format (YYYY-MM-DD).
      - `directors` MemberPersonDetail[], required
        - `fullName` string — Full name.
        - `address` string — Personal Address Details.
        - `dateOfBirth` string — Date of Birth in ISO format (YYYY-MM-DD).
    - `name` string, required — The recognised business name or DBA of the sub-TPP.
    - `parentSubTppId` string — The Token.io-generated identifier for the parent sub-TPP.
    - `mccCode` string — Merchant Category Code is a four-digit number that classifies the type of goods or services a business offers.
    - `useNewFlow` boolean — When useNewFlow is set to true, the request is handled by the new merchant onboarding flow, rather than by the old flow.

## Response `200`

Successful response

- CreateSubTppResponse
  - `subTppId` string — The Token.io-generated identifier for the sub-TPP used by the reseller as the `actingAs.refId` in token requests.

## Other responses

- `400` — The client specified an invalid argument
- `401` — The authorization information is missing or invalid
- `403` — Permission to access this endpoint is denied
- `404` — The requested entity, such as a sub-tpp, was not found
- `429` — Too many requests
- `500` — An unexpected or internal server error
- `501` — The operation was not implemented
- `503` — Service is unavailable
- `504` — Gateway has timed out

---

[API](https://skmtc.net/token/apis/token-io-s-open-banking-api-for-tpps.md) · [All operations](https://skmtc.net/token/apis/token-io-s-open-banking-api-for-tpps/llms.txt) · [OpenAPI document](https://skmtc-service-staging.skmtc.workers.dev/v1/apis/token/token-io-s-open-banking-api-for-tpps/versions/5e8d6d2c24a1/schema)
