Integration with secondary market (DMarket)

How it works

A secondary market allows gamers to exchange, sell, and buy in-game items. To attract gamers and boost income, integrate DMarket, a popular online platform for secondary market trades.

Main features:

  • secure exchange and purchase of in-game items
  • paying with real currency (USD)

The flow of user’s interaction with DMarket service:

  1. The user logs in to the service.
  2. The service gets the list of items available for selling from their Xsolla player inventory.
  3. The user adds items from their player inventory to the service.
  4. The user sells or purchases items.
  5. The user withdraws items from the service to their in-game inventory.

Who can use it

  • Partners who have already connected Store and want to integrate the secondary market.
  • Partners who want to attract or motivate gamers by providing them with an opportunity to get value from selling in-game items.

How to get it

Note:
Features described in this section are now in development. To integrate the service, fill out the contact form.

To integrate DMarket, complete the following steps:

  1. In your Xsolla Publisher Account, go to Project settings > Integration settings and make sure the Integrate new Store management methods toggler is on.
  2. Create an account in DMarket and get access to your profile.
  3. Get the Partner ID in your DMarket account.

  1. Generate the private and public keys with the help of the Etd25519 algorithm.
  2. In your DMarket account, insert your public key into the Partner public key field.

  1. Generate a new DMarket public key in your DMarket account.

  1. After you have submitted the contact form and received a reply, pass this information in the response letter:
    • your Partner ID
    • the private key generated with the Ed25519 algorithm
    • the public key generated in your DMarket account
  2. Set up the catalog.
  3. Synchronize the user inventory.
  4. Use methods to work with the DMarket service.

Setting up catalog

At this stage, the product catalog is not synchronized automatically. To ensure its correct operation, do the following:

  1. Configure the product catalog in Xsolla Publisher Account.
  2. Configure the items inventory in your DMarket account.
  3. Set up items. To set up the list of items available for selling on DMarket, fill out the contact form.

Notice:
The Item variant ID parameter in the DMarket account must match the item SKU in your Xsolla Publisher Account.

Synchronizing user inventory

Follow the instructions to integrate the Xsolla Login widget and enable synchronization between the Xsolla player inventory and the DMarket service.

To enable synchronization, the user has to:

  1. Create a DMarket account.
  2. Synchronize their Xsolla player inventory with the DMarket inventory by inputting their data into the Xsolla Login widget.

User authentication and synchronization flow:

Methods for working with DMarket

Note:
Methods are now in development. The given parameters, links, and request bodies may be changed in this process.

Getting items list

To get the list of user inventory items available for selling on DMarket, in your DMarket account insert this URL https://store.xsolla.com/v2/project/{project_id}/secondary_market/user_inventory into the Get inventory field. The project_id in the URL is the ID of the project in your Xsolla Publisher Account.

Moving items

To enable moving items between the Xsolla player inventory and the user's DMarket inventory, in your DMarket account insert this URL https://store.xsolla.com/v2/project/{project_id}/secondary_market/user_inventory/task into the Post Task field. The project_id in the URL is the ID of the project in your Xsolla Publisher Account.

Getting task

Task is a process of exchanging data via API when items are moving between the DMarket inventory and the Xsolla player inventory. To get information about the current Task status, in your DMarket account insert this URL https://store.xsolla.com/v2/project/{project_id}/secondary_market/user_inventory/task/{task_id} into the Get Task field. In this URL:

  • the project_id is the ID of the project in your Xsolla Publisher Account
  • the task_id is the ID of the process on the DMarket side

To integrate the secondary market service, fill out the contact form:

Fill out the form