Reseller API - developer documentation
Reseller API - developer documentation
Connect your own shop, bot or panel directly to SuperCoinsy. Check live stock and prices, place and pay for orders, follow their status and message our team - all without opening the reseller panel. Below you will find everything your developer needs: how to get access, how to authorize requests and what every endpoint returns.
What you need before you start
An active reseller account
The API works on top of your reseller balance. Orders are paid from it, so top up before your first call.
API access enabled by our admin
This is a one-time switch on our side. Write to [email protected] or message us on Discord at supercoinsy and we will turn it on for your account.
A fixed IP address
Every API user is bound to the IP it may connect from. Have it ready before you create your first token.
How to get your access token
1
Ask us to activate API access on your reseller account - see the contacts above.
2
Once it is active, open supercoinsy.com/account/reseller/api-users - this is where you manage all your API users.
3
Click CREATE and enter the IP address you will connect from. Requests from any other address are rejected. You may enter * to skip IP verification, but you do so at your own risk.
4
Copy the 60-character token and store it somewhere safe. It is shown once and cannot be displayed again. Next to it you will also see a 6-character identifier - it labels your API user in our operation logs.
5
Click Turn ON in the table to activate the API user. From now on the connection will work. You can switch it off temporarily or delete it permanently at any moment.
You can keep several API users side by side - for example one for your production shop and one for testing - each with its own IP and its own token.
Authorization
Authorization goes in the request headers. Every request must carry all three, and must come from the IP assigned to that API user.
Content-Type: application/json X-Authorization: <your 60-character token> X-UserID: <your 6-character identifier>
Base address
All endpoints live under https://supercoinsy.com/uk/api/ and every response is JSON.
Endpoints (click to expand)
GET - Available stock
Check what we can deliver right now, per platform. A good first call before you expose a buy button in your own shop.
GET https://supercoinsy.com/uk/api/reseller/available-stock
Response
{
"status": 1,
"data": [
{ "platform": "PC", "stock_available": 10 },
{ "platform": "PS5, PS4, XSX, XSS, XONE, Stadia", "stock_available": 10 }
]
}
GET - Current prices
Your current reseller price per platform. Pull it regularly rather than hard-coding values, so your margins stay where you want them.
GET https://supercoinsy.com/uk/api/reseller/prices
Response
{
"status": 1,
"data": [
{ "platform": "PC", "price": "1.00" },
{ "platform": "PS5, PS4, XSX, XSS, XONE, Stadia", "price": "2.00" }
]
}
POST - Place and pay for a new order
Creates the order and settles it against your reseller balance in one call. If the balance is too low, the order is not created.
POST https://supercoinsy.com/uk/api/reseller/new-transaction
Parameters
quantity (required) - amount in K, so 150 means 150 000 coins.
platform (required) - pc or ps. Note that ps covers every console: PlayStation, Xbox and Stadia alike.
emailapp (required) - the EA account e-mail used to log in to the Web App.
passapp (required) - the password to that EA account.
codesapp (required) - EA backup codes, comma separated. Send at least three fresh ones.
userorderid (optional) - your own order reference; it comes back as your_id.
usernotes (optional) - a note for our team.
platform (required) - pc or ps. Note that ps covers every console: PlayStation, Xbox and Stadia alike.
emailapp (required) - the EA account e-mail used to log in to the Web App.
passapp (required) - the password to that EA account.
codesapp (required) - EA backup codes, comma separated. Send at least three fresh ones.
userorderid (optional) - your own order reference; it comes back as your_id.
usernotes (optional) - a note for our team.
Request body
{
"quantity": 150,
"platform": "pc",
"emailapp": "[email protected]",
"passapp": "pass-app-test1",
"codesapp": "one, two, three",
"userorderid": "MY-ID2586",
"usernotes": "please process quickly"
}
Response
{
"status": 1,
"message": "Payment accepted",
"number": "R_QWERTY"
}
Store the returned number
The value in number is the identifier for every later call - details, messages and cancellation all use it.
GET - List of transactions
Returns your orders page by page, newest first. Use it to keep your own database in sync.
GET https://supercoinsy.com/uk/api/reseller/list-transactions?page=1
page (optional, integer) - defaults to the first page. The response tells you how many pages there are in total.
Response
{
"total": 10,
"pages": 1,
"orders": [
{
"number": "R_ABCDEF",
"placed": "2021-08-17 16:11:57",
"your_id": "",
"platform": "PS5, PS4, XSX, XSS, XONe, Stadia",
"quantity": 100,
"status": "Paid, waiting for delivery",
"max_delivery_time": "2021-08-17 18:11:57"
}
]
}
GET - Transaction details
Everything we hold on a single order, including the data you sent us and the deadline we are working to.
GET https://supercoinsy.com/uk/api/get-transaction/{identifier}?currency=EUR
identifier (required) - the order number, for example R_ABCDEF.
currency (optional) - EUR or USD. Defaults to EUR.
currency (optional) - EUR or USD. Defaults to EUR.
Response
{
"number": "R_ABCDEF",
"your_id": "TEST123",
"placed": "2021-08-17 16:11:57",
"value": "6.40 EUR",
"platform": "PS5, PS4, XSX, XSS, XONe, Stadia",
"quantity": 100,
"emailapp": "[email protected]",
"passapp": "test_pass",
"usernotes": "notes-example-text",
"codesapp": "test_code",
"status": "Paid, waiting for delivery",
"max_delivery_time": "2021-08-17 16:11:57"
}
POST - Send a message to an order
Adds a message to the order thread, exactly as if you had written it in the reseller panel. Use it to send fresh backup codes or to flag anything our team should know.
POST https://supercoinsy.com/uk/api/reseller/transaction/{identifier}/message
Request body
{
"message": "My new message to the order"
}
Response
{
"status": 1,
"message": "Message has been sent"
}
GET - Cancel an order
Sends a cancellation request. It is a request, not an instant cancellation - our admin approves it, and only then do the SC Points return to your balance.
GET https://supercoinsy.com/uk/api/reseller/cancel-transaction/{identifier}
Response
{
"status": 1,
"message": "A cancellation request has been sent. SC Points will be refund to your account after approval by the admin."
}
A few things worth knowing
Quantity is always in K
Send 150 when you mean 150 000 coins. Sending the full number would create an order a thousand times larger than intended.
"ps" means every console
There are only two platform values. Xbox and Stadia orders go in as ps, together with PlayStation - they share one delivery pool.
Backup codes are single use
Send at least three fresh codes with every order. Codes already used on an earlier order will not let us log in, and the order will wait until you send new ones.
Status changes by polling
There is no callback yet, so check the order list or the details endpoint on a sensible interval rather than in a tight loop.
One token, one IP
If your server changes address, edit the API user first - otherwise every request will simply be refused. And if a token leaks, switch that user off and create a new one.
Stuck on something?
If a request behaves differently than described here, tell us what you sent and what came back - we will look at the logs on our side. Write to [email protected] or ping us on Discord at supercoinsy.
Not integrating yet?
Everything the API does can also be done by hand in the reseller panel - topping up the balance, placing orders, following their status.
Reseller panel guide →Ready to connect? Create your API user at supercoinsy.com/account/reseller/api-users
