Orders
https://app.iteras.dk/api/orders/
The /api/orders/ endpoint enables you to retrieve
information about placed orders. Orders are always placed through
ordering forms, either through the UI or through the
place order API.
The orders are not usually visible inside the Iteras UI, except orders awaiting approval
The orders can be orders in any state, so both completed orders, orders awaiting approval and orders where the customer has not completed the payment.
An order can also hand its ID and selected fields directly to the page shown after ordering - see order data on the redirect - so that page can look the order up here without searching.
Parameters
All parameters are optional.
-
fields string Defaults to
dataA comma-separated list of fields to return in the JSON, e.g.
?fields=data,invoice_lines.-
dataAll fields directly on the order. When left out, only
idis returned. -
invoice_lines with
fields=dataEstimated invoice lines from ordered campaigns and products. These are calculated at the time of the API request (not at the time the order was made).
-
-
order_id stringID of a specific order, e.g.
?order_id=83529. -
customer stringOrders made by a specific customer with the provided customer ID, e.g.
?customer=9224437. These orders are either completed or the customer has logged in as part of ordering. -
campaign stringCampaign ID, selected products representing one or more of these campaign IDs e.g.
?campaign=3i&campaign=12m. -
status stringStatus of the order, e.g.
?status=awaitingapproval&status=denied. One of:awaitingconfirmationawaitingpaymentprocessorawaitingemailconfirmationawaitingapprovalapproveddenied
-
created_before dateE.g.
?created_before=2026-10-30(the date inclusive). -
created_after dateE.g.
?created_after=2026-09-30(the date inclusive). -
max_results integer Defaults to
10000How many orders to retrieve at most, e.g.max_results=1000. The newest orders are returned first. "max_results" is currently clipped to be between 1-10000. If there are more results available, anext_urlis returned which you can use to grab the next page. -
iframe boolSet if returned URLs are intended to go in an iframe, e.g.
iframe=1.
Return value
The data returned is an object with an array of order
information (possibly empty array). A maximum of 10.000 orders are returned so make sure to use
the created_before and/or created_after parameters if you have a lot of orders to fetch.
If there are more orders than max_results, the response also contains a
next_url you can use to fetch the next page.
Note that the content depends on what fields have been set up inside Iteras and filled in on a given order. In general, only filled-in fields are returned, so for instance if the order form does not include a specific field or the field is not filled in, it won't show up in the data for the order.
Each order object always contains its id. The remaining attributes below are
returned when fields includes data, which is the default.
-
id stringID of the order, e.g.
83529. -
created datetimeWhen the order was placed, as
YYYY-MM-DDTHH:MM:SS, e.g.2026-08-30T21:35:21. -
ordering_form stringURL ID of the form the order was placed through, e.g.
3-months. -
status stringOne of:
awaitingconfirmationawaitingpaymentprocessorawaitingemailconfirmationawaitingapprovalapproveddenied
-
products array
The products and campaigns chosen in the order, e.g.
[{"text": "3 issues (100,00 DKK)", "quantity": 1, "campaign_id": "3i", "price": 100.0, "currency": "DKK"}].A chosen campaign has these attributes:
-
text stringThe product text used when ordering, e.g.
3 issues (100,00 DKK). -
quantity integerThe quantity ordered, present only when it is other than 1.
-
campaign_id stringThe campaign's ID, e.g.
3i. -
campaign_name stringThe campaign's internal name.
-
campaign_customer_facing_name stringThe campaign's customer-facing name.
-
subscribed_to arrayThe products the campaign subscribes to, each with
nameandexternal_id. -
price decimalThe computed price of the campaign, e.g.
100.0. -
currency stringThe currency of the computed price, e.g.
DKK. -
invoice_lines array with
fields=data,invoice_linesThe estimated invoice lines for the campaign, in the invoice line format, computed at the time of the request.
A stand-alone product has these attributes:
-
text stringThe product text used when ordering, e.g.
A good book at a good price (50,00 DKK). -
quantity integerThe quantity ordered, present only when it is other than 1.
-
name stringThe product's internal name.
-
customer_facing_name stringThe product's customer-facing name.
-
external_id stringThe product's external ID, e.g.
book_offer_34. -
price decimalThe computed price of the product, e.g.
50.0. -
currency stringThe currency of the computed price, e.g.
DKK. -
invoice_lines array with
fields=data,invoice_linesThe estimated invoice lines for the product, in the invoice line format, computed at the time of the request.
Any filled-in product fields are also returned under their field key.
-
-
resume_ordering_url stringA link back to the order so the customer can resume it, e.g.
https://app.iteras.dk/example/iframe/order/myOrderingForm/?order=vnt3eb683b4833v8. Only present ifstatusisawaitingconfirmation. -
address objectThe delivery address, e.g.
{"name": "John Doe", "address": "Sneglevej 78\n6000 Kolding", "country": "DK"}. Included if filled in.-
name stringThe name on the delivery address.
-
company stringThe company name on the delivery address.
-
address stringThe full address except name and country, e.g.
Sneglevej 78\n6000 Kolding. -
country stringThe two-letter country code, e.g.
DK.
-
-
billing_address objectThe billing address, e.g.
{"company": "Business Corp", "address": "Business road 56\n4637 Town", "country": "NO"}. Included if the order has one.-
name stringThe name on the billing address.
-
company stringThe company name on the billing address.
-
address stringThe full address except name and country.
-
country stringThe two-letter country code, e.g.
NO.
-
-
email stringThe email address filled in on the order, e.g.
johndoe@example.com. Included if set. -
billing_email stringThe billing email address, e.g.
billing@example.com. Included if set. -
note stringA note left on the order, e.g.
Gift wrapped please. Included if set. -
ip stringIP address that placed the order, e.g.
123.123.123.123. Included if set. -
password stringHashed password set up for the customer during ordering, e.g.
pbkdf2_sha256$870000$Rk3mXw9b8pQ0$gB5nC2fJqZ1sH7dLmP0tV4aE6wN8uY3rT5cK9. Included if a password was chosen. -
customer_id stringCustomer ID of the customer attached to the order, if any, e.g.
452. This is also returned ascustomerfor backwards compatibility. -
subscription_date_begin dateWhen the subscription begins, as
YYYY-MM-DD, e.g.2026-11-30. Included if a date was chosen. -
payment_agreement objectThe payment agreement chosen, e.g.
{"id": "7453106", "text": "Mastercard: XX...XX2451"}. Included if a payment agreement was used.-
id stringID of the payment agreement.
-
text stringThe payment agreement text, e.g.
Mastercard: XX...XX2451.
-
-
ordering_code stringThe ordering code applied to the order, e.g.
EXTRA20OFF. Included if one was used. -
subscriptions arrayIDs of the subscriptions created from this order, e.g.
["56469"]. Included if any were created.
Any fields set up on the order form and filled in on the order, e.g. a newsletter checkbox, are also returned under their field key.
GET /api/orders/?customer=452&created_after=2026-07-30{
"orders": [
{
"id": "83529",
"created": "2026-08-30T21:35:21",
"ordering_form": "3-months", // URL ID of form used for order
"resume_ordering_url": "https://app.iteras.dk/example/iframe/order/myOrderingForm/?order=vnt3eb683b4833v8", // link to order (only present if status is 'awaitingconfirmation')
"address": {
"name": "John Doe",
"address": "Sneglevej 78\n6000 Kolding",
"country": "DK"
},
"email": "johndoe@example.com",
"billing_address": {
"company": "Business Corp",
"address": "Business road 56\n4637 Town",
"country": "NO"
},
"password": "pbkdf2_sha256$870000$Rk3mXw9b8pQ0$gB5nC2fJqZ1sH7dLmP0tV4aE6wN8uY3rT5cK9", // hashed value
":Receive newsletter": true,
"ip": "123.123.123.123", // IP address that placed the order
"ordering_code": "EXTRA20OFF", // if an ordering code was used
"products": [ // chosen products
{
"campaign_id": "3months", // ID of campaign product
"campaign_name": "3 months",
"campaign_customer_facing_name": "3 months",
"text": "3 months (100,00 DKK)", // product text used when ordering
"quantity": 1,
"subscribed_to": [{
"name": "Example subscription product",
"external_id": "example_product"
}],
"price": 100.00,
"currency": "DKK"
},
{
"name": "Standard size book", // stand-alone product
"customer_facing_name": "A good book",
"external_id": "book_offer_34",
"text": "A good book at a good price (50,00 DKK)", // product text used when ordering
":Custom product field": "Example text",
"price": 50.00,
"currency": "DKK"
],
"status": "approved", // or awaitingconfirmation/awaitingpaymentprocessor/awaitingemailconfirmation/awaitingapproval/denied
"customer_id": "452", // customer ID of customer attached to this order (if any)
"payment_agreement": {
"id": "7453106",
"text": "Mastercard: XX...XX2451 (10/2028)"
},
"subscriptions" [ // ID's of created subscriptions from this order (if any)
"56469"
]
}
]
}Errors
A customer or order_id that does not exist returns a plain text
HTTP 404 error. A missing or malformed parameter that the call requires returns a plain text
HTTP 400 error.