zebec-instant-card-sdk
Version:
An sdk for interacting with zebec instant card program in solana.
1,728 lines • 58.1 kB
JSON
{
"version": "0.1.0",
"name": "zebec_card_contract",
"instructions": [
{
"name": "initCardConfigs",
"accounts": [
{
"name": "zicOwner",
"isMut": true,
"isSigner": true
},
{
"name": "cardPda",
"isMut": true,
"isSigner": false
},
{
"name": "usdcToken",
"isMut": false,
"isSigner": false
},
{
"name": "tokenProgram",
"isMut": false,
"isSigner": false
},
{
"name": "associatedTokenProgram",
"isMut": false,
"isSigner": false
},
{
"name": "systemProgram",
"isMut": false,
"isSigner": false
}
],
"args": [
{
"name": "params",
"type": {
"defined": "InitCardConfigParams"
}
}
]
},
{
"name": "deposit",
"accounts": [
{
"name": "user",
"isMut": true,
"isSigner": true
},
{
"name": "userAta",
"isMut": true,
"isSigner": false
},
{
"name": "tokenMint",
"isMut": false,
"isSigner": false
},
{
"name": "userVault",
"isMut": true,
"isSigner": false
},
{
"name": "userVaultAta",
"isMut": true,
"isSigner": false
},
{
"name": "cardPda",
"isMut": true,
"isSigner": false
},
{
"name": "vaultPda",
"isMut": true,
"isSigner": false
},
{
"name": "revenueVault",
"isMut": true,
"isSigner": false
},
{
"name": "revenueVaultAta",
"isMut": true,
"isSigner": false
},
{
"name": "feeMapPda",
"isMut": true,
"isSigner": false
},
{
"name": "tokenProgram",
"isMut": false,
"isSigner": false
},
{
"name": "associatedTokenProgram",
"isMut": false,
"isSigner": false
},
{
"name": "systemProgram",
"isMut": false,
"isSigner": false
}
],
"args": [
{
"name": "params",
"type": {
"defined": "DepositParams"
}
}
]
},
{
"name": "buyPrepaidDigitalCard",
"accounts": [
{
"name": "user",
"isMut": true,
"isSigner": true
},
{
"name": "usdcToken",
"isMut": false,
"isSigner": false
},
{
"name": "userVault",
"isMut": true,
"isSigner": false
},
{
"name": "userVaultAta",
"isMut": true,
"isSigner": false
},
{
"name": "buyerPda",
"isMut": true,
"isSigner": false
},
{
"name": "cardPda",
"isMut": true,
"isSigner": false
},
{
"name": "cardVault",
"isMut": true,
"isSigner": false
},
{
"name": "cardVaultAta",
"isMut": true,
"isSigner": false
},
{
"name": "revenueVault",
"isMut": true,
"isSigner": false
},
{
"name": "commissionVault",
"isMut": true,
"isSigner": false
},
{
"name": "revenueVaultAta",
"isMut": true,
"isSigner": false
},
{
"name": "commissionVaultAta",
"isMut": true,
"isSigner": false
},
{
"name": "vaultPda",
"isMut": true,
"isSigner": false
},
{
"name": "tokenProgram",
"isMut": false,
"isSigner": false
},
{
"name": "associatedTokenProgram",
"isMut": false,
"isSigner": false
},
{
"name": "systemProgram",
"isMut": false,
"isSigner": false
}
],
"args": [
{
"name": "params",
"type": {
"defined": "BuyPrepaidCardParams"
}
}
]
},
{
"name": "buyCardDirect",
"accounts": [
{
"name": "user",
"isMut": true,
"isSigner": true
},
{
"name": "usdcToken",
"isMut": false,
"isSigner": false
},
{
"name": "userAta",
"isMut": true,
"isSigner": false
},
{
"name": "buyerPda",
"isMut": true,
"isSigner": false
},
{
"name": "cardPda",
"isMut": true,
"isSigner": false
},
{
"name": "cardVault",
"isMut": true,
"isSigner": false
},
{
"name": "cardVaultAta",
"isMut": true,
"isSigner": false
},
{
"name": "revenueVault",
"isMut": true,
"isSigner": false
},
{
"name": "revenueVaultAta",
"isMut": true,
"isSigner": false
},
{
"name": "vaultPda",
"isMut": true,
"isSigner": false
},
{
"name": "feeMapPda",
"isMut": true,
"isSigner": false
},
{
"name": "tokenProgram",
"isMut": false,
"isSigner": false
},
{
"name": "associatedTokenProgram",
"isMut": false,
"isSigner": false
},
{
"name": "systemProgram",
"isMut": false,
"isSigner": false
}
],
"args": [
{
"name": "params",
"type": {
"defined": "BuyCardDirectParams"
}
}
]
},
{
"name": "generateYield",
"accounts": [
{
"name": "user",
"isMut": true,
"isSigner": true
},
{
"name": "userVault",
"isMut": true,
"isSigner": false
},
{
"name": "userVaultAta",
"isMut": true,
"isSigner": false
},
{
"name": "flexlendUserAccount",
"isMut": true,
"isSigner": false
},
{
"name": "flexlendUserAta",
"isMut": true,
"isSigner": false
},
{
"name": "vaultPda",
"isMut": true,
"isSigner": false
},
{
"name": "reserveAdmin",
"isMut": true,
"isSigner": false
},
{
"name": "promotionReserve",
"isMut": true,
"isSigner": false
},
{
"name": "tokenMint",
"isMut": false,
"isSigner": false
},
{
"name": "flexlendProgram",
"isMut": false,
"isSigner": false
},
{
"name": "systemProgram",
"isMut": false,
"isSigner": false
},
{
"name": "tokenProgram",
"isMut": false,
"isSigner": false
},
{
"name": "associatedTokenProgram",
"isMut": false,
"isSigner": false
}
],
"args": [
{
"name": "amount",
"type": "u64"
}
]
},
{
"name": "withdrawYield",
"accounts": [
{
"name": "user",
"isMut": true,
"isSigner": true
},
{
"name": "userVault",
"isMut": true,
"isSigner": false
},
{
"name": "userVaultAta",
"isMut": true,
"isSigner": false
},
{
"name": "flexlendUserAccount",
"isMut": true,
"isSigner": false
},
{
"name": "reserveAdmin",
"isMut": true,
"isSigner": false
},
{
"name": "promotionReserve",
"isMut": true,
"isSigner": false
},
{
"name": "flexlendUserAta",
"isMut": true,
"isSigner": false
},
{
"name": "vaultPda",
"isMut": true,
"isSigner": false
},
{
"name": "tokenMint",
"isMut": false,
"isSigner": false
},
{
"name": "flexlendProgram",
"isMut": false,
"isSigner": false
},
{
"name": "systemProgram",
"isMut": false,
"isSigner": false
},
{
"name": "tokenProgram",
"isMut": false,
"isSigner": false
},
{
"name": "associatedTokenProgram",
"isMut": false,
"isSigner": false
}
],
"args": [
{
"name": "amount",
"type": "u64"
},
{
"name": "withdrawAll",
"type": "bool"
}
]
},
{
"name": "withdraw",
"accounts": [
{
"name": "user",
"isMut": true,
"isSigner": true
},
{
"name": "userAta",
"isMut": true,
"isSigner": false
},
{
"name": "tokenMint",
"isMut": false,
"isSigner": false
},
{
"name": "userVault",
"isMut": true,
"isSigner": false
},
{
"name": "userVaultAta",
"isMut": true,
"isSigner": false
},
{
"name": "vaultPda",
"isMut": true,
"isSigner": false
},
{
"name": "tokenProgram",
"isMut": false,
"isSigner": false
}
],
"args": [
{
"name": "amount",
"type": "u64"
}
]
},
{
"name": "setCardConfigs",
"accounts": [
{
"name": "zicOwner",
"isMut": true,
"isSigner": true
},
{
"name": "cardPda",
"isMut": true,
"isSigner": false
}
],
"args": [
{
"name": "params",
"type": {
"defined": "SetCardConfigParams"
}
}
]
},
{
"name": "setCustomFees",
"accounts": [
{
"name": "zicOwner",
"isMut": true,
"isSigner": true
},
{
"name": "feeMapPda",
"isMut": true,
"isSigner": false
},
{
"name": "cardPda",
"isMut": true,
"isSigner": false
},
{
"name": "systemProgram",
"isMut": false,
"isSigner": false
}
],
"args": [
{
"name": "params",
"type": {
"vec": {
"defined": "Fees"
}
}
}
]
},
{
"name": "deleteCustomFees",
"accounts": [
{
"name": "zicOwner",
"isMut": true,
"isSigner": true
},
{
"name": "feeMapPda",
"isMut": true,
"isSigner": false
},
{
"name": "cardPda",
"isMut": true,
"isSigner": false
},
{
"name": "systemProgram",
"isMut": false,
"isSigner": false
}
],
"args": [
{
"name": "params",
"type": {
"vec": "publicKey"
}
}
]
},
{
"name": "initBotConfig",
"accounts": [
{
"name": "zicOwner",
"isMut": true,
"isSigner": true
},
{
"name": "cardBotConfig",
"isMut": true,
"isSigner": false
},
{
"name": "cardPda",
"isMut": true,
"isSigner": false
},
{
"name": "tokenProgram",
"isMut": false,
"isSigner": false
},
{
"name": "associatedTokenProgram",
"isMut": false,
"isSigner": false
},
{
"name": "systemProgram",
"isMut": false,
"isSigner": false
}
],
"args": [
{
"name": "params",
"type": {
"defined": "InitBotConfigParams"
}
}
]
},
{
"name": "buyCardBot",
"accounts": [
{
"name": "botAdmin",
"isMut": true,
"isSigner": true
},
{
"name": "usdcToken",
"isMut": false,
"isSigner": false
},
{
"name": "userCustody",
"isMut": true,
"isSigner": false
},
{
"name": "userCustodyAta",
"isMut": true,
"isSigner": false
},
{
"name": "cardBotConfig",
"isMut": true,
"isSigner": false
},
{
"name": "cardPda",
"isMut": true,
"isSigner": false
},
{
"name": "cardVault",
"isMut": true,
"isSigner": false
},
{
"name": "cardVaultAta",
"isMut": true,
"isSigner": false
},
{
"name": "revenueVault",
"isMut": true,
"isSigner": false
},
{
"name": "revenueVaultAta",
"isMut": true,
"isSigner": false
},
{
"name": "feeMapPda",
"isMut": true,
"isSigner": false
},
{
"name": "tokenProgram",
"isMut": false,
"isSigner": false
},
{
"name": "associatedTokenProgram",
"isMut": false,
"isSigner": false
},
{
"name": "systemProgram",
"isMut": false,
"isSigner": false
}
],
"args": [
{
"name": "params",
"type": {
"defined": "BuyCardBotParams"
}
}
]
},
{
"name": "initBotPda",
"accounts": [
{
"name": "botAdmin",
"isMut": true,
"isSigner": true
},
{
"name": "userCustody",
"isMut": true,
"isSigner": false
},
{
"name": "userCustodyAta",
"isMut": true,
"isSigner": false
},
{
"name": "cardBotConfig",
"isMut": true,
"isSigner": false
},
{
"name": "usdcToken",
"isMut": false,
"isSigner": false
},
{
"name": "systemProgram",
"isMut": false,
"isSigner": false
},
{
"name": "tokenProgram",
"isMut": false,
"isSigner": false
},
{
"name": "associatedTokenProgram",
"isMut": false,
"isSigner": false
}
],
"args": [
{
"name": "params",
"type": {
"defined": "InitBotPdaParams"
}
}
]
},
{
"name": "setBotAdmin",
"accounts": [
{
"name": "zicOwner",
"isMut": false,
"isSigner": true
},
{
"name": "cardPda",
"isMut": true,
"isSigner": false
},
{
"name": "cardBotConfig",
"isMut": true,
"isSigner": false
}
],
"args": [
{
"name": "newAdmin",
"type": "publicKey"
}
]
},
{
"name": "initOnRampConfig",
"accounts": [
{
"name": "zicOwner",
"isMut": true,
"isSigner": true
},
{
"name": "onRampConfig",
"isMut": true,
"isSigner": false
},
{
"name": "cardPda",
"isMut": false,
"isSigner": false
},
{
"name": "tokenProgram",
"isMut": false,
"isSigner": false
},
{
"name": "associatedTokenProgram",
"isMut": false,
"isSigner": false
},
{
"name": "systemProgram",
"isMut": false,
"isSigner": false
}
],
"args": [
{
"name": "params",
"type": {
"defined": "InitOnRampParams"
}
}
]
},
{
"name": "initOnRampPda",
"accounts": [
{
"name": "admin",
"isMut": true,
"isSigner": true
},
{
"name": "userCustody",
"isMut": true,
"isSigner": false
},
{
"name": "onRampConfig",
"isMut": false,
"isSigner": false
},
{
"name": "userCustodyAta",
"isMut": true,
"isSigner": false
},
{
"name": "zbcnToken",
"isMut": false,
"isSigner": false
},
{
"name": "systemProgram",
"isMut": false,
"isSigner": false
},
{
"name": "tokenProgram",
"isMut": false,
"isSigner": false
},
{
"name": "associatedTokenProgram",
"isMut": false,
"isSigner": false
}
],
"args": [
{
"name": "params",
"type": {
"defined": "InitOnRampPdaParams"
}
}
]
},
{
"name": "setOnRampAdmin",
"accounts": [
{
"name": "zicOwner",
"isMut": false,
"isSigner": true
},
{
"name": "cardPda",
"isMut": true,
"isSigner": false
},
{
"name": "onRampConfig",
"isMut": true,
"isSigner": false
}
],
"args": [
{
"name": "newAdmin",
"type": "publicKey"
}
]
},
{
"name": "transferZbcn",
"accounts": [
{
"name": "admin",
"isMut": true,
"isSigner": true
},
{
"name": "from",
"isMut": true,
"isSigner": false
},
{
"name": "fromAta",
"isMut": true,
"isSigner": false
},
{
"name": "to",
"isMut": false,
"isSigner": false
},
{
"name": "toAta",
"isMut": true,
"isSigner": false
},
{
"name": "onRampConfig",
"isMut": true,
"isSigner": false
},
{
"name": "zbcnToken",
"isMut": false,
"isSigner": false
},
{
"name": "tokenProgram",
"isMut": false,
"isSigner": false
},
{
"name": "associatedTokenProgram",
"isMut": false,
"isSigner": false
},
{
"name": "systemProgram",
"isMut": false,
"isSigner": false
}
],
"args": [
{
"name": "params",
"type": {
"defined": "TransferZbcnParams"
}
}
]
},
{
"name": "initProposalConfigs",
"accounts": [
{
"name": "zicOwner",
"isMut": true,
"isSigner": true
},
{
"name": "proposalConfig",
"isMut": true,
"isSigner": false
},
{
"name": "cardPda",
"isMut": true,
"isSigner": false
},
{
"name": "systemProgram",
"isMut": false,
"isSigner": false
}
],
"args": [
{
"name": "params",
"type": {
"defined": "InitProposalConfigParams"
}
}
]
},
{
"name": "initProposal",
"accounts": [
{
"name": "creator",
"isMut": true,
"isSigner": true
},
{
"name": "creatorAta",
"isMut": true,
"isSigner": false
},
{
"name": "proposalConfig",
"isMut": true,
"isSigner": false
},
{
"name": "proposal",
"isMut": true,
"isSigner": false
},
{
"name": "proposalVault",
"isMut": true,
"isSigner": false
},
{
"name": "proposalVaultAta",
"isMut": true,
"isSigner": false
},
{
"name": "zbcnToken",
"isMut": false,
"isSigner": false
},
{
"name": "tokenProgram",
"isMut": false,
"isSigner": false
},
{
"name": "associatedTokenProgram",
"isMut": false,
"isSigner": false
},
{
"name": "systemProgram",
"isMut": false,
"isSigner": false
}
],
"args": [
{
"name": "params",
"type": {
"defined": "InitProposalParams"
}
}
]
},
{
"name": "vote",
"accounts": [
{
"name": "voter",
"isMut": true,
"isSigner": true
},
{
"name": "voterAta",
"isMut": true,
"isSigner": false
},
{
"name": "voterPda",
"isMut": true,
"isSigner": false
},
{
"name": "proposal",
"isMut": true,
"isSigner": false
},
{
"name": "proposalVault",
"isMut": true,
"isSigner": false
},
{
"name": "proposalVaultAta",
"isMut": true,
"isSigner": false
},
{
"name": "proposalConfig",
"isMut": true,
"isSigner": false
},
{
"name": "creator",
"isMut": false,
"isSigner": false
},
{
"name": "zbcnToken",
"isMut": false,
"isSigner": false
},
{
"name": "tokenProgram",
"isMut": false,
"isSigner": false
},
{
"name": "systemProgram",
"isMut": false,
"isSigner": false
}
],
"args": [
{
"name": "params",
"type": {
"defined": "VoteParams"
}
}
]
},
{
"name": "withdrawVote",
"accounts": [
{
"name": "voter",
"isMut": true,
"isSigner": true
},
{
"name": "creator",
"isMut": false,
"isSigner": false
},
{
"name": "proposalConfig",
"isMut": true,
"isSigner": false
},
{
"name": "voterAta",
"isMut": true,
"isSigner": false
},
{
"name": "voterPda",
"isMut": true,
"isSigner": false
},
{
"name": "proposalVault",
"isMut": true,
"isSigner": false
},
{
"name": "proposalVaultAta",
"isMut": true,
"isSigner": false
},
{
"name": "proposal",
"isMut": true,
"isSigner": false
},
{
"name": "zbcnToken",
"isMut": false,
"isSigner": false
},
{
"name": "tokenProgram",
"isMut": false,
"isSigner": false
}
],
"args": []
}
],
"accounts": [
{
"name": "CardBot",
"type": {
"kind": "struct",
"fields": [
{
"name": "botAdmin",
"type": "publicKey"
}
]
}
},
{
"name": "CardCustodyData",
"type": {
"kind": "struct",
"fields": [
{
"name": "userId",
"type": "string"
},
{
"name": "totalBoughtPerDay",
"type": "u64"
},
{
"name": "dateTimeInUnix",
"type": "u64"
}
]
}
},
{
"name": "Card",
"type": {
"kind": "struct",
"fields": [
{
"name": "index",
"type": "u64"
},
{
"name": "zicOwner",
"type": "publicKey"
},
{
"name": "nativeFee",
"type": "u64"
},
{
"name": "nonNativeFee",
"type": "u64"
},
{
"name": "revenueFee",
"type": "u64"
},
{
"name": "usdcMint",
"type": "publicKey"
},
{
"name": "revenueVault",
"type": "publicKey"
},
{
"name": "commissionVault",
"type": "publicKey"
},
{
"name": "cardVault",
"type": "publicKey"
},
{
"name": "totalBought",
"type": "u64"
},
{
"name": "dailyCardBuyLimit",
"type": "u64"
},
{
"name": "providerConfig",
"type": {
"defined": "ProviderConfig"
}
}
]
}
},
{
"name": "CustomFeeMap",
"type": {
"kind": "struct",
"fields": [
{
"name": "feeMap",
"type": {
"vec": {
"defined": "Fees"
}
}
}
]
}
},
{
"name": "OnRamp",
"type": {
"kind": "struct",
"fields": [
{
"name": "admin",
"type": "publicKey"
},
{
"name": "zbcnToken",
"type": "publicKey"
}
]
}
},
{
"name": "OnRampCustody",
"type": {
"kind": "struct",
"fields": [
{
"name": "userId",
"type": "string"
}
]
}
},
{
"name": "PrepaidCardBuyer",
"type": {
"kind": "struct",
"fields": [
{
"name": "index",
"type": "u64"
},
{
"name": "buyerAddress",
"type": "publicKey"
},
{
"name": "amount",
"type": "u64"
},
{
"name": "purchaseAt",
"type": "i64"
}
]
}
},
{
"name": "ProposalConfigs",
"type": {
"kind": "struct",
"fields": [
{
"name": "stakingToken",
"type": "publicKey"
},
{
"name": "creatorStakingCap",
"type": "u64"
},
{
"name": "votersStakingCap",
"type": "u64"
}
]
}
},
{
"name": "Proposal",
"type": {
"kind": "struct",
"fields": [
{
"name": "creator",
"type": "publicKey"
},
{
"name": "name",
"type": "string"
},
{
"name": "startTime",
"type": "i64"
},
{
"name": "endTime",
"type": "i64"
},
{
"name": "totalVotes",
"type": "u64"
}
]
}
},
{
"name": "Vault",
"type": {
"kind": "struct",
"fields": [
{
"name": "userAddress",
"type": "publicKey"
},
{
"name": "totalBoughtPerDay",
"type": "u64"
},
{
"name": "dateTimeInUnix",
"type": "u64"
}
]
}
},
{
"name": "Voter",
"type": {
"kind": "struct",
"fields": [
{
"name": "voterAddress",
"type": "publicKey"
},
{
"name": "proposalAddress",
"type": "publicKey"
},
{
"name": "votingAmount",
"type": "u64"
},
{
"name": "voteStatus",
"type": "bool"
},
{
"name": "voterFlag",
"type": "bool"
},
{
"name": "isWithdrawn",
"type": "bool"
}
]
}
}
],
"types": [
{
"name": "BuyCardBotParams",
"type": {
"kind": "struct",
"fields": [
{
"name": "userId",
"type": "string"
},
{
"name": "amount",
"type": "u64"
},
{
"name": "cardType",
"type": "string"
},
{
"name": "sourceTokenAddress",
"type": "publicKey"
}
]
}
},
{
"name": "InitBotConfigParams",
"type": {
"kind": "struct",
"fields": [
{
"name": "botAdmin",
"type": "publicKey"
}
]
}
},
{
"name": "InitBotPdaParams",
"type": {
"kind": "struct",
"fields": [
{
"name": "userId",
"type": "string"
}
]
}
},
{
"name": "InitProposalConfigParams",
"type": {
"kind": "struct",
"fields": [
{
"name": "stakingToken",
"type": "publicKey"
},
{
"name": "creatorStakingCap",
"type": "u64"
},
{
"name": "votersStakingCap",
"type": "u64"
}
]
}
},
{
"name": "InitProposalParams",
"type": {
"kind": "struct",
"fields": [
{
"name": "name",
"type": "string"
},
{
"name": "votingStartTime",
"type": "i64"
},
{
"name": "votingEndTime",
"type": "i64"
}
]
}
},
{
"name": "VoteParams",
"type": {
"kind": "struct",
"fields": [
{
"name": "voteStatus",
"type": "bool"
},
{
"name": "votingAmount",
"type": "u64"
}
]
}
},
{
"name": "InitOnRampParams",
"type": {
"kind": "struct",
"fields": [
{
"name": "admin",
"type": "publicKey"
},
{
"name": "zbcnToken",
"type": "publicKey"
}
]
}
},
{
"name": "InitOnRampPdaParams",
"type": {
"kind": "struct",
"fields": [
{
"name": "userId",
"type": "string"
}
]
}
},
{
"name": "TransferZbcnParams",
"type": {
"kind": "struct",
"fields": [
{
"name": "amount",
"type": "u64"
},
{
"name": "userId",
"type": "string"
}
]
}
},
{
"name": "BuyCardDirectParams",
"type": {
"kind": "struct",
"fields": [
{
"name": "index",
"type": "u64"
},
{
"name": "amount",
"type": "u64"
},
{
"name": "cardType",
"type": "string"
},
{
"name": "sourceTokenAddress",
"type": "publicKey"
}
]
}
},
{
"name": "BuyPrepaidCardParams",
"type": {
"kind": "struct",
"fields": [
{
"name": "index",
"type": "u64"
},
{
"name": "amount",
"type": "u64"
},
{
"name": "cardType",
"type": "string"
}
]
}
},
{
"name": "DepositParams",
"type": {
"kind": "struct",
"fields": [
{
"name": "amount",
"type": "u64"
},
{
"name": "sourceTokenAddress",
"type": "publicKey"
}
]
}
},
{
"name": "InitCardConfigParams",
"type": {
"kind": "struct",
"fields": [
{
"name": "nativeFee",
"type": "u64"
},
{
"name": "nonNativeFee",
"type": "u64"
},
{
"name": "revenueFee",
"type": "u64"
},
{
"name": "cardVault",
"type": "publicKey"
},
{
"name": "revenueVault",
"type": "publicKey"
},
{
"name": "commissionVault",
"type": "publicKey"
},
{
"name": "minCardAmount",
"type": "u64"
},
{
"name": "maxCardAmount",
"type": "u64"
},
{
"name": "dailyCardBuyLimit",
"type": "u64"
},
{
"name": "feeTier",
"type": {
"vec": {
"defined": "FeeTier"
}
}
}
]
}
},
{
"name