How to Set Up Your Own e-Sign Microservice

Jul 1, 2024 | Programming

Welcome! In this guide, we’re diving into how to set up the e-Sign Microservice, an open-source solution that allows businesses to securely sign documents online. This service gives you control, flexibility, and cost savings compared to third-party e-signing platforms. Let’s get started!

Table of Contents

Features

  • Securely sign documents.
  • Produces secured artifacts (Signed PDF Documents) that can’t be tampered with after digital signing.
  • Compliance with the e-Sign Act and regulatory standards.
  • Cost-efficient and scalable.
  • Channel-agnostic design for seamless integration across platforms.
  • Built using a tech stack including Spring Boot, Java, MySQL, and various cloud services.

Demo

To see the e-Sign Microservice in action, check out the following demo repositories:

You can also view a sample loan agreement here: Master-Promissory-Note.pdf

Prerequisites

Before you can set up the e-Sign Microservice, ensure you have the following installed:

  • Java JDK 8 or higher
  • MySQL database
  • An AWS Account (for S3 storage)

Setup & Installation

Follow these steps to set up the e-Sign Microservice:

  1. Clone the repository: Use the command git clone https://github.com/iCreateWorks/esigning.git to clone the repository to your local machine.
  2. Navigate to the project directory: Change into the cloned directory with cd esigning.
  3. Install Maven dependencies: Run mvn install to install the necessary dependencies.
  4. Configure Environment Variables: Set up the required environment variables as described in the Environment Variables section.
  5. Run the application: Execute java -jar target/esigning-0.0.1-SNAPSHOT.jar to start the service.

Environment Variables

To run this project, you will need to configure the following environment variables:

  • SPRING_ESIGN_DB_URL: JDBC URL for the database.
  • SPRING_ESIGN_DB_USER: Database username.
  • SPRING_ESIGN_DB_PASS: Database password.
  • S3_BUCKET_NAME: S3 bucket name.
  • S3_BUCKET_REGION: S3 bucket region.

Here’s a sample configuration for the application.properties file:


server.port=8081
server.servlet.context-path=/api/e-sign/v1
spring.esign.datasource.jdbc-url=jdbc:mysql://localhost:3306/e-sign?allowPublicKeyRetrieval=true&useSSL=false
spring.esign.datasource.username=e-sign
spring.esign.datasource.password=Password1
spring.esign.datasource.driver-class-name=com.mysql.cj.jdbc.Driver
spring.esign.datasource.minimumIdle=5
spring.esign.datasource.maxLifetime=120000
spring.jpa.database-platform=org.hibernate.dialect.MySQL5Dialect
spring.jpa.properties.hibernate.proc.param_null_passing=true
s3.bucket.name=esign-docs
s3.bucket.region=us-east-1
resign.entrust.keystore.passphrase=esignpassphrase
resign.entrust.cert.path=jks/entrust.p12
resign.entrust.pdf.owner.password=esignpdfownerpassword

Troubleshooting

If you encounter any issues during setup or execution, consider the following troubleshooting tips:

  • Database connection issues: Ensure your database is running, and the JDBC URL is correct.
  • Maven installation problems: Check that Maven is correctly installed and added to your PATH.
  • Environment variables not recognized: Double-check that all required environment variables are correctly set.
  • Application not starting: Look at console logs for exceptions or errors.

For more insights, updates, or to collaborate on AI development projects, stay connected with fxis.ai.

At fxis.ai, we believe that such advancements are crucial for the future of AI, as they enable more comprehensive and effective solutions. Our team is continually exploring new methodologies to push the envelope in artificial intelligence, ensuring that our clients benefit from the latest technological innovations.

Conclusion

By following the steps outlined above, you can successfully set up your e-Sign Microservice and enjoy the benefits of secure, efficient electronic signing. Happy coding!

Stay Informed with the Newest F(x) Insights and Blogs

Tech News and Blog Highlights, Straight to Your Inbox