Skip to main content
Purchasing digital assets through Erysta is an atomic process designed for high-reliability. This section explains how to handle the full procurement lifecycle, from placing a bulk order to retrieving your final digital content.

The Ordering Workflow

Unlike some APIs that return keys directly in the purchase response, Erysta uses a two-step fulfillment pattern to ensure data integrity and support asynchronous processing.
1

Place the Order

Send a POST request to /place-order with your list of items. Erysta verifies your Balance + Credit Limit and confirms real-time stock availability.
2

Receive Order ID

If the transaction is successful, the API returns a unique order_id (e.g., ord_507f1f...). At this point, funds are reserved or deducted from your account.
3

Fetch Keys

Use the order_id to call GET /orders/{order_id}/keys. This is where you retrieve the actual digital content (activation keys, image links, or text-based codes).
Delivery Timing & Performance:
  • Average: Content delivery usually occurs within a few seconds.
  • Edge Cases: Depending on the original source of the product, processing may take between 15 to 20 minutes.
Recommended Strategy: We suggest implementing a polling mechanism on this endpoint at a rate of one request every 30 seconds until the content status is finalized (terminal status).

Fulfillment Statuses

When polling for keys, you should monitor the status field. Your integration should continue polling as long as the status is PENDING or PROCESSING.
StatusDescription
PENDINGThe order has been received and is currently in the queue for processing.
PROCESSINGOur stock controllers are actively fetching your keys from the source.
COMPLETEDAll requested items have been successfully delivered and are ready for retrieval.
PARTIAL_COMPLETEDSome items were delivered, but others failed.
FAILEDA critical error occurred; the order was not fulfilled. No funds deducted.
REFUNDEDThe order was cancelled after payment; funds were returned to your balance.

Key Concepts

Atomic Bulk Operations

The /place-order endpoint accepts an array of items. If any item in the array is unavailable or if your funds are insufficient for the total amount, the entire transaction will fail. This prevents “partial orders” that would complicate your accounting and inventory management.

Reference IDs

We strongly recommend providing a reference_id (your own internal database ID). This allows you to reconcile orders with your own systems and search for specific transactions in the Erysta Dashboard.

Multimodal Content Delivery

Our delivery system supports different formats. Depending on the product, the value returned in the keys array can be:
  • Text: A standard alphanumeric key (e.g., Steam, Epic, PSN).
  • Image: A Data URL (base64) for products delivered as QR codes or scanned vouchers. You can inject this value directly into an <img src="..." /> tag.