1. Documentation
Vortex
  • Documentation
    • Overview
    • Quick Start With The SDK
    • Authentication And Partner Keys
    • Ramp Lifecycle
    • Ephemeral Key Custody
    • Quotes And Pricing
    • Webhooks
    • Widget Integration
    • BRL / KYC notes
    • Sandbox
    • Production Checklist
    • AI Agent Integration
    • KYB Deep Link
  • API Endpoints
    • Vortex Widget
      • Create widget session
    • Quotes
      • Create a quote for the best network
      • Create a new quote
      • Get existing quote
    • Ramp
      • Get ramp status
      • Get ramp error logs
      • Get ramp history for wallet address
      • Register new ramp process
      • Start ramp process
      • Update ramp process
    • Reference Data
      • Supported Countries
      • Supported Cryptocurrencies
      • Supported Fiat Currencies
      • Supported Payment Methods
    • Public Key
      • Public Key
    • Webhooks
      • Register Webhook
      • Delete Webhook
    • Account Management
      • Create user or retry KYC
      • Get user's KYC status
      • Get selfie liveness URL
      • Get KYC document upload URLs
      • Get user information
      • Get user's remaining transaction limits
      • Submit KYC level 1 data
      • Validate Pix key
    • Schemas
      • AccountMeta
      • CreateBestQuoteRequest
      • AveniaDocumentType
      • Networks
      • AveniaKYCDataUploadRequest
      • AveniaKYCDataUploadResponse
      • BrlaAddress
      • BrlaErrorResponse
      • BrlaGetSelfieLivenessUrlResponse
      • BrlaValidatePixKeyResponse
      • CleanupPhase
      • CountryCode
      • CreateQuoteRequest
      • CreateSubaccountRequest
      • CreateSubaccountResponse
      • DestinationType
      • DocumentUploadEntry
      • ErrorResponse
      • FiatToken
      • GetKycStatusResponse
      • GetRampErrorLogsResponse
      • GetRampHistoryResponse
      • GetRampHistoryTransaction
      • GetUserRemainingLimitResponse
      • GetUserResponse
      • GetWidgetUrlLocked
      • GetWidgetUrlRefresh
      • KYCDataUploadFileFiles
      • KYCDocType
      • KycLevel1Payload
      • KycLevel1Response
      • OnChainToken
      • PaymentData
      • PaymentMethod
      • PresignedTx
      • QuoteResponse
      • RampCurrency
      • RampDirection
      • RampErrorLog
      • RampPhase
      • RampProcess
      • RegisterRampRequest
      • SimpleStatus
      • StartKYC2Request
      • StartKYC2Response
      • StartRampRequest
      • TaxIdType
      • TriggerOfframpRequest
      • TriggerOfframpResponse
      • UnsignedTx
      • UpdateRampRequest
      • ValidatePixKeyResponse
  1. Documentation

KYB Deep Link

The KYB deep link takes a business user straight into KYB (Know Your Business) verification from a single widget URL — no quote required. Use it when you want a partner's users to complete business verification ahead of, or independently from, any ramp.
It is a variant of the hosted widget: instead of POST /v1/session/create, you link the user directly to the widget with a KYB query parameter.

Flow#

?kyb / ?kybLocked  →  email + OTP sign-in  →  region selector  →  provider KYB  →  "KYB Completed" screen
Brazil routes to Avenia KYB. The user enters the company name and CNPJ together on the company form, then completes Avenia's hosted company and representative verification.
Mexico / Colombia / USA route to the Alfredpay business KYB form (the business customer type is preselected).
Europe is intentionally excluded — it is individual KYC only and requires a connected wallet, so it cannot complete a quote-less KYB deep link.
After verification the user lands on a KYB Completed screen. Continue returns them to the standard quote form with the session still authenticated and the deep-link parameters stripped from the URL.

URL Parameters#

Append one of these to the widget URL (e.g. https://vortexfinance.co/widget?kyb):
URLBehavior
?kybKYB mode; the region selector is shown.
?kyb=BR | MX | CO | USSelector shown with the region preselected. The user can still change it.
?kybLocked=BR | MX | CO | USSelector skipped, region pinned, back navigation into the selector disabled.
?kybLocked=BR (specifically)Additionally defaults the widget locale to pt-BR. An explicit locale in the path still wins (e.g. /en/widget?kybLocked=BR stays English).
unknown or empty region code (e.g. ?kybLocked=ZZ, ?kybLocked)Degrades gracefully to the open selector; the region is not treated as locked.
Query keys are case-sensitive: use kyb and kybLocked exactly. Region codes are case-insensitive.

Attribution#

externalSessionId, partnerId, and apiKey are forwarded in KYB mode exactly as in the quoted widget flow, so partner and session attribution work the same way:
https://vortexfinance.co/widget?kybLocked=BR&externalSessionId=my-session-id&partnerId=my-partner&apiKey=pk_live_...
Pass your partner public key (pk_live_* / pk_test_*) as apiKey for attribution. externalSessionId is your own opaque identifier and is echoed back in webhook payloads.

Embedding#

The KYB deep link is a normal widget URL, so the same embed options apply:

Underlying KYB Onboarding#

For Brazil, the deep link drives POST /v1/brla/createSubaccount without a quoteId — the subaccount is created from the company name and CNPJ collected on the form, and the optional quote association is simply omitted. See BRL / KYC Notes for how BRLA onboarding relates to the ramp flow.

Modified at 2026-06-24 09:16:30
Previous
AI Agent Integration
Next
Create widget session
Built with