Problem Statement

A recent study by Forbes valued the expense splitting market size at half a billion dollars with 47% of users relying on the apps to manage finances and expenses in new ways than before, however these apps have many problems:

  • Most expense splitting apps have limited functionality and just display symbolic numbers that provide no way to settle the expense or manage upfront payments.
  • Many often require users to settle debts outside the app, such as through bank transfers or cash payments. This creates an extra step and can be inconvenient.
  • Settling expenses is not immediate and relies on manual transfers leading to delays.
  • Traditional apps usually support fiat currencies, which restricts cross-border settlements due to currency conversion rates and fees.
  • Trusting someone to pay back their share can be an issue, especially without a governed/enforced way to handle credit delegation.

Solution

To overcome this we developed ShareBit - a dApp that addresses the shortcomings in current expense splitting apps using ALEX and sBTC to enable in-app settlements of payments using credit delegation, token swapping and cross-network transactions.

Workflow

  • A user logs in using their Xverse or Metamask wallet.
  • The home screen shows their expense groups and details.
  • The liquidity facilitator uses the ALEX labs SDK to expose the liquidity pool to allow STX to be supplied as collateral to swap xBTC.
  • In the dashboard the user can see how much can be borrowed and the interests the protocol is offering for different collateral.
  • Expense groups can be created with friends and the group leader has the option to fund the expense with their liquidity or using a credit delegation settlement.
  • The depositor would provide liquidity by depositing their assets (like STX) into the protocol and then delegate their credit lines to the other members of the group to split the expense.
  • The depositor can set a pay by deadline and the token they want the funds to be received in. Each group is a credit delegation vault for the groups expense management.
  • The user can pay using the custom payment protocol that allowing for a combination of transactions where the user can supply STX as collateral, borrow xBTC and switch and transfer the borrowed xBTC into STX. Here the user maintains 100% of their exposure to STX while still utilising the xBTC token for payments.
  • All transactions are signed using a signer key generated by Face ID and a notification is sent to the sender and receiver upon the transaction.
  • The Activity Tab shows history of your friends, which is data pulled from event logs of contracts, swaps and transactions.

Technical Architecture

(For a detailed documentation see our GitHub here)

Main Contributions

  • SwiftUI iOS Frontend
  • Xverse and Metamask SDK
  • Signer-key generated by Face ID
  • Alex SDK for token swaps and liquidity pool management
  • Typescript WebServer with REST API
  • Clarity Credit Delegation Vault Contract
  • Clarity Payment Contract
  • MineBlock Typescript security tests

Impact

As the only expense splitting app that lets users borrow and delegate credit to others and not force them to liquidate assets up front by using the xBTC token and credit delegation, ShareBit will stimulate the liquidity of xBTC, promote transactions involving xBTC and incentivises holding xBTC and/or sustaining liquidity positions.

ShareBit Roadmap

  • With the introduction of faster block times in the Nakamoto release we plan to redesign the onboarding process allowing for sign-up using account abstraction to allow for automated workflows. This will allow us to integrate workflow systems at faster speeds using account abstraction for the automation of triggers and conditional actions, such as scheduled payments, stream payments, automated adjustment for currency fluctuations and many more.
  • With the addition of sBTC we can enable users to settle expenses directly within the app using Bitcoin unlocking a larger TVL and facilitating a greater number of cross-border settlements.

Team

Jeevan Jutla (Backend Developer): Jeevan is a security engineer with a background in smart contract and protocol auditing developed through his work at Binance and R3. With a BEng in Electronic Engineering from King's College London, Jeevan has worked in cybersecurity for 4 years across many government intelligence services and spends his time researching automated techniques to secure the web3 ecosystem.

Artemiy Malyshau (Frontend Developer): Artemiy is a scholar and postgraduate at Imperial College London in Applied Computational Science and Engineering. His professional journey spans software engineering and data science, including collaborations with the Bavarian Justice Ministry and Interpol on projects targeting malicious cryptocurrency activities. Artemiy is deeply invested in Reinforcement Learning research, as demonstrated by his fellowship at King’s College London, and nurtures a strong passion for iOS engineering.

Stacks Payment Address: SP17J24MMDVD4YAN5KW3A8GT5PYRJRH1G015KDGGF

Share this project:

Updates