Skip to content

Overview

Digital Distribution Hub is a new Xsolla solution that aims to connect digital and cash based payments via push payments technology and e-commerce.

This reference combines API endpoints for two Xsolla products: In-Game Store and Pay Station. There are two base URLs:

  • https://store.xsolla.com/api for the Common, Catalog, Cart, and Order groups.
  • https://ps.xsolla.com for the Notifications group.

API endpoints in the Catalog group don’t require authorization.

To work with operations in the Cart and Order groups, you need to generate a token via Create user token.

Note

This reference shows a design of a future API and not a fully functioning interface. Currently, you can try only Catalog and Notifications groups endpoints. If you’d like to share your feedback, please email us at techdoc@xsolla.com.
Download OpenAPI description
Languages
Servers
Mock server
https://xsolla.redocly.app/_mock/api/digital-distribution-hub/
https://store.xsolla.com/api/
Operations
Operations
Operations
Operations
Operations
Operations

Request

Send this notification after successfully charging a user.

Bodyapplication/json
project_idintegerrequired

Project ID.

paymentobjectrequired
payment.​geotype_idintegerrequired

Distributor partner ID on the Xsolla's side.

payment.​amountnumberrequired

Amount of payment.

payment.​currencystring

Currency of the order. Virtual currency uses the SKU and real currency uses a three-letter ISO 4217 code.

payment.​ps_transaction_idstring

Transaction ID on the distribution partner’s side.

payment.​project_transaction_idstring

Transaction ID on the game developer’s side.

purchaseobjectrequired
purchase.​order_idintegerrequired

Order ID.

userobjectrequired
user.​idstringrequired

Unique user identifier in the game.

user.​emailstring

User email address.

user.​phonestring

User phone number.

user.​ps_account_idstring

User's payment account ID on the distribution partner’s side.

curl -i -X POST \
  https://xsolla.redocly.app/_mock/api/digital-distribution-hub/push-payments/pay \
  -H 'Content-Type: application/json' \
  -d '{
    "project_id": 18404,
    "payment": {
      "geotype_id": 13038,
      "amount": 10,
      "currency": "USD",
      "ps_transaction_id": "ps_transaction_id"
    },
    "purchase": {
      "order_id": 1334430
    },
    "user": {
      "id": "s.ivanov"
    }
  }'

Responses

OK.

Bodyapplication/json
payment_idinteger
Response
application/json
{ "payment_id": 784998484 }

Request

Send the notification about payment cancellation if:

  • the payment was not completed
  • the payment was refunded
Bodyapplication/json
payment_idintegerrequired
curl -i -X POST \
  https://xsolla.redocly.app/_mock/api/digital-distribution-hub/push-payments/cancel \
  -H 'Content-Type: application/json' \
  -d '{
    "payment_id": 784998479
  }'

Responses

OK.

Operations