Create order
/accounts/create_order
Target audience: Developers
Create order¶
Introduction¶
This endpoint is used to place an order without an account. The account will be located or created based on the supplied email address.
Attention
As for now this endpoint only supports creating orders with the payment method invoice
, autogiro
, billecta
and free
.
This endpoint cannot be accessed using an access-token with an identity.
Events triggered¶
See Payway events for more information on the events triggered.
Event | Description |
---|---|
account_created_with_password_reset | When an account cannot be located using the supplied email address it is instead created. |
order_closed | On a successful api call an order is created and closed. |
payment_user_product_created | When a user product is created. |
voucher_created | When a voucher is being purchased. |
URI¶
Environment | URI |
---|---|
Stage | https://payway-api.stage.adeprimo.se/external/api/v4/accounts/create_order |
Production | https://backend.worldoftulo.com/external/api/v4/accounts/create_order |
Requirements¶
Identity | Scope |
---|---|
No | /external/account/w |
Parameters¶
Field | Required | Type | Description |
---|---|---|---|
account | Required | Object | |
email |
Required | String | Email of the customer |
first_name |
Optional | String | First name of the customer |
last_name |
Optional | String | Last name of the customer |
mobile_phone_number |
Optional | String | The phone number. Must be a valid phone number, with or without country code |
social_security_number |
Optional | String | The social security number. Must be a valid social security number (SSN) in the country of the organisation |
birth_date |
Optional | String | The birth date. Must be in a DateTime parseable format |
company_name |
Optional | String | Company name, if applicable |
company_registration_number |
Optional | String | Company registration number (CRN), if applicable |
account_origin |
Optional | String | The origin of the account |
alias |
Optional | String | The alias of the account |
address |
Optional | Address Object | The address of the account |
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 | Address Object | Address object, that should be set as the billing address. Required if product is a physical/print product and period is not free |
delivery_address | Optional | Address Object | Address object, that should be set as the delivery address. Required if product is a physical/print product |
einvoice_information | Optional | Object | Object containing invoicing information, if the order is an e-invoice subscription |
gln |
Optional | String | The GLN linked to the e-invoice |
intermediator |
Required | String | The intermediator linked to the e-invoice |
crn |
Required | String | The CRN linked to the e-invoice |
traffic_source | Optional | String | The traffic source for the order Size range: ..128 |
merchant_reference | Optional | String | The merchant reference for the order |
paywall_id | Optional | String | The ID of the paywall. Size range: ..24 Allowed values: "/^[a-f\d]{24}$/i" |
secure_identification | Optional | Object | The object containing information about the secure identification of a user |
trusted_identity_id |
Required | String | The ID of the trusted identity. Size range: ..24 Allowed values: "/^[a-f\d]{24}$/i" |
omit_secure_identification | Optional | Boolean | Omit secure identification, use for example when creating orders of company subscriptions. Default value: false |
voucher_purchase | Optional | Boolean | Set to true to create free voucher. Note that the period needs to have payment method free and voucher purchase for the product must be enabled in PAP. Read more here |
voucher_details | Optional | Object | Voucher details object, Required if voucher_purchase is set to true |
expire_date |
Required | DateTime | Expire date for the voucher |
redeem_url |
Optional | String | Absolute URI to where the created voucher can be redeemed. Will default to the PCP. |
invoice_delivery_method | Optional | String | 'mail' or 'email'. Delivery method of the invoice, only applicable when payment method is invoice. Requires support in the subscription system integration |
client_info | Optional | Object | Information about the client, such as browser information. |
user_agent |
Required | String | User agent |
language |
Required | String | Client langague |
ip_address |
Required | String | Client ip address |
custom_urls | Optional | Object | Information about custom URL's, ie. where to send the user afterwards |
reset_password_url |
Optional | String | Absolute URI to a page allowing the customer to reset their current password |
return_url |
Optional | String | Absolute URI to where the customer should be redirected after resetting their password via the reset_password_url |
Curl Example¶
curl --request POST \
--url https://payway-api.stage.adeprimo.se/external/api/v4/accounts/create_order \
--header 'accept: application/json' \
--header 'authorization: Bearer <token-without-identity>' \
--header 'content-type: application/json' \
--data '{
"account": {
"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"
}'
Response¶
Field | Description |
---|---|
id | id of the order |
order_id | order_id of the order |
payment_id | id of the payment |
account_id | id of the account created or located |
account_status | created or known, indicating if the account was created or located using the supplied email address |
HTTP 201 Created
{
"id": "ADEPRIMO-1234",
"order_id": "ADEPRIMO-1234",
"payment_id": "AAABBBCCDD11223344",
"account_id": "685a4768edce2c5e6f000002",
"account_status": "created|known"
}
Errors¶
This API uses the common error conventions of the Payway API