πŸ“œWhitepaper

A Trustless Card Payments Protocol

Abstract

An ever growing variety of solutions and services based on blockchain and cryptocurrencies is available for crypto-natives, however the process of exchanging digital assets for fiat currencies, also known as off-ramping, remains a significant pain point for most users due to the complexity of multi-step fund transfers, a lack of transparency and security regarding transactions, and redundant fees. While some players in the market are aiming to solve these problems at the expense of others, we have not yet seen a holistic approach. We aim to address these issues by providing blockchain wallet providers with a protocol and a hybrid Software Development Kit (SDK) that facilitates instant, transparent, and fully-compliant card payments backed by non-custodial wallets.

Introduction

Historically, centralised exchanges (CEXes) have provided acceptable user experiences across their product range due to the custodial nature of their offerings: most crypto-related transactions within their ecosystems remain unreflected on actual blockchain networks, existing only on internal ledgers. While many users find this acceptable, security concerns and CEX reliability issues have driven many users towards crypto-native fields dominated by on-chain products, most notably Decentralised Finance (DeFi) protocols.

At the time of writing, DeFi on-chain products have mostly reached feature parity with products built by CEXes [1], and the associated fees are comparable. However, a significant gap remains in the form of reintroducing the value back into traditional fiat markets, or crypto off-ramping.

Problem statement

Crypto-native users of non-custodial wallets struggle to off-ramp their assets easily, securely, and efficiently. Key issues include:

  • Complexity: The process is multi-layered and involves numerous transactions across various applications and websites.

  • Third-party custody risk: Users are required to transfer their funds into a custodial wallet to off-ramp crypto assets, at which point they lose visibility of their transactions.

  • High cost: Off-ramping solutions levy high processing fees on transactions, partially to cover their potential losses due to fraud or compliance issues. At the same time, transactions are processed on expensive networks with little optimisation.

While attempts have been made to address these issues with native on-chain products, achieving this involves complexities:

  • Blockchain networks are designed to prevent external parties from initiating transactions from a user’s wallet without prior approval. The near-instant nature of card transactions doesn’t allow for real-time consent retrieval.

  • Blockchain transactions are atomic and final, which doesn’t align with traditional financial market transactions. Card authorisations can be revoked, adjusted, or may take significant time to settle.

  • Financial transactions necessitate extensive monitoring, including Know-Your-Customer (KYC) procedures, active compliance checks, and security certifications for user data handling.

Solution and architecture

We offer a comprehensive hybrid SDK, comprised of both on- and off-chain APIs. This SDK allows wallet application developers to provide users with a secure method to order payment cards and make payments backed by their crypto-assets stored in multi-chain wallets.

Our solution maintains the highest standards of blockchain network security while ensuring full transparency and compliance with financial regulations. This is achieved with the help of the following tools and concepts:

  1. Account Abstraction (AA): Recent developments, most notably a proposal known as ERC-4337 [2], have paved the way for developers to provide a much simpler UX around transaction initiation and fund transfers. We clearly and transparently request users’ conditional consent to initiate payments on their behalf, placing smart contracts in charge of the process. At the same time, associated transaction fees can be bundled and relayed to designated paymasters improving cost efficiency and UX.

  2. Escrow Smart Contracts [3]: Once a payment authorisation has been approved and negotiated between a merchant and a card issuer, the user’s funds are temporarily locked in a contract until the underlying transaction is settled, revoked, or times out. This ensures full interoperability between the atomic nature of on-chain transactions and multi-state payments off-chain.

  3. Real-time Transaction Monitoring: Our systems are constantly monitoring transactions related to users’ accounts validating them against fraud and compliance checks provided by our proprietary stack and trusted third-party solutions. Any suspicious on-chain activity is automatically detected and user’s access to our services can be restricted in order to ensure compliance with regulatory regimes.

  4. Off- and Cross-Chain Oracles [4] and APIs: An ensemble of oracle contracts ensures a consistent flow of funds between blockchain and payment networks maintaining transparency and interoperability. The complexity of intra-network communication is abstracted away, so developers can focus on what they do best: building products.

Card Onboarding

In this flow (Figure 1), the user interacts with our infrastructure via an application SDK integrated into the wallet application. During onboarding, we request KYC and other compliance-related information required by our partners to open a new card account for the user. Upon successful completion, we ask the user to set up optional account preferences such as spending limits and token order. The fully configured card account is deployed by the user to the blockchain network as an ERC-4337 [2] compatible smart contract. Finally, we finalise the card issuance process and mint a new NFT representing the card to the user’s wallet for later recognition by our systems.

Card Payment

After the card account setup, the user can start making card payments (Figure 2). When our systems receive a payment authorisation request from the payment network (Visa, MasterCard, etc.), we validate whether the user has a sufficient spend- able balance. If they do, we approve the request and simultaneously initiate an on-chain transaction, transferring the required amount of eligible tokens into a escrow contract.

Periodically, we receive status updates from the payment network about initiated transactions. To ensure full transparency, we defer the verification stage and token release procedures to the escrow smart contract [3] utilising oracles [4]. Once the contract confirms that the transaction is completed, tokens are released and transferred to the settlement wallet for further off-ramp and settlement with the merchant bank. In the case of a transaction reversal or timeout, the user’s funds are released and transferred back to their wallet.

Key benefits

By utilising the latest developments in blockchain networks and pairing them with fintech solutions provided by our proprietary stack and trusted partners, we offer the best of both worlds: a familiar neobank-style user experience around traditional banking products with the security and transparency of blockchain technologies.

Our hybrid SDK provides a simple integration process for application developers, allowing them to issue card products and offer payment initiation services to their customers in no time and benefit from secure, trustless access to major payment networks globally.

While account abstraction allows us to manage user on-chain funds effectively with their prior consent, the user remains in full control of their assets as they can modify or even revoke their consent at any time. Meanwhile, our staging contract model offers the highest level of transparency on asset transactions until we settle a completed transaction.

Despite the requirement for multiple token transfers before funds are settled, utilising account abstraction allows us to optimise cost by bundling multiple transactions and performing all operations automatically and transparently for the user.

Product roadmap

Conclusion

Our trustless payment solution is a necessary step towards the mass adoption of web3 products. By creating a bridge between the worlds of blockchain and traditional fiat payment networks, we enable users to enjoy the benefits of decentralised products on-chain, while still maintaining fully compliant and verified pathways to integrate their assets back into traditional markets. The immediacy and security of these transactions significantly enhance the user experience.

Although launching a standalone retail solution for crypto-backed card payments is a viable strategy, we believe a customisable, packaged hybrid SDK will facilitate greater user reach and adoption. By simplifying integration for wallet providers and web3 developers, we can ensure our solution is easily accessible to a large pool of potential users, which, in turn, benefits the industry as a whole.

References

  1. Andrea Barbon and Angelo Ranaldo. On the quality of cryptocurrency markets: Centralized versus decentralized exchanges. https://ssrn.com/abstract=3984897, 7 2023.

  2. Vitalik Buterin et al. Erc-4337: Account abstraction using alt mempool. https://eips.ethereum.org/EIPS/eip-4337, 9 2021.

  3. Steven Goldfeder, Joseph Bonneau, Rosario Gennaro, and Arvind Narayanan. Escrow Protocols for Cryptocurrencies: How to Buy Physical Goods Using Bitcoin, pages 321–339. 1 2017.

  4. Abdeljalil Beniiche. A study of blockchain oracles. ArXiv, abs/2004.07140, 2020.

Last updated