Docs

Reference

Addresses and instructions

The Ferry program, its accounts and what each instruction does.

On this page

Addresses

AccountAddress
Ferry program92EDfudNaS6RqERAh4G5NyK6PAZPyjqjR5P516RD6P4p
Config98iyq8SFJ7PzsgWWSU3omrTpo9pfawF6wddjyF18gC35
USDC pool9YTx5et2HgLTB42APDeGazFXaqRHiV4UiNZ2ma58iMQ1
EURC pool7ec15vdeMsFxU8kBXXMLusJ4o7AQwnW6Qmm2TzwJGrir
Pyth receiverrec2HHDDnjLfj4kE7VyEtFA1HPGQLK33259532cRyHp
JupiterJUP6LkbZbjS1jKKwapdHNy74zcZ3tLUZoi5QNyVTaV4

Every Ferry account is derived from the program's address: Config from the program alone, a pool from the program and its token's mint.

Accounts

AccountSeedsHolds
ConfigconfigParameters, the admin and the protocol treasury
Poolpool, mintOne currency's balance, shares and protocol fees
Vaultvault, poolThe pool's token account
Positionposition, pool, walletA wallet's shares in a pool
Receiptreceipt, wallet, nonceThe record of one send, order, deposit or withdrawal
Bucketbucket, pool A, pool B, fixing timeOne pair's fixing cohort
Escrowescrow, bucket, mintA cohort's escrowed tokens

Instructions

InstructionSigned byWhat it does
sendSenderPays the exact quoted amount through a market route, in one transaction
enqueueSenderMoves a fixing order's input into escrow for the next fixing
cancelSenderReturns an order's escrow before its fixing
settleAnyoneCrosses a fixing cohort at its signed fixing price and pays or refunds every order
expireAnyoneReturns an order's escrow to its sender after the settlement window
depositDepositorAdds a token to its pool and mints shares
withdrawShare ownerBurns shares for the pool's token
collect_protocol_feesAdminMoves protocol fees to the treasury
set_pausedAdminPauses or resumes sends, deposits, fixing orders and settlement; withdrawals, cancellations and returns stay open

Receipt status

ValueMeaning
1Queued for a fixing
2Paid, settled or done
3Returned: cancelled or reclaimed
4Refunded at the fixing
Esc