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 (POST /place-order)
Initiate the procurement process by submitting your item list. Erysta performs an atomic check on your Balance + Credit Limit and verifies real-time stock availability.Request Body:Response Example:
If successful, the API returns a unique
id. You will use this identifier in the next step to fetch your keys.2. Retrieve Digital Assets (GET /orders/{id}/keys)
Use the Full Response Example:
id from the previous step to retrieve your digital content. Since fulfillment can be asynchronous depending on the supplier, you should monitor the status field.Content Formats
Thekeys array returns the actual assets in two primary formats:- Text: Standard alphanumeric codes (e.g., Steam, Epic, PSN).
- Image: A Base64 Data URL. This allows you to inject the value directly into an
<img src="..." />tag—ideal for QR codes or scanned vouchers.
Delivery Timing & Polling Strategy:
- Performance: Most orders are fulfilled within seconds.
- Edge Cases: Some sources may require 15 to 20 minutes for full processing.
- Best Practice: We recommend a polling interval of 30 seconds until the order status reaches a terminal state (
COMPLETEDorFAILED).
Fulfillment Statuses
When polling for keys, you should monitor thestatus field. Your integration should continue polling as long as the status is PENDING or PROCESSING.
| Status | Description |
|---|---|
PENDING | The order has been received and is currently in the queue for processing. |
PROCESSING | Our stock controllers are actively fetching your keys from the source. |
COMPLETED | All requested items have been successfully delivered and are ready for retrieval. |
PARTIAL_COMPLETED | Some items were delivered, but others failed. |
FAILED | A critical error occurred; the order was not fulfilled. No funds deducted. |
REFUNDED | The order was cancelled after payment; funds were returned to your balance. |