
You must have valid Evrotrust API credentials (API key and Vendor Number).
Base URL for the sandbox environment is https://et.test.iteco.bg/vendor/
Base URL for the production environment is https://v.evrotrust.com/vendor/
All requests are HTTP POST unless otherwise noted, with JSON payloads.
Authentication is done via Authorization header: Authorization: {{authorization_hash}}. See our guide on generating the Authorization header here.
Handle errors appropriately (e.g., 4xx/5xx responses with error codes).
Endpoint: POST /user/check/extended
Description: This endpoint returns detailed information about the Evrotrust user status and checks if the user has a valid Evrotrust account. Use this to verify if the user is registered and can proceed with signing
Important: You can send only one identifiying parameter (identificationNumber, email, phone) or mutiple - we recommend sending either identificationNumber or phone as the email has the possibility to not be verified yet resulting in a negative response.
Headers:
Content-Type: application/json
Authorization: {{authorization}}
Request Parameters:
Body: JSON object with user identifiers (e.g., phone number, email, or identification number).


If the user does not have an account or is invalid, handle accordingly (e.g., prompt them to register via the app).
Endpoint: POST /document/doc/online
Description: Send the file to a user or multiple users for signing via the Evrotrust application. Specify the document, signers, and a callback URL for notifications.
Headers:
Content-Type: multipart/form-data
Authorization: {{authorization}}
Important: Check out guide on how to create the publicKey here.
Request Parameters:
Body: multipart/form-data with two parameters: data="{{data}} - this contains the json body, document=@"/C:/Downloads/example.pdf - this contains the document path


The user will receive a push notification in the Evrotrust app to sign the document.
Endpoint: Your specified urlCallback from Step 2 (https://your-server.com/ )
Description: Evrotrust sends signing status updates to this URL. Implement a webhook to receive and process these notifications, which include the transaction ID and status (e.g., signed, rejected).


Process the callback to update your system. Validate the request (e.g., via signature or IP whitelist) for security.
For more information - check “Receive a Callback From Evrotrust” guide.
Endpoint: POST /document/status
Description: Check the signing status of a document using the transactionID from Step 2. This is useful for polling if you require it.

Authorization: {{authorization}}
Request Parameters:
Body: JSON with transactionID.


Poll this endpoint periodically until the desired status is reached.
Endpoint: POST /document/download
Description: Download a ZIP file containing the encrypted signed document using the transactionID.
Headers:
Content-Type: application/json
Authorization: {{authorization}}
Request Parameters:
Body: JSON with transactionID.


Save the ZIP file for the next step.
Description: After downloading the ZIP file, follow the our decryption guide to decrypt the signed file. The ZIP typically contains the encrypted signed PDF and additional files needed for decryption.
Steps:
Extract the ZIP file.
Use your private key (from integration setup) to decrypt the contents.
Refer to the decryption guide here.
If you encounter issues, refer to the full Evrotrust API documentation at https://developers.evrotrust.com/ .