Anna

Anna

Non-crypto people can now deploy and manage their community currency by paying a fiat fee. Their tx fees are paid for using AA paymasters.

The problem Anna solves

Problem

I am part of a dance community, which strives to be nonprofit. This imposes challenges of its own, one of which is participation (in organizing events). People simply participate more if they're paid, but the community is supposed to be nonprofit. The solution of course is to use the fact that you can create your own currency, and pay volunteers in that.

Every time I wanted to setup a ERC20 for a non-crypto community, the same 2 problems came up:

  1. Every member of the community needs a crypto wallet to make txs from and hold base token
  2. transfer tokens between members should be as easy as a QR scan
  3. The members cant be expected to care enough about crypto to do anything other than scan a QR code/install an app

Solution Architecture

Once fiat payment is confirmed, an ERC20Factory creates ERC20s for the organization, and a SimpleAccount (smart contract wallet) is created for the first member of the organization (typically the owner). All members of the organization will share the same paymaster, which is topped up by the fiat payment.

Account Abstraction enables this with transaction sponsoring. Otherwise, each community member's smartphone would need to hold an EOA, which needs to be topped up with some ETH... simply unrealistic. In this case, it's better to have a pool of ETH (paymaster) that sponsors txs for members. 1 pool per organization is maintained by Project Anna on behalf of each nonprofit organization.

Challenges we ran into

Andrew: Unfamiliar with frontend, erroneous understanding of Account Abstraction, how to connect to Metamask, how to get things done in Vue.js. Solution? GPT4 really helped, otherwise a lot less would be working.

Lajos:

Taiko: bridge failed zkSync: any contract deployment fails Optimism: ERC20factory: 0x58A77ef8Fdb36a891825aa04464beD1511832bE7 Account factory: 0xbb23a54dde3054b8A458E17781393F30ad228e6C USDC TEST: 0xc161E595A6eBA9BAAF023e5923E5A64f86613A78 Paymaster: 0x0dF0a59947E598D08e71a59f287B40e51a108D4D BASE: ERC20factory: 0xBFC2610542C7bcC56eBF526eD95b271a1015F1D1 Account factory: 0x9AD840B246e09a5d093842a625D3Ec5991b73282 USDC Test: 0xBFC2610542C7bcC56eBF526eD95b271a1015F1D1 Paymaster: 0xA13688C788AdCa35348F9bFF89Cf882A217D56f0 Scroll: ERC20Factory:0xB72B0771274Ca9a723816Baa775d7AA92d9533A9 Account Factory: 0xF9D60376eC00d6737E94E52D2F3fd4144e3693e2 USDC Test: 0x3f8611037D3e9c2D69c60ed23E139cC9276A1908 Paymaster: 0xBCf247bEaD35b7D18170e3e8CA5ca55e81B26656 Gnosis: ERC20Factory: 0x9BAD40cD7c4d8Fb9b66778B1eAc02B14552E8b41 Account Factory: 0x58A77ef8Fdb36a891825aa04464beD1511832bE7 USDC Test: 0xF948475b5d1AFd445aDF6532430Ba568153F5Db5 Paymaster: 0xbb23a54dde3054b8A458E17781393F30ad228e6C

Tracks Applied (2)

Community, Activism & Accessibility

Community currencies are still a fringe idea, and the people who need it the most haven't thought of it. Even if they ha...Read More

Social Impact

Nonprofit activities generally suffer from low contribution (the free rider problem) even though everybody loves what it...Read More

Discussion