In order to allow your users to create listings to populate your marketplace, you’ll first want to read from the blockchain to determine your users’ token balances. Once you’ve retrieved your users’ token balances, you’ll likely want to display them to the user in your UI.

Once your user has selected the collectible, amount, and price they’d like to list for sale, you’ll want to create the listing.

ICheckout checkout = new Checkout(_wallet, _chain);
Step[] steps = await checkout.GenerateListingTransaction(collectionContractAddress, tokenId, amount, ContractType.ERC1155, currencyTokenAddress, pricePerTokenInstance, expiryDateTime);
TransactionReturn result = await steps.SubmitAsTransactions(_wallet, _chain);
if (result is SuccessfulTransactionReturn successTransaction) {
    // Handle success case
}else {
    // Handle fail case
}

You can jumpstart the process by using our Boilerplate Factory

            BoilerplateFactory.OpenListItemPanel(Transform parent, ICheckout checkout, TokenBalance item, Action onClose = null)