Create order
/accounts/create_order
Target audience: Developers
Release version: 4.5.5
Create order¶
Introduction¶
This endpoint is used to place an order.
Attention
As for now this endpoint only supports creating orders with the payment method invoice
, autogiro
, billecta
, free
and adyen
.
URI¶
Environment | URI |
---|---|
Stage | https://payway-api.stage.adeprimo.se/external/api/v2/accounts/create_order |
Production | https://backend.worldoftulo.com/external/api/v2/accounts/create_order |
Requirements¶
Identity | Scope |
---|---|
No | /external/accounts/w |
Parameters¶
Field | Required | Type | Description |
---|---|---|---|
account_id | Optional | String | The id of the account to place the order on. Size range: ..24 Allowed values: "/^[a-f\d]{24}$/i" |
Optional | String | The email of the account to place the order on. Size range: ..1024 Allowed values: "/\A[\w+-.]+@[a-z\d-]+(.[a-z]+)*.[a-z]+\z/i" |
|
product_code | Required | String | The product code for a package/campaign. |
period_id | Required | String | The unique id of the period that should be used for this order. Note that the supplied period id determines the payment method. Size range: ..24 Allowed values: "/^[a-f\d]{24}$/i" |
start_date | Optional | DateTime | The start date of the subscription in UTC, will default to DateTime.now |
receipt_url | Required | String | The receipt url that the user will end up on after creating the order |
billing_address | Optional | Object | Address object, that should be set as the billing address. Required if product is a physical/print product and period is not free |
first_name |
Required | String | First name of the recipient that is to be billed |
last_name |
Required | String | Last name of the recipient that is to be billed |
care_of |
Optional | String | Care of address of the recipient that is to be billed |
street |
Required | String | Street of the recipient that is to be billed |
zip_code |
Required | String | Zip code of the recipient that is to be billed |
country_code |
Required | String | Country code of the recipient that is to be billed |
contact_email |
Optional | String | Contact email of the recipient that is to be billed |
citizenship_country_code |
Optional | String | Citizenship country code of the recipient that is to be billed |
company_name |
Optional | String | Company name, if applicable |
company_reference |
Optional | String | Company reference, if applicable |
company_department |
Optional | String | Company department, if applicable |
delivery_address | Optional | Object | Address object, that should be set as the delivery address. Required if product is a physical/print product |
first_name |
Required | String | First name of the recipient |
last_name |
Required | String | Last name of the recipient |
care_of |
Optional | String | Care of address of the recipient |
street |
Required | String | Street of the recipient |
zip_code |
Required | String | Zip code of the recipient |
country_code |
Required | String | Country code of the recipient |
company_name |
Optional | String | Company name, if applicable |
company_reference |
Optional | String | Company reference, if applicable |
company_department |
Optional | String | Company department, if applicable |
traffic_source | Optional | String | The traffic source for the order |
company_vat_number | Optional | String | The VAT number linked to the company |
merchant_reference | Optional | String | The merchant reference for the order |
account_payment_profile_id | Optional | String | The id of the stored account payment profile |
Curl Example with account_id¶
curl --request POST \
--url https://payway-api.stage.adeprimo.se/external/api/v2/accounts/create_order \
--header 'accept: application/json' \
--header 'authorization: Bearer <token-with-identity>' \
--header 'content-type: application/json' \
--data '{
"account_id": "5c6291d537c2ed78a11518b7",
"product_code": "adeprimo_digital",
"period_id": "5cb804811d41c82b5c518ea8",
"start_date": "2019-05-01T00:00:00+00:00",
"receipt_url": "https://domain.tld/receipt/585a4768edce2c5e6f000001"
}'
With address and email¶
curl --request POST \
--url https://payway-api.stage.adeprimo.se/external/api/v2/accounts/create_order \
--header 'accept: application/json' \
--header 'authorization: Bearer <token-with-identity>' \
--header 'content-type: application/json' \
--data '{
"email": "test@test.com",
"product_code": "adeprimo_digital",
"period_id": "5cb804811d41c82b5c518ea8",
"start_date": "2019-05-01T00:00:00+00:00",
"receipt_url": "https://domain.tld/receipt/585a4768edce2c5e6f000001",
"billing_address": {
"first_name": "Erik",
"last_name": "Eriksson",
"street": "Ekvägen 12",
"zip_code": "120 35",
"city": "Tyresö",
"country_code": "SE",
"care_of": nil,
"contact_email": "invoicing@no-reply.com",
"citizenship_country_code": "SE",
"company_name": "My Company",
"company_reference": nil,
"company_department": "IT"
},
"delivery_address": {
"first_name": "Erik",
"last_name": "Eriksson",
"street": "Ekvägen 12",
"zip_code": "120 35",
"city": "Tyresö",
"country_code": "SE",
"company_name": "My Company",
"company_reference": nil,
"company_department": "IT"
}
}'
Response¶
Field | Description |
---|---|
id | id of the order |
order_id | order_id of the order |
payment_id | id of the payment |
HTTP 201 Created
{
"id": "ADEPRIMO-1234",
"order_id": "ADEPRIMO-1234",
"payment_id": "AAABBBCCDD11223344"
}
Errors¶
This API uses the common error conventions of the Payway API