Marketplace and Shops

Listings and Marketplaces

Asset Layer allows apps to create and manage listings in order to create marketplaces. By storing listings on Asset Layer, multiple marketplaces can have access to the same listings. This means your assets could be listed for sale on many marketplaces at once.

By default, new listings will be accessible through the Asset Layer marketplace. For details on how to use the marketplace, check out Marketplace

Listings

Listings are used to list assets for sale in marketplaces. All listings specify an asset for sale, a seller of the asset, a price, and the curency in which that price is denominated. Listings can have one of four statuses: active, inactive, sold, or canceled. An inactive listing can also have a liveTime which specifies when the listing will become active. This is a great way to schedule a release for a new collection.

Listing Data Model

  • listingId: a UUID for the listing

  • assetId: the UUID of the asset being listed

  • price: the price of the listing in the chosen currency

  • currencyId: the currency that the listing is priced in if the chosen currency is an app currency

  • currency: the currency code if the chosen currency is a universal currency (BSV, for example)

  • appId: the app from which the asset being listed belongs

  • slotId: the slot from which the asset being listed belongs

  • collectionId: the collection from which the asset being listed belongs

  • serial: the serial number of the asset being listed

  • userId: the user who is selling the asset

  • status: whether the listing is active, inactive, sold, or canceled

  • liveTime: date-time when the listing will become or became active

  • createdAt: date-time when the listing was created

  • updatedAt: date-time when the listing was last updated

  • soldTime: date-time when the listing was purchased (if applicable)

Example Listing Data

"listingId": "63343dc02b4c748ef439e4c1",
"assetId": "c79020015297917828a198f310c115f2",
"price": 0.6,
"currency": "BSV",
"appId": "63243dc02b4c748ef439e4c1",
"slotId": "67843dc02b4c748ef439e4c1",
"collectionId": "63243dc02b4c748ef439e4c1",
"userId": "64643dc02b4c748ef439e4c1",
"status": "active",
"liveTime": 1664368064652,
"createdAt": 1664368064652,
"updatedAt": 1668174745324

Shops

Shops are used to make it easy for apps to create storefronts where they are listing new assets for sale. Instead of adding individual assets to a shop the way that listings add individual assets to the marketplace, apps can add shop items to their shop. A shop item specifies a collection and a price. Users can pay the price to get a newly minted asset from the specified collection.

Shop Item Data Model

  • itemId: a UUID for the shop item

  • collectionId: the colletionId of the shop item

  • currencyId: the currencyId of the currency the shop item is priced in

  • price: the price of the shop item

  • appId: the appId this shop item belongs to

  • status: active or inactive

  • paymentUserId: the userId of the user who receives payments when new assets are purchased using this shop item

  • createdAt: date-time when the listing was created

  • updatedAt: date-time when the listing was last updated

Example Shop Item Data

"itemId": "63343dc02b4c748ef439e4c1",
"collectionId": "69020015297917828a198f315",
"price": 5000,
"currencyId": "63643dc02b4c748ef439e4c1",
"appId": "6bb43dc02b4c748ef439e4c1",
"status": "active",
"paymentUserId": "6a643dc02b4c748ef439e4c1",
"createdAt": 1664368064652,
"updatedAt": 1668174745324

Last updated