Referencia de la API del SDK
La clase TokeflowBridge, las opciones de configuración, los módulos, las fábricas de elementos y los tipos de TypeScript exportados del Bridge SDK.
Esta página es la referencia a nivel de superficie de @tokeflow_com/bridge-js. Para guías orientadas a tareas, consulta
Quickstart, Elements, Tokenization y
Payment methods.
El SDK incluye definiciones completas de TypeScript — cada tipo de los que se muestran a continuación es importable.
TokeflowBridge
El punto de entrada principal. Crea una instancia por cada checkout, llama a init(), crea los elementos y luego tokeniza.
class TokeflowBridge {
constructor(config: TokeflowBridgeConfig);
init(): Promise<void>; // creates a session and loads the secure elements runtime
destroy(): void; // tears down the bridge and releases all resources
// Session & capabilities (synchronous getters; valid after init())
getSession(): Session | null;
getCapabilities(): Capabilities | null;
getSessionSettings(): SessionSettings | null;
getAvailablePaymentMethods(): AvailablePaymentMethod[];
// Element factories
createCardElement(options?: CardElementOptions): TokeflowCardElement;
createCardNumberElement(options?): TokeflowCardNumberElement;
createCardExpirationElement(options?): TokeflowCardExpirationElement;
createCardCvcElement(options?): TokeflowCardCvcElement;
createCardholderNameElement(options?): TokeflowCardholderNameElement;
createTextElement(options?): TokeflowTextElement;
createCpfElement(options?): TokeflowCpfElement;
createAddressLine1Element(options?): TokeflowAddressLine1Element;
createAddressLine2Element(options?): TokeflowAddressLine2Element;
createCityElement(options?): TokeflowCityElement;
createStateElement(options?): TokeflowStateElement;
createPostalCodeElement(options?): TokeflowPostalCodeElement;
createCountryElement(options?): TokeflowCountryElement;
createApplePayButton(options?): TokeflowApplePayButton;
createGooglePayButton(options?): TokeflowGooglePayButton;
// Modules
cards: Cards;
pix: Pix;
boleto: Boleto;
applePay: ApplePay;
googlePay: GooglePay;
checkout: Checkout;
sessionManager: SessionManager;
}Ciclo de vida
import { TokeflowBridge } from '@tokeflow_com/bridge-js';
const tokeflow = new TokeflowBridge({ publicKey: 'pk_live_mer_xxxxxxxx' });
await tokeflow.init(); // 1. initialize
const card = tokeflow.createCardElement(); // 2. create
card.mount('#card-element'); // 3. mount
const token = await tokeflow.cards.tokenize({ card }); // 4. tokenize
// 5. send token.tokenId to your backend to charge
tokeflow.destroy(); // 6. clean up when doneTokeflowBridgeConfig
| Opción | Type | Requerido | Predeterminado | Descripción |
|---|---|---|---|---|
publicKey | string | Sí | — | Tu clave pública de Tokeflow (pk_test_* o pk_live_*). Es seguro exponerla en el navegador. |
environment | 'sandbox' | 'production' | No | Auto | Se detecta automáticamente a partir de la clave (pk_test_* → sandbox, pk_live_* → production). |
brandName | string | No | — | Nombre de la marca del Merchant que se muestra en algunas superficies de UI alojadas. |
checkoutSessionId | string | No | — | Vincula el bridge a una sesión de checkout creada en el backend. |
locale | TokeflowLocale | No | 'en' | Configuración regional predeterminada para todos los elementos. Consulta Localization. |
translations | Partial<TokeflowTranslations> | No | — | Sobrescribe las cadenas de traducción integradas. |
elementOptions | { style?: ElementStyle; fonts?: string[] } | No | — | Estilos/fuentes predeterminados que se aplican a cada elemento. |
sessionTTL | number | No | Definido por el servidor | Duración de sesión solicitada, en segundos. |
autoRefreshSession | boolean | No | true | Renueva la sesión automáticamente antes de que expire. |
timeout | number | No | 30000 | Tiempo de espera de la solicitud en milisegundos. |
telemetry | boolean | TelemetryOptions | No | true | Telemetría anónima de errores. Establece false para desactivarla; también se desactiva automáticamente cuando el navegador envía Do-Not-Track. |
onSessionCreated | (session: Session) => void | No | — | Se invoca cuando se crea una sesión. |
onSessionExpired | () => void | No | — | Se invoca cuando la sesión expira. |
onError | (error: TokeflowError) => void | No | — | Manejador global de errores. |
const tokeflow = new TokeflowBridge({
publicKey: 'pk_live_mer_xxxxxxxx',
locale: 'pt-BR',
timeout: 15000,
onError: (error) => console.error(error.code, error.message),
onSessionCreated: (session) => console.log('Session:', session.id),
});La telemetría es anónima y depurada. Cuando está habilitada, el SDK reporta sus propios errores internos para ayudar a
Tokeflow a mejorar la fiabilidad. Un depurador de tipo fail-closed redacta cualquier identificador relevante para pagos (número de tarjeta,
fecha de vencimiento, CVC, nombre del titular de la tarjeta, correo electrónico, CPF, dirección de facturación) antes de que se envíe cualquier cosa, y nunca toca una
configuración de monitoreo de errores o de analítica que ejecutes en tu propia aplicación. Desactívala por completo con telemetry: false.
interface TelemetryOptions {
enabled?: boolean;
sampleRate?: number; // 0..1
environment?: string; // defaults from the key
release?: string; // defaults to the SDK version
}Módulos
| Módulo | Accesor | Propósito |
|---|---|---|
Cards | tokeflow.cards | Tokeniza datos de tarjeta. Consulta Tokenization. |
Pix | tokeflow.pix | Registra un pagador de PIX y obtén un token de pagador (Brasil). Consulta PIX. |
Boleto | tokeflow.boleto | Registra un pagador de boleto y su dirección de facturación y obtén un token de pagador (Brasil, SDK 2.8.0+). Consulta Boleto. |
ApplePay | tokeflow.applePay | Configuración de Apple Pay, comprobaciones de compatibilidad y tokenización. |
GooglePay | tokeflow.googlePay | Configuración de Google Pay, comprobaciones de disponibilidad y tokenización. |
Checkout | tokeflow.checkout | Lee el contexto de checkout vinculado. Consulta Checkout context. |
SessionManager | tokeflow.sessionManager | Inspecciona y renueva la sesión subyacente. |
Módulo Cards
class Cards {
tokenize(
input:
| TokeflowCardElement
| { card: TokeflowCardElement; cardholderName?: TokeflowCardholderNameElement | string; billingAddress?: BillingAddressInput }
| { cardNumber: TokeflowCardNumberElement; expiration: TokeflowCardExpirationElement; cvc: TokeflowCardCvcElement; cardholderName?: TokeflowCardholderNameElement | string; billingAddress?: BillingAddressInput },
options?: TokenizeOptions
): Promise<CardToken>;
}Interfaz de elemento (todos los elementos)
interface TokeflowElement<TOptions = unknown> {
mount(target: string | HTMLElement): void;
unmount(): void;
update(options: TOptions): void;
focus(): void;
blur(): void;
clear(): void;
setValue(value: string): void; // text-style elements only
getState(): ElementState;
on(event: ElementEvent, handler: EventHandler): void;
off(event: ElementEvent, handler?: EventHandler): void;
}Consulta Elements para ver el catálogo completo, las opciones y los eventos.
Tipos exportados
import {
TokeflowBridge,
TokeflowError,
TokeflowErrorCode,
TokeflowCardElement,
} from '@tokeflow_com/bridge-js';
import type {
TokeflowBridgeConfig,
Session,
CardToken,
PixToken,
BoletoToken,
PixTokenizeParams,
BoletoTokenizeParams,
PaymentInstructions,
PixInstructions,
BoletoInstructions,
AvailablePaymentMethod,
TokenizeOptions,
TokenPurpose,
ElementStyle,
ElementState,
ElementChangeEvent,
CardElementOptions,
CheckoutContext,
TelemetryOptions,
} from '@tokeflow_com/bridge-js';
// React types
import type {
CardElementRef,
CardNumberElementRef,
CardExpirationElementRef,
CardCvcElementRef,
} from '@tokeflow_com/bridge-js/react';Compatibilidad con navegadores
El SDK está orientado a las versiones actuales de Chrome, Firefox, Safari y Edge.
Relacionado
- Error handling —
TokeflowErrory la tabla completa de códigos de error - React integration — provider, hooks y componentes
- Tokenization — entrada/salida de
cards.tokenize()