1. Online Payments
Español
  • English
  • Español
  • Docs de API 🇨🇴
  • Online Payments
    • Errores del API de Kushki
    • Errores ISO
    • Notas de versión
    • Card Payments
      • Solicitar un token de tarjeta
      • Hacer un cargo o cargo diferido
      • Crear pago (sin token)
      • Anular una transacción
      • Reembolsar una transacción
      • Solicitar opciones de diferido
      • Autorizar pagos
      • Preautorización (sin token)
      • Reautorizar pagos
      • Capturar un pago autorizado
      • Verificar cuenta
      • Validar OTP
      • Información de BIN
      • Información de BIN V2
    • One-Click & Scheduled Payments
      • Solicitar un token de cargo recurrente
      • Crear un cargo recurrente
      • Hacer un pago One-click
      • Actualizar los datos de la tarjeta del cargo recurrente
      • Cancelar un cargo recurrente
      • Actualizar un cargo recurrente
      • Agregar un cargo o descuento temporal
      • Autorizar pagos
      • Capturar un pago autorizado
      • Consultar información del cargo recurrente
    • Chargebacks
      • Consultar chargebacks
      • Solicitar exportación de chargebacks
    • Transfer in
      • Consultar la configuración de Transfer In
      • Consultar lista de bancos
      • Solicitar un token de Transfer In
      • Iniciar transacción
      • Consultar estado
      • Cancelar transacción
    • Transfer out
      • Consultar lista de bancos
      • Consultar lista de bancos V2
      • Solicitar un token de Transfer Out
      • Iniciar transacción
      • Consultar estado
      • Saldo para payouts
    • Cash in
      • Solicitar un token de Cash In
      • Iniciar transacción
      • Estado de la transacción
      • Eliminar una transacción de Cash In
      • Actualizar una transacción de Cash In
    • Cash-out
      • Solicitar un token de Cash Out
      • Iniciar transacción
      • Estado de la transacción
      • Actualizar una transacción de Cash Out
      • Eliminar una transacción de Cash Out
    • Smartlinks-v2
      • Crear un Smartlink
      • Consultar un Smartlink
      • Actualizar un Smartlink
      • Eliminar un Smartlink
    • Analytics
      • Consultar listado de transacciones v2
    • Gateway-status
      • Consultar estado del gateway
      • Consultar estado de la plataforma
    • Payment Credentials
      • Crear una credencial
      • Buscar credenciales
      • Búsqueda avanzada
      • Eliminar credencial
      • Regenerar una credencial
      • Activar o desactivar
      • Actualizar credencial
    • Payment Button
      • Crear un Payment Button
    • Settlement
      • Consultar liquidación
    • Subscription Transactions
      • Consultar transacciones de suscripción
    • Fraud Report
      • Consultar alertas de fraude
  • Kushki One
    • Error Catalog
    • Release notes
    • Transaction Examples
    • Webhooks
    • Cloud Services
      • Payment
        • Sync
          • Charge
          • Authorization (Pre-auth)
          • Capture
          • Re-authorization
          • Post-tip
          • Void
          • Abort
        • Async
          • Charge (Async)
          • Authorization — Pre-auth (Async)
          • Capture (Async)
          • Re-authorization (Async)
          • Post-tip (Async)
          • Void (Async)
        • Search
          • Transaction Search
      • Print
        • Create Print Job
        • Get Print Job Status
      • Diagnostics
        • Connection test
        • Terminal info
    • Local Services
      • Payment
        • Sync
          • Charge
          • Authorization (Pre-auth)
          • Capture
          • Re-authorization
          • Post-tip
          • Void
          • Abort
        • Async
          • Charge (Async)
          • Authorization — Pre-auth (Async)
          • Capture (Async)
          • Re-authorization (Async)
          • Post-tip (Async)
          • Void (Async)
          • Abort (Async)
        • Search
          • Transaction Search — Online
          • Transaction Search — Local
      • Print
        • Create Print Job
        • Get Print Job Status
        • Print Job Webhook (inbound — implemented by your POS)
      • Diagnostics
        • Connection test
        • Terminal info
  • API Raw Card Present Payments
    • Notas de versión
    • Catálogo de errores
    • El objeto Amount
    • Proceso de intercambio de llaves
    • Datos de prueba
    • One-time Payments
      • Pago único
    • Two-step Payments
      • Autorización y captura
    • Card Information
      • Consultar información de BIN
      • Información de BIN V2
      • Solicitar opciones de diferido
    • Voids & Refunds
      • Anular y reversar
      • Reembolsar una transacción
    • Query Transactions
      • Búsqueda de transacciones
    • Webhooks
      • Introducción
      • Buenas prácticas
      • Webhooks-Pagos con tarjeta
      • Webhooks-Reembolsos
      • Revisa tus webhooks
    • Chargebacks
      • Consultar chargebacks
      • Solicitar exportación de chargebacks
    • Fraud Report
      • Consultar alertas de fraude
  • Appian - Submerchant Register
    • Release Notes
    • Submerchant Validation in Batch
    • Query submerchant status by requestId/submerchantId
    • Get submerchantIds
    • Get credentials for submerchants
  • Schemas
    • RequestBodies
      • one-and-two-step-payment
    • Card
    • Channel
    • ChargebackListResponse
    • TransactionResponse
    • PrintJobRequest
    • card
    • one-and-two-step-payment-3
    • Card Present (CP)
    • one-and-two-step-payment-3
    • SubscriptionTransactionsResponse
    • Amount-cash-in
    • SettlementDateRangeRequest
    • amount
    • FraudAlertRequest
    • SubscriptionTransaction
    • ChargebackItem
    • SettlementRecord
    • RawResponse
    • CommandText
    • Card Not Present (CNP)
    • networkToken
    • FraudAlertResponse
    • ErrorResponse400
    • CardData
    • CommandColumns
    • extra_taxes
    • FraudAlertRecord
    • ErrorResponse
    • currency
    • Deferred
    • webhooksItem
    • SettlementResponse
    • ErrorResponse401
    • LinkFailure
    • ColumnItem
    • Amount
    • ValidationError
    • pos_details
    • ErrorResponse403
    • CommandDivider
    • enc_tlv
    • TransactionEvent
    • extraTaxes
    • card_details
    • Country
    • payment_method
    • ErrorResponse500
    • CommandFeed
    • TransactionStatus
    • deferred
    • CommandSpace
    • ReadingType
    • contact_details
    • ContactDetails
    • CommandCut
    • sub_merchant
    • FailureReason
    • CommandImage
    • metadata
    • EventTerminal
    • documentType
    • Subscription
    • orderDetails
    • Language
    • TransactionSearchRequest
    • CommandQR
    • EventOperation
    • Shipping Address
    • payment_submethod
    • CommandBarcode
    • EventAmount
    • Billing-Address
    • EventExtraTaxes
    • PrintJobAccepted
    • PrinterError
    • EventMetadata
    • SubscriptionUpdate
    • AmountWithTaxes
    • PrintJobStatus
    • PrintJobStatusRequest
    • threeDomainSecure
    • SubscriptionAdjustmentRequest
    • AmountCore
    • product
    • webhooks
    • headers
    • ExtraTaxes
    • PrintWebhookPayload
    • Metadata
    • webhooksChargeback
    • AmountWithTip
    • citMit
    • TransactionSearchBody
    • TransactionSearchOnlineBody
    • network
    • binInfo
    • AmountWithOptionalTip
    • TransactionSearchLocalBody
    • TransactionEvent_2
    • messageFields
    • UnexpectedErrorResponse
    • FailureReason_2
    • transactionType
    • ExternalReferenceId
    • EventTerminal_2
    • ExternalSubscriptionId
    • EventOperation_2
    • EventAmount_2
    • EventExtraTaxes_2
    • EventMetadata_2
    • SettlementTicketRequest
    • ErrorResponse
    • TransactionEvent_23
    • TransactionStatus4
    • ReadingType5
    • FailureReason_26
    • EventTerminal_27
    • EventOperation_28
    • EventAmount_29
    • EventMetadata_210
    • EventExtraTaxes_211
    • PrintWebhookPayload12
    • TransactionEvent13
    • FailureReason14
    • EventTerminal15
    • EventOperation16
    • EventAmount17
    • EventMetadata18
    • EventExtraTaxes19
