In the traditional banking world (TradFi), "custody" is simple: you give your money to a bank, and they control it. Because they hold the keys, authorizing a card swipe is instantaneous and risk free.
Self-custody on the blockchain, however, leaves the user in full control of their funds. It is therefore much more challenging to operate a card product against such a backdrop: a spend on the card needs to be approved within 3 seconds or less, usually too fast for a blockchain transaction to finalize. Without a clever solution, a user could double-spend: authorize a card purchase whilst moving their funds elsewhere, meaning the merchant can’t collect.
Existing solutions on the market
Most crypto card operators resort to one of three friction-heavy solutions:
- Prefunded: The user deposits card funds into a separate wallet. Many self proclaimed “debit” cards actually require this top-up deposit, and therefore behave like prepaid ones.
- Note: Kulipa also offers prefunded, as it is easy, safe and quick to integrate for clients starting out with cards.
- Time delay: Through a smart contract account, any user action is delayed by a few minutes, whereas the card operator can withdraw funds instantly, preventing double spend.
- Collateral Management: other issuers offload risk and technical debt onto the wallet provider by requiring them to handle all card scheme events, post a large, capital-inefficient collateral pool of their own funds to back user swipes , and then assume the "recovery risk" of collecting those funds back from the user’s self-custodial wallet.Essentially this forces the wallet provider to act as a de-facto bank building and maintaining complex, risky logic.

Kulipa provides superior UX and integration
Kulipa eliminates the need for collateral and pre-funding, using two proprietary integration methods that keep the user in control while maintaining "fiat-speed" authorizations.
Just-In-Time Approval (JIT)
The most natural approach to running a debit card would be to try and collect funds at the time of authorization. This is a straightforward approach: request funds when a card authorization request is made. If the transaction finalizes within the authorization time window, approve the card authorization, otherwise decline.

This approach is very simple, and can work with any wallet type: EOA, account abstraction, MPC, etc.
It requires a fast chain (such as Avalanche) with block times well below 1s. Even with such chains, network congestion, gas pricing policy, and other factors, could contribute to some transactions failing, so some care has to be taken to ensure consistent landing of transactions on chain.
Cooperative Approval
For the ultimate balance of security and efficiency, Kulipa acts as a limited-power co-signer. The user invites Kulipa to their wallet and grants it specific, narrow permissions:
- Can collect (up to a certain amount) in the settlement token (e.g. USDC).
- mandatory co-signer for any transactions performed in the settlement token (e.g. any USDC transfers out or allowance setups).
- mandatory co-signer on any change of signers - except if the user wants to remove Kulipa itself as a co-signer.
- If the user wants to remove Kulipa as a co-signer, there is a time delay for that action, which allows Kulipa to settle the accounts before being evicted as a co-signer.

This type of setup can be achieved in certain account abstraction wallets (such as SAFE), MPC signing schemes, TEE signing schemes, and generally whenever there is a co-signer / policy signer environment.
With this setup, some additional advantages can be achieved:
- Enhanced privacy: Card activity is not reflected 1:1 on-chain. There is only one settlement happening per day, rather than a collection every time the card is being used.
- Gas efficiency: A single transaction per wallet, per day, vs tens or hundreds of back-and-forth transactions, leads to much better gas efficiency.
- High reliability: Since the settlement is not bound to any time frame, the reliability of card payments being approved is maximal.
This setup retains self custody because the user is in control: The user is the one to invite Kulipa to the wallet, grant it certain powers, and can at any time remove Kulipa (under the exit conditions agreed upon at time of invitation).
Summary: Kulipa offerings



.png)
.png)



















.png)



.avif)






.avif)




.avif)


.avif)
.avif)
.avif)
.avif)
.avif)
.avif)
.avif)
.avif)
.avif)
.avif)
.avif)


.avif)
.avif)
.avif)

.avif)

.avif)
.avif)


.avif)
.avif)
.avif)
