Candy Shop

Creating Your Shop

This starter repo gives you different shop configurations out of the box. You can also check out the example in the Github repo and its deployed version here.

Create Candy Shop

You can create and configure your Candy Shop through the My Shop admin panel, including the following:
  • Create a shop with SOL or an SPL token as transaction currency
  • Deposit syrup, a small budget to maintain your shop (e.g. gas fees for on-chain account space allocation)
  • Restrict NFT collections that can be bought and sold on your shop
  • Claim share of transaction fees from your shop

Install Candy Shop

npm install @liqnft/candy-shop
yarn add @liqnft/candy-shop

Use Candy Shop

Create a CandyShop instance in your code base to use Candy Shop.
const candyShop = await CandyShop.initSolCandyShop({
shopCreatorAddress: "6MfPdYNQNnvkYcFvcSK6w6magR6z25Ay2iaYFfYY1xfw", // Candy Shop owner address
treasuryMint: "So11111111111111111111111111111111111111112", // Candy Shop transaction currency
programId: "csbMUULiQfGjT8ezT16EoEBaiarS6VWRevTw1JMydrS", // Candy Shop program ID
env: 'devnet', // mainnet, devnet
settings: settings // (optional) additional shop settings
Additional Settings
You may pass an additional settings object to customize your shop:
  • priceDecimals: number
    • number of decimals to display for price numbers (default is 3)
  • volumeDecimals: number
    • number of decimals to display for volume numbers (default is 1)
  • connectionUrl: string
    • your mainnet connection node url (default is We encourage projects to use their own node provider. We discovered that in non-US region sometimes the node returns 429 rate limit error.
  • connectionConfig: object
    • your connection node url configuration
Default settings
const settings = {
priceDecimals: 3,
volumeDecimals: 1,
mainnetConnectionUrl: '',
connectionConfig: {
httpHeaders: {