Kushki Developer Portal
  1. APPIAN-SUBMERCHANT-REGISTER
Kushki Developer Portal
  • KUSHKI API
    • Kushki Developer Portal 🚀
    • Perú 🇵🇪
    • Ecuador 🇪🇨
    • Chile 🇨🇱
    • México 🇲🇽
    • Colombia 🇨🇴
    • Libraries & SDKs (Online Payments)
      • Release notes
      • Mobile
        • Kushki Android
        • Kushki iOS 
        • Kushki iOS ARM Setup
      • Web
        • Kushki.js 🌐
        • kushki.js-hosted-fields
          • kushki.js Hosted Fields
          • Guía de migración a Kushki.js 2.0
          • Javascript
          • Card Payouts
            • Interfaces
              • Interface `FormValidity`
              • Interface `Styles`
              • Interface `CardPayoutUniqueTokenResponse`
              • Interface `CardPayoutSubscriptionTokenResponse`
              • Interface `CardPayoutOptions`
              • Interface `Fields`
              • Interface `Field`
              • Interface `FieldValidity`
            • Type Aliases
              • Type Alias `InputTypeEnum`
              • Type Alias `CardPayoutTokenResponse`
            • Errors
              • Errors
            • Card Payouts Interface
              • Interface `ICardPayouts`
            • Enumerations
              • Enumeration `InputModelEnum`
            • Methods
              • initCardPayoutToken method
            • Types
              • Type Alias `CssProperties`
          • Antifraud
            • Interfaces
              • Untitled Doc
              • Untitled Doc
              • SiftScienceObject Interface
            • Methods
              • Untitled Doc
              • requestInitAntiFraud method
              • Untitled Doc
          • Kushki
            • Interfaces
              • Untitled Doc
              • CommissionConfigurationRequest interfaces
              • Untitled Doc
            • Classes
              • Untitled Doc
            • Methods
              • requestBankList function
              • requestCommissionConfiguration function
              • Kushki.js Hosted Fields init function
          • Card
            • Card-Interface
              • Untitled Doc
              • Untitled Doc
            • Interfaces
              • Untitled Doc
              • AppleTokenResponse Interface
              • Untitled Doc
              • Untitled Doc
              • BrandByMerchantResponse Interface
              • ApplePayOptions Interface
              • ApplePayPaymentContact Interface
              • ApplePayGetTokenOptions Interface
              • Untitled Doc
              • Untitled Doc
              • MasterCardBrandingRequest Interface
              • Untitled Doc
              • Untitled Doc
              • Untitled Doc
              • Untitled Doc
              • Untitled Doc
              • Untitled Doc
              • Untitled Doc
              • Untitled Doc
              • Untitled Doc
              • VisaBrandingRequest Interface
              • Untitled Doc
              • Untitled Doc
              • Untitled Doc
            • CarApplePay interface
              • ICardApplePay Interface
            • Errors
              • Untitled Doc
            • Methods
              • Untitled Doc
              • Untitled Doc
              • Untitled Doc
              • requestInitCardBrandingAnimation method
              • Untitled Doc
              • requestBrandsByMerchant method
            • Types
              • Untitled Doc
              • Untitled Doc
              • Untitled Doc
    • Schemas
      • webhooksChargeback
      • one-and-two-step-payment
      • webhooks
      • transactionType
      • threeDomainSecure
      • product
      • payment_submethod
      • paymentMethod
      • orderDetails
      • headers
      • extraTaxes
      • documentType
      • currency
      • currency-cash-in
      • currency-CL
      • binInfo
      • UnexpectedErrorResponse
      • SubscriptionUpdate
      • SubscriptionAdjustmentRequest
      • Subscription
      • Submerchant
      • Shipping-Address
      • Promotions
      • Metadata
      • Language
      • InvalidBinResponse
      • GetConfigurationRequest
      • ErrorResponse
      • Deferred
      • Country
      • ContactDetails
      • ChargesVoidCardResponse
      • Channel
      • Card
      • Billing-Address
      • BadRequestResponse
      • Amount
      • Amount-cash-in
      • Amount-CL
  • APPIAN-SUBMERCHANT-REGISTER
    • Submerchant Validation in Batch
      POST
    • Query submerchant status by requestId/submerchantId
      GET
    • Get submerchantIds
      GET
    • Get credentials for submerchants
      POST
  1. APPIAN-SUBMERCHANT-REGISTER