HomePerú 🇵🇪México 🇲🇽Ecuador 🇪🇨Colombia 🇨🇴
Chile 🇨🇱
HomePerú 🇵🇪México 🇲🇽Ecuador 🇪🇨Colombia 🇨🇴
Chile 🇨🇱
Status
Soporte / Support
Español
  • English
  • Español
  1. Online Payments

Smartlinks

Smartlinks te permite generar una URL de pago compartible que abre un formulario de checkout alojado por Kushki. Comparte el link por correo, WhatsApp o cualquier canal: tu cliente lo abre, llena el formulario y paga. No necesitas integración de frontend.
Ten en cuenta
Por nuestras políticas de riesgo, los métodos de pago disponibles y el tipo de integración pueden variar una vez que completes la afiliación. Te indicaremos cómo proceder si este proceso aplica a tu comercio.

Conceptos clave#

Tipos de configuración de pago#

TipoDescripción
fixedEl monto lo defines tú; el cliente no lo puede cambiar.
openEl cliente ingresa el monto dentro de un rango definido (minAmount / maxAmount).

Tipos de pago (dentro de fixed)#

ValorDescripción
uniquePago único
subscriptionCargo recurrente: el cliente queda inscrito en una suscripción
mixedCargo único + inscripción a una suscripción en un mismo flujo

Estructura del formulario#

ValorDescripción
checkoutDiseño de checkout en línea estándar
coverDiseño de portada a página completa con imagen principal y botón de llamada a la acción

Métodos de pago en Colombia#

ValorMétodo
credit-cardTarjeta de crédito y débito
cashEfectivo en puntos de pago (Baloto, Efecty, Bancolombia, etc.)
transferTransferencia bancaria PSE
subscriptionUsa este valor cuando paymentType sea subscription

