1. Bienvenida
  • Home Page
  • 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
        • Antifraud
          • Interfaces
            • SecureInitRequest
            • SecureInitResponse
            • SiftScienceObject
          • Methods
            • requestInitAntiFraud
            • requestSecureInit
            • requestValidate3DS
        • Card
          • CarApplePay interface
            • ICardApplePay Interface
          • Card-Interface
            • ICard Interface
            • ICardSubscriptions Interface
          • Errors
            • Error list
          • Interfaces
            • Amount
            • ApplePayGetTokenOptions Interface
            • ApplePayOptions Interface
            • ApplePayPaymentContact
            • AppleTokenResponse
            • BrandByMerchantResponse Interface
            • CardFieldValues
            • CardInfo
            • CardOptions
            • CardTokenResponse
            • DeferredByBinOptionsResponse
            • DeferredInputValues
            • DeferredValuesResponse
            • DeviceTokenRequest
            • Field
            • FieldInstance
            • Fields
            • FieldValidity
            • FormValidity
            • MasterCardBrandingRequest
            • SecureDeviceTokenOptions
            • Styles
            • TokenResponse
            • VisaBrandingRequest
          • Methods
            • initApplePayButton
            • initCardToken
            • initSecureDeviceToken
            • requestBrandsByMerchant method
            • requestDeviceToken method
            • requestInitCardBrandingAnimation
          • Types
            • CssProperties
            • Currency
            • FieldTypeEnum
        • Card Payouts
          • Card Payouts Interface
            • ICardPayouts
          • Enumerations
            • Enumeration `InputModelEnum`
          • Errors
            • Errors
          • Interfaces
            • CardPayoutOptions
            • CardPayoutSubscriptionTokenResponse
            • CardPayoutUniqueTokenResponse
            • Field
            • Fields
            • FieldValidity
            • Interface FormValidity
            • Interface `Styles`
          • Methods
            • initCardPayoutToken
          • Type Aliases
            • CardPayoutTokenResponse
            • InputTypeEnum
          • Types
            • CssProperties
        • Kushki
          • Methods
            • init function
            • requestBankList function
            • requestCommissionConfiguration function
          • Classes
            • KushkiError
          • Interfaces
            • CommissionConfigurationRequest
            • IKushki
            • KushkiOptions
Bienvenida
Perú 🇵🇪México 🇲🇽Ecuador 🇪🇨Colombia 🇨🇴Chile 🇨🇱
Bienvenida
Perú 🇵🇪México 🇲🇽Ecuador 🇪🇨Colombia 🇨🇴Chile 🇨🇱
  1. Bienvenida

Libraries & SDKs (Online Payments)

Our client-side libraries and SDKs collect your customer's payment details and turn them into a token — a single-use reference you send to your backend to create the charge. Sensitive data never touches your servers.
TIP
Pick one library, get every payment method.
Card, Cash, Transfer, Subscriptions and Payouts are all reachable from the same SDK. You only choose where the payment form lives: your page, our hosted fields, or a plug-and-play checkout.

🔄 How the flow works#

Every Kushki library follows the same three steps, regardless of platform:
StepWhere it runsWhat happens
1. CollectClient (browser / app)The customer enters their payment details into the SDK.
2. TokenizeClient → KushkiThe SDK sends the data to Kushki and returns a token. Your servers never see the card.
3. ChargeYour backend → KushkiYou send the token to your backend, which calls the Kushki API to create the charge.
INFO
A token is single-use and short-lived. Generate a new one for every transaction.

🧭 Which library should I use?#

If you need…UsePlatform
A web payment form you fully style, without handling card dataKushki.js Hosted Fields ✅ recommendedWeb
A checkout you can drop in with almost no codeCajita SDKWeb
To maintain an existing integration built on the previous JS libraryKushki.js (legacy)Web
Native payments inside an Android appAndroid SDKAndroid
Native payments inside an iOS appiOS SDKiOS
Starting a new web integration? Go with Kushki.js Hosted Fields — it is ~9× lighter than Kushki.js, modular, and keeps sensitive card data out of your DOM entirely.

🌐 Web libraries#

⭐ Kushki.js Hosted Fields
📦 Cajita SDK
🕰️ Kushki.js (legacy)

Kushki.js Hosted Fields#

The current generation of our JavaScript library: lighter, modular and safer. The input fields are hosted on Kushki servers and rendered inside your own layout, so you keep full control of the design without ever handling sensitive card data.
Install
Import only the modules you actually use.
Available modules
ModuleWhat it covers
KushkiLibrary initialization, bank list, commission configuration.
CardCard tokens, Apple Pay, device tokens, brand branding animation.
Card PayoutsPayout tokens to a card.
Antifraud3DS validation and Sift Science initialization.
→ Read the Kushki.js Hosted Fields documentation

📱 Mobile SDKs#

🤖 Android
🍏 iOS

Android SDK#

Collect payments natively in your Android application, with built-in 3DS and Sift Science support and Visa / Mastercard sensory branding animations.
Install
Covers — card tokens (with 3DS), bin info, card async (Chile), Transfer In, Cash In, card subscriptions, async subscriptions (Chile) and Cash Out (Colombia).
→ Read the Android SDK documentation

⚖️ Kushki.js vs. Kushki.js Hosted Fields#

CharacteristicKushki.jsKushki.js Hosted Fields
Size~2.7 MB~307 KB
ModularityNoYes
Import via CDNYesYes
Import via NPMYesYes
Import via YARNNoYes
Handles sensitive card data in your DOMYesNo
3DS / OTP validationSeparate method callsAutomatic inside requestToken()
Deferred payment optionsrequestDeferred() methodReturned by requestToken()
→ See the full feature-by-feature comparison

🚀 Next steps#

1.
Pick your library from the tables above and follow its installation guide.
2.
Generate a token in your client using the method that matches your payment type.
3.
Send the token to your backend and create the charge with the Kushki API.
4.
Move to production when your tests pass — review the test-to-production checklist.
TIP
Keep an eye on Release notes for new methods, payment methods and country availability.
Got a suggestion on this documentation? Contact Us.
Modified at 2026-08-25 16:07:40
Previous
Home Page
Next
Release notes
Built with