Contract Accounts

Some Beanstalk holders were contract accounts rather than externally owned accounts (EOAs). Because contract accounts do not automatically exist at the same address across different chains, assets belonging to eligible contract accounts are held in the Contract Payback Distributor on Base until they are claimed.

The Contract Payback Distributor holds all three asset types on behalf of eligible contract accounts: Beanstalk Silo Tokens, Beanstalk Fertilizer, and Beanstalk Pods. Only accounts that were initialized in the Contract Payback Distributor during deployment are eligible to claim.

Claiming Methods

There are three ways for a contract account to claim its assets:

Direct Claim

If the contract account exists at the same address on Base, it can call the Contract Payback Distributor directly to claim all assets to a specified receiver address.

Cross-Chain Message

Contract accounts on Ethereum L1 can send a cross-chain message via the L1 Contract Messenger to designate a receiver address on Base. The L1 Contract Messenger verifies that the caller is authorized and forwards the designation to the Contract Payback Distributor on Base via the Base Superchain bridgearrow-up-right. Once the receiver is set, the designated address can call the Contract Payback Distributor to claim the original account's assets.

Safe multisig wallets with version 1.3.0 or later support cross-chain replay and are compatible with this method. Farmers with earlier Safe versions should explore the Direct Claim method by redeploying their Safe at the same address on Base.

EIP-7702 Delegation

Accounts that support EIP-7702arrow-up-right code delegation can use it to make their EOA behave as a contract account, allowing them to call the Contract Payback Distributor's Direct Claim function. No special EIP-7702 handling is required in the contract; the delegation simply allows the account to execute the claim transaction.

What Gets Transferred

When a contract account claims its assets, the Contract Payback Distributor transfers:

  • Beanstalk Silo Tokens (ERC-20) to the receiver's wallet or Farm Balancearrow-up-right;

  • Beanstalk Fertilizer (ERC-1155) to the receiver's wallet; and

  • Beanstalk Pods in the repayment Field to the receiver's account.

Each account can only claim once. After claiming, the account is marked as completed and cannot claim again.

Contracts

Contract
Type
Address

Contract Payback Distributor (Base)

Proxy

Contract Payback Distributor (Base)

Implementation

Last updated