Crear un Smartlink#

Llama a Create a Smartlink desde tu backend con tu publicMerchantId y los objetos de configuración. La respuesta devuelve un smartLinkUrl listo para compartir.

Objetos requeridos#

ObjetoDescripción
publicMerchantIdTu Public Merchant ID
merchantNameNombre que aparece en el slug de la URL del smartlink
paymentConfigMonto, tipo de pago y métodos aceptados; ver abajo
generalConfigInformación del producto, vencimiento, límites de uso y textos de la interfaz
styleAndStructureEstructura del diseño y colores de marca
contactCorreo y teléfono de soporte que se muestran en la página de checkout

paymentConfig — monto predefinido#

{
  "paymentConfigType": "fixed",
  "paymentConfig": {
    "paymentType": "unique",
    "amount": {
      "subtotalIva": 0,
      "subtotalIva0": 50000,
      "iva": 0,
      "currency": "COP"
    },
    "paymentMethod": ["credit-card", "cash", "transfer"]
  }
}

paymentConfig — monto abierto#

{
  "paymentConfigType": "open",
  "paymentConfig": {
    "paymentType": "unique",
    "paymentMethod": ["credit-card", "transfer"],
    "currency": "COP",
    "minAmount": 10000,
    "maxAmount": 500000,
    "defaultAmount": 50000,
    "taxEnabled": false
  }
}

Campos de generalConfig#

CampoDescripción
productNameNombre del producto o servicio que se muestra en el formulario
descriptionDescripción en formato HTML
productImageURL de la imagen del producto
brandLogoURL del logo de tu marca
executionLimitNúmero máximo de veces que se puede usar el link. 0 = sin límite.
expirationDateTimestamp UTC (Epoch): el link vence después de esta fecha
enabledIndica si el link está activo
termsAndConditionsURL de tu página de términos y condiciones
showTimerMuestra un contador de tiempo en el formulario
buyButtonTextTexto del botón CTA (requerido si structure es cover)
payButtonTextTexto personalizado del botón de pago
hidePayButtonAmountOculta el monto en el botón de pago

Campos de styleAndStructure#

CampoDescripción
structure"checkout" o "cover"
primaryColorColor primario de la marca en hexadecimal (por ejemplo, "#E83D42")
secondaryColorColor secundario de la marca en hexadecimal
coverModelVariante del diseño de portada (requerido si structure es cover)
buttonStyleEstilo del botón (requerido si structure es cover)

Campos personalizados del formulario (formConfig)#

Puedes agregar campos personalizados a tu formulario de Smartlink con el arreglo formConfig. Se admiten seis tipos de campo:
TipoDescripción
inputCampo de texto libre (nombre, correo, número de referencia, etc.)
selectLista desplegable con opciones
dateCalendario para elegir una fecha
checkboxSelector verdadero/falso (por ejemplo, aceptación de términos)
fileCampo para subir un archivo
disclaimerBloque de texto de solo lectura (sin entrada del cliente)
Cada elemento de formConfig incluye label, type, name, placeholder, required y disabled. En los campos input, envía validateEmail: true para exigir la validación de formato de correo.

Smartlinks de suscripción#

Cuando paymentType es subscription, incluye un objeto subscriptionOptions:
{
  "paymentConfig": {
    "paymentType": "subscription",
    "paymentMethod": ["subscription"],
    "amount": {
      "subtotalIva0": 50000,
      "subtotalIva": 0,
      "iva": 0,
      "currency": "COP"
    },
    "subscriptionOptions": {
      "periodicity": "monthly",
      "planName": "Plan mensual",
      "startDate": "2025-06-01",
      "terms": "https://micomercio.com/terminos"
    }
  }
}
Para el tipo mixed (cargo único + inscripción a una suscripción), incluye también mixedOptions con numberOfFees, periodicity y subscriptionDay.

Gestionar Smartlinks#

OperaciónCuándo usarla
GetObtén la configuración completa del Smartlink por smartlinkId
UpdateModifica un Smartlink existente: monto, métodos, textos, estilo
DeleteDesactiva un Smartlink de forma permanente. Una vez eliminado, la URL deja de funcionar.

Autenticación#


Usar la API#

🟢 Producción
🧪 Sandbox (UAT)
https://api.kushkipagos.com/

Endpoints disponibles#

Crear un Smartlink
Genera una URL de pago alojada con la configuración de tu producto, monto y marca.
Consultar un Smartlink
Obtiene la configuración completa de un Smartlink existente por su ID.
Actualizar un Smartlink
Modifica un Smartlink existente: monto, métodos de pago, textos o estilos.
Eliminar un Smartlink
Desactiva un Smartlink de forma permanente. La URL deja de funcionar de inmediato.

¿Tienes alguna sugerencia sobre esta documentación? Contact us.
Modified at 2026-09-11 14:48:44
Previous
Eliminar una transacción de Cash Out
Next
Crear un Smartlink
Built with