Order EU Qualified Website Authentication PSD2 Certificate
11 minute read
POST
Use this endpoint to order an EU Qualified Website Authentication Certificate compliant with Payment Services Directive 2 (PSD2). EU Qualified Website Authentication Certificate PSD2 is an eIDAS Qualified certificate issued to an organization for website authentication that meets the requirements of the PSD2.https://certcentral.digicert.eu/services/v2/order/certificate/eu_qwac_psd2
Warning
The EU Qualified Website Authentication certificate PSD2 is only available in CertCentral Europe. Only use the CertCentral Europe base URL,https://certcentral.digicert.eu/services/v2, to construct your EU Qualified Website Authentication certificate PSD2 API request.Example requests and responses
curl -X POST \
'https://certcentral.digicert.eu/services/v2/order/certificate/eu_qwac_psd2' \
-H 'Content-Type: application/json' \
-H 'X-DC-DEVKEY: {{api_key}}' \
-d ' {
"certificate": {
"common_name": "example.net",
"dns_names": [
"example.com",
"example.org"
],
"csr": "<redacted>",
"signature_hash": "sha256",
"psp_roles": [
"psp_as",
"psp_ai",
"psp_pi",
"psp_ic"
]
},
"dcv_method": "email",
"organization": {
"id": "12345",
"contacts": {
[
"contact_type": "verified_contact",
"first_name": "John",
"last_name": "Doe",
"telephone": "+12 345 678 9012",
"job_title": "Manager",
"email_address": "john.doe@example.com",
"pseudonym": "JohnDoe123",
"country": "US",
"city": "Lehi",
"state": "UT",
"zip": "84103"
]
}
},
"order_validity": {
"years": 1
},
"payment_method": "balance",
}curl -X POST \
'https://certcentral.digicert.eu/services/v2/order/certificate/eu_qwac_psd2' \
-H 'Content-Type: application/json' \
-H 'X-DC-DEVKEY: {{api_key}}' \
-d ' {
"certificate": {
"common_name": "example.net",
"dns_names": [
"example.com",
"example.org"
],
"csr": "<redacted>",
"signature_hash": "sha256",
"psp_roles": [
"psp_as",
"psp_ai",
"psp_pi",
"psp_ic"
]
},
"dcv_method": "email",
"organization": {
"id": "12345",
"contacts": {
[
"contact_type": "verified_contact",
"country": "US",
]
}
},
"order_validity": {
"years": 1
},
"payment_method": "balance",
}{
"id": 112233,
"requests": [
{
"id": 113,
"status": "pending"
}
]
}{
"id": 112233,
"requests": [
{
"id": 113,
"status": "submitted"
}
]
}{
"id": 935608748,
"domains": [
{
"id": 5035737,
"name": "unbellicose-unawakable.net",
"dns_name": "unbellicose-unawakable.net"
}
],
"certificate_id": 937645001
}{
"id": 112233,
"certificate_id": 113
}Request parameters
| Name | Type | Req/Opt | Description |
|---|---|---|---|
| certificate | required | object | Certificate details. |
| .. common_name | required | string | Domain to be secured. |
| .. service_name | optional | string | Service name associated with the certificate. |
| .. dns_names | optional | array | Additional domains to be secured. Can result in additional costs. (See Best practices – Get both versions of a domain for free.) |
| .. csr | required | string | Certificate signing request (CSR) or public key in PEM format. Format the CSR/public key as a base64-encoded string without line breaks or escape characters. Include the PEM headers and footers (such as -----BEGIN CERTIFICATE REQUEST-----... and ...-----END CERTIFICATE REQUEST-----). For more information about generating a CSR, see Create a CSR.After placing the order, if the status of the order is pending, you can use the Update CSR endpoint to update the CSR. To check the status of the order, use the Order validation status endpoint.Note: The Services API does not extract information from the CSR to fill in the details of a certificate request. You must provide values for all relevant request parameters, including certificate.common_name, certificate.dns_names, and organization.id. If you are requesting a certificate for an organization without an existing ID, you must provide values for all required parameters of the organization object. |
| .. signature_hash | required | string | Hash algorithm used for signing the certificate. EU Qualified certificates support only SHA-256 hash algorithm. |
| .. psp_roles | required | array | Payment service provider roles. Allowed values: psp_as, psp_pi, psp_ai, or psp_ic.For more information, see Payment service provider roles. This parameter is for indicating existing roles and not for assigning new ones. Your organization must have these roles pre-registered with DigiCert before using the API. |
| dcv_method | optional | string | DCV method to use when verifying domain control. See Glossary – DCV methods. |
| organization | required | object | Object with information about the organization to associate with the request. You can associate the request with an existing organization, or you can create a new organization when you submit the order request. To associate the request with an existing organization, pass the ID of the organization as the value of organization.id in the body of your request. To create a new organization, include the details of the organization in the organization object. For more information about the structure and required parameters of the organization object, see the Create organization documentation.Note: When you submit an order with organization details instead of providing an organization ID, we check the organizations that already exist in your account to avoid creating a duplicate. To override this behavior and force the request to create a new organization, set the organization.skip_duplicate_org_check parameter to true in the body of your request.Important: When you want to associate an order with an existing organization, we recommend always using the ID of the organization instead of the organization’s details in the body of your request. To get the ID values for organizations in your account, use the List organizations endpoint. Additionally, we recommend deactivating unused organizations to ensure they are never accidentally assigned to a new order request. To deactivate an organization, use the Deactivate organization endpoint. |
| .. id | required | integer | The ID of an existing organization to associate with the order. To get the ID of organizations in your account, use the List organizations endpoint. *Not required if you are creating a new organization with your request. For details on how to create a new organization, see Create organization. |
| .. contacts | conditional | array | List of contacts for the organization. |
| When creating a new organization: | |||
| Providing a verified_contact is required for EU Qualified Website Authentication PSD2 certificates. You can add multiple verified contacts, with a maximum limit of fifteen. | |||
| For EU certificates, the verified contact is your organization’s Authorized Representative. The authorized representative must be included in the company registry, must represent the organization, and has the authority to approve your EU Qualified Website Authentication PSD2 certificate order. | |||
| Providing an organization_contact is conditional. An organization_contact is required if the request is from a service user. If omitted, the organization is created and the authenticated user is used as the organization contact. | |||
| Providing a technical_contact is optional. If omitted, the organization is created with no technical contact. | |||
| When using an existing organization ID: | |||
| Providing an organization_contact and technical_contact is optional. If provided, the new organization and technical contact replace the existing contacts stored on the organization. | |||
| Providing a verified_contact is optional if the organization has already been submitted for EU Qualified Website Authentication PSD2 certificates. | |||
| Providing a verified_contact is required if the organization has never been submitted for EU Qualified Website Authentication PSD2 certificates. | |||
| Note: By default, DigiCert creates the order with the organization contact and technical contact (if one exists) assigned to the organization on the request. To create the order with a different organization or technical contact than those assigned to the organization, include the organization_contact or technical_contact object at the root of the request payload. | |||
| .. .. contact_type | required | string | Contact type. |
| Allowed values: organization_contact, technical_contact, or verified_contact. | |||
| .. .. first_name | optional | string | If you are creating a new authorized representative, enter the first name of the new contact. Note: Required when omitting user_id. If user_id is not omitted, the specified user’s information will be updated with the new value. |
| .. .. last_name | optional | string | If you are creating a new authorized representative, enter the last name of the new contact. Note: Required when omitting user_id. If user_id is not omitted, the specified user’s information will be updated with the new value. |
| .. .. job_title | optional | string | If you are creating a new authorized representative, enter the job title of the new contact. Note: Required when omitting user_id. If user_id is not omitted, the specified user’s information will be updated with the new value. |
| .. .. telephone | optional | string | If you are creating a new authorized representative, enter the telephone number of the new contact. Note: Required when omitting user_id. If user_id is not omitted, the specified user’s information will be updated with the new value. |
| optional | string | If you are creating a new authorized representative, enter the email address of the new contact. Note: Required when omitting user_id. If user_id is not omitted, the specified user’s information will be updated with the new value. | |
| pseudonym | optional | string | The pseudonym acts as a unique reference or an identifier of the authorized representative or the verified contact within the system. Organizations sometimes use a pseudonym to provide an extra layer of privacy or protect the real names of individuals involved in financial services. This can help meet regulatory or auditing requirements while ensuring the individual’s identity remains traceable without revealing personal details. |
| .. .. country | required | string | Two-letter country code for an authorized representative’s country. |
| .. .. city | optional | string | If you are creating a new authorized representative, enter the city in which the representative is located. |
| .. .. state | optional | string | If you are creating a new authorized representative, enter the state or province of the representative. |
| .. .. zip | optional | string | If you are creating a new authorized representative, enter the ZIP or postal code of the representative. |
| .. server_platform | optional | object | Server platform type. See Glossary – Server platforms. Default:-1 (other) |
| .. .. id | required | int | Server platform ID. See Glossary – Server platforms |
| .. profile_option | optional | string | If using custom certificate profiles, specify the profile name. Allowed values: See Glossary – Certificate profile options. |
| renewed_thumbprint -or- renewal_of_order_id | optional | string | Enter the order ID or the SHA-1 thumbprint of the certificate that is being renewed (for renewal orders only). For more information, see How to check a certificate’s thumbprint. |
| custom_expiration_date | optional | string | A custom expiration date for the certificate. Overrides cert_validity.days and cert_validity.years. Format: dd MMM YYYY (for example, “09 JUN 2021”) Range: Must be within 397 days of the date you request the certificate. |
| .. order_validity | optional | object | Defines the validity period of certificates issued for this order. Cannot exceed order validity period. If not provided, or if the certificate validity date is less than 365 days from the current date, the certificate’s validity period defaults to the validity period of the order or the maximum certificate validity period defined by CA/B Forum baseline requirements, whichever is shorter. This object is not used for requests from accounts that do not have Multi-year Plans enabled. |
| .. .. years | optional | int | Number of years the certificate is valid after it is issued. Can be replaced with cert_validity.days or cert_validity.custom_expiration_date. Allowed value: 1, 2, or 3 |
| .. .. days | optional | int | Number of days the certificate is valid after it is issued. Overrides cert_validity.years. Max: 397 |
| .. .. custom_expiration_date | optional | string | A custom expiration date for the certificate. Overrides cert_validity.days and cert_validity.years. Format: dd MMM YYYY (for example, “09 JUN 2021”) Range: Must be within 397 days of the date you request the certificate. |
| payment_method | optional | string | Payment method for the order. Allowed values: |
| credit_card | required (if payment_method is card) | object | Object with information about the credit card charged for the order. Required if payment_method is card. |
| .. number | required | string | Credit card number. |
| .. expiration_month | required | string | Credit card expiration month. Format as a two-digit number between 01 (Jan) and 12 (Dec). |
| .. expiration_year | required | string | Credit card expiration year. Format as a four-digit number. For example: 2026 |
| .. cvv | required | string | Card verification value (CVV). Format as a three- or four-digit number. For example: 333 or 4444 |
| .. cardholder_name | required | string | Cardholder’s first and last name. |
| .. save_credit_card | optional | null | Specify whether to save the credit card details. true for saving the details, false for not saving the details, and null for not indicating the preference.Allowed Values: true, false, or null. |
| .. set_as_default | required | string | Set the card as the default payment option or method. To set this card as your default payment method, use 1. To keep your default payment method, use 0.Allowed Values: 1 or 0. |
| .. sca_token | optional | string | Strong Customer Authentication (SCA) token. SCA is a security measure implemented under the PSD2 in the European Union. It requires a multi-factor authentication process to verify the identity of a customer before authorizing a payment. |
| billing_address | conditional | object | Object with information about the billing address. Required if payment_method is card. |
| .. address | required | string | Billing street address. |
| .. address2 | optional | string | Continuation of street address. |
| .. city | required | string | Billing city. |
| .. state | conditional | string | Billing state or province. Optional for some countries. |
| .. country | required | string | Billing country. |
| .. zip | conditional | string | Billing zip or postal code. Optional for some countries. |
Response parameters
| Name | Type | Description |
|---|---|---|
| id | int | Order ID. |
| organization | object | Container for new organization details. Only returned if a new organization was created with the order. |
| .. id | int | Organization ID for the new organization. |
| requests | array | Contains information about the request. |
| .. id | int | Request ID. |
| .. status | string | Request status. Possible values:pending, submitted, approved, rejected |
| certificate_id | int | Certificate ID. Returned if request status is approved. |
After placing the order, go to the EU (eIDAS) products page in the CertCentral platform documentation, select the relevant certificate order link, and view the What’s Next subsection to carry out the subsequent tasks.
Alternatively, you can order the EU Qualified Website Authentication PSD2 certificate through the CertCentral Europe platform. For more information, see Order your EU Qualified Website Authentication Certificate PSD2.
Was this page helpful?
Provide feedback