Initialize the SDK
SetbuilderCode to your partner identifier — this enables attribution and fee sharing on every transaction the SDK builds. Builder codes must be requested from Gauntlet — using an unregistered string will append bytes to calldata but volume will not be counted.
Build the Deposit
VaultId.AeraUsdAlpha is a typed constant from the SDK — its value is 'gtusda', the vault’s identifier in the manifest. You can also discover vault IDs at runtime using getVaults.
0x000000000001CdB57E58Fa75Fe420a0f4D6640D5 and provisioner 0x18CF8d963E1a727F9bbF3AEffa0Bd04FB4dBdA07, checks USDC allowance on-chain, and builds the deposit with attribution baked into calldata.
Submit the Transactions
Each step exposes two surfaces. Pick the one that fits your stack — both carry attribution.step.payload — scripts and embedded wallets
payload.data is the fully formed calldata with attribution already concatenated. Use estimateGas before sending — it simulates the exact bytes that will hit the chain (catching reverts before you spend gas) and returns the gas units needed. Wait for each receipt before the next step, since the deposit reverts if the approval hasn’t landed yet.
step.tx — browser wallets (wagmi)
Use the structured ABI fields with writeContract. Pass step.tx.attribution as dataSuffix — wagmi appends it to the calldata before sending. Without it the transaction goes through but volume is not attributed.
Confirm the Deposit
Withdraw from gtUSDa
Same pattern — build steps, then submit using whichever path matches your stack.What’s Next
Show User's Return
Show the user’s gtUSDa position, ROI, and activity history.
Track Your Attribution
Inspect deposit volume and attribution data for your integration.
Attribution
How ERC-8021 builder codes work and how to verify attribution is tracked.
SDK Reference
Full constructor, data methods, transaction methods, and error reference.