Query submerchant status by requestId/submerchantId

GET
/onboarding/v1/submerchants
Make sure to check the webhook notification to confirm that the submerchant has reached the READY_FOR_ONBOARDING status. This indicates the validation process was successful.
Once a submerchant has been successfully approved, this service allows Payment Service Providers (PSPs) to check the status of submerchant creation, , either for a bulk request or for a specific submerchant.

How to Use This Endpoint#

To check the status of a bulk request, you must send the requestId associated with the batch.
To retrieve information about a specific submerchant, you must provide the corresponding submerchantId.

Response Handling#

When querying by requestId, the response includes an array of submerchants, each with their creation status.
When querying by submerchantId, the response returns a single object containing details for that submerchant.

Submerchant Statuses#

To determine if the submerchant entered the onboarding process#

Each submerchant in the response can have one of the following statuses:
READY_FOR_ONBOARDING- The submerchant has passed validation and is ready for the onboarding process
ERROR- The submerchant creation failed due to validation or processing issues. The issue must be corrected and the creation request resubmitted with the appropriate adjustments.

To track the onboarding progress#

Only submerchants with the READY_FOR_ONBOARDING status will continue through the onboarding process and expose subsequent status updates.
Each submerchant in the response can have one of the following statuses:
Rejected – The submerchant was not approved. The onboarding process has ended unsuccessfully.
PSP Pending Information – The submerchant has pending tasks in the PSP portal that must be completed to continue.
Kushki KYC: Ongoing – Kushki is reviewing the submerchant’s information. If additional input is required, the status will change to PSP Pending Information; otherwise, the process will continue to the account creation phase.
Kushki Account Creation: Ongoing – The submerchant’s account is being created in Kushki’s systems. No action needed.
Approved with Conditions – Approved, but must complete specific Post-Production tasks listed in the portal.
Approved – Fully approved and ready to operate

Request

Query Params

Header Params

Responses

🟢200
application/json
Successful response
Body

🟠403
Request Request Example
Shell
JavaScript
Java
Swift
curl --location --request GET '/onboarding/v1/submerchants?requestId&submerchantId' \
--header 'X-Api-Key;'
Response Response Example
200 - Query by submerchantId
{
    "requestId": "5c91b0ee-677f-448e-b2e8-eb13bf2efcab",
    "submerchantId": "c0d99b38-9590-49fc-b348-899affe20726",
    "status": "ERROR",
    "message": "Submerchant onboarding failed due to invalid fields.",
    "errorDetails": {
        "message": "Submerchant Onboarding Request has failed",
        "fields": {
            "ubo": {
                "uboSecondLastName": "",
                "uboFirstLastName": "",
                "disabled": true,
                "uboFirstName": "",
                "uboDateBirth": ""
            },
            "entityType": "",
            "operationCountry": "Operation Country not registered",
            "emails": "",
            "subLegalName": "",
            "subPostalCode": "",
            "legalRepresentative": {
                "legalRepresentativeName": "",
                "legalRepresentativeSecondLastName": "Second Last Name is invalid",
                "legalRepresentativeFirstLastName": "Value have not valid characters",
                "disabled": false,
                "legalRepresentativeDateBirth": "",
                "legalRepresentativeIdNumber": "",
                "legalRepresentativeSameAsUbo": ""
            },
            "submerchantAddress": "",
            "submerchantCity": "",
            "submerchantUrl": "",
            "submerchantTaxId": "",
            "submerchantName": "",
            "submerchantMcc": "",
            "pspCustomerId": "Select a valid operation country",
            "operationType": "Select a valid operation country",
            "submerchantCountryTaxResidency": "",
            "secondConcurrenceNeeded": ""
        }
    }
}
Modified at 2026-01-29 21:17:00
Previous
Submerchant Validation in Batch
Next
Get submerchantIds
Built with