Earn upgrade: What You Need to Know

We're rolling out updated Earn subaccounts to ensure continued support for the Recharge feature. Here's everything you need to know about this change.

December 10, 2025

Why is this happening?

CoW Swap, the protocol that powers our Recharge functionality, is updating their smart contracts. To maintain seamless Recharge support, we need to migrate your Earn subaccounts to updated versions that are compatible with this change. This is a simple one-line contract update, not a rewrite of our Earn system. Your funds continue to be secured by the same audited smart contracts. There are no functional changes to your Earn subaccounts. Everything will work exactly as before.

Do I need to take action?

If you use Recharge, you'll be prompted to approve the upgrade. If you don't use Recharge, no action is required

What happens during the upgrade?

  • New Earn subaccounts are deployed for you (one for each asset type you use, up to four)
  • Your assets are withdrawn from the old subaccounts and deposited into the new ones
  • Your Recharge settings are configured on the new subaccounts

No trades, swaps, buys, or sells will occur. This is simply moving your assets from subaccounts you control to new subaccounts you control.

What if I prefer to handle this myself?

You're always in control. If you'd prefer not to have Zeal perform the upgrade, simply click outside the dialogue box to dismiss it. You can then withdraw your assets manually and manage them as you see fit. For more information on accessing your Earn subaccounts independently, see Accessing Your Earn Account Without Zeal with URLs to audit and to our other earn article.

Contract Reference

For transparency, here are the smart contract addresses for both the old and new Earn infrastructure:

Contract Old (v1) New (v2)
Account Factory 0x426981eC47Ca15c15C800430754B459b62C14410 0x0EDF53b88AA6F1755c645f7250D10ADD4bfAdE4D
Account Implementation 0x3671e36792d830fb77d5f66d1eda61a11a971101 0xC68081cD17E6Db70BbB9dCDcbeF95f1A4FFaA97c
Coordinator Factory 0xBa24b9d61283df4D61bF1BD9c88f78a57e354cbA 0xA82C25F8714297AEB3a3D6D82B09290043f61587
Coordinator Implementation 0x1a2dee43601372abb499046ab531cae3f187fb6d 0x82695D7905417CEa642C3b8ce96997ED08Ffb8FA