Skip to main content

Account

A smart-contract wallet on the zkSync 2.0 network

  • Works wherever a regular Ethereum wallet does thanks to account abstraction
  • Has a unique Ethereum address (0x...)
  • Can receive and send funds
  • Can call other smart-contracts
  • Completely self-custodial

Quorums​

An account is comprised of one or more quorums - a select group that is required to approve a proposal.

Each quorum is authorized to perform a set of operations.

Activating​

As all accounts are smart-contracts, they require to be activated (deployed) before they can be used.
Accounts will be actived when they reach a minimum balance of $5 of one of the following tokens: ETH, USDC, or DAI.

TESTNET

Accounts are activated on creation

Deleting​

Smart-contracts on zkSync are immutable, so it is not possible to delete an account.
However, it is possible to withdraw all funds from an account and remove all quorums to make it unusable.


Schema​

No description

type Account {
id: ID!
impl: String!
deploySalt: String!
name: String!
isActive: Boolean!
quorums: [Quorum!]
quorumStates: [QuorumState!]
proposals: [Proposal!]
comments: [Comment!]
reactions: [Reaction!]
_count: AccountCount!
}

Fields​

Account.id ● ID! non-null scalar​

Account.impl ● String! non-null scalar​

Account.deploySalt ● String! non-null scalar​

Account.name ● String! non-null scalar​

Account.isActive ● Boolean! non-null scalar​

Account.quorums ● [Quorum!] list object​

Account.quorumStates ● [QuorumState!] list object​

Account.proposals ● [Proposal!] list object​

Account.comments ● [Comment!] list object​

Account.reactions ● [Reaction!] list object​

Account._count ● AccountCount! non-null object​

Returned by​

account query ● account subscription ● accounts query ● createAccount mutation ● updateAccountMetadata mutation

Member of​

Comment object ● Proposal object ● Quorum object ● QuorumState object ● Reaction object