Skip to main content
This guide will help you quickly set up JSIFEN and make your first API call to Paraguay’s SIFEN electronic invoicing system.

Prerequisites

Before you begin, ensure you have:
  • Java 17+ installed (Java 21 LTS recommended)
  • Git for cloning the repository
  • SIFEN credentials: ID CSC and CSC code
  • PKCS12 certificate (.p12 file) for SIFEN authentication
1
Clone the repository
2
Clone the JSIFEN repository to your local machine:
3
git clone https://github.com/your-org/jsifen.git
cd jsifen
4
Configure SIFEN credentials
5
Edit the src/main/resources/sifen.properties file with your credentials:
6
# SIFEN Environment (prod/test)
sifen.ambiente=test
sifen.id-csc=0001
sifen.csc=your-csc-code-here
sifen.keystore.path=/path/to/your/certificate.p12
sifen.keystore.password=your-certificate-password
7
Keep your credentials secure! Never commit sifen.properties with real credentials to version control.
8
Start the development server
9
Run JSIFEN in development mode:
10
./gradlew quarkusDev
11
The server will start on port 8000 by default. You should see output indicating the server is running.
12
Development mode includes hot-reload, so changes to your code will be automatically reflected without restarting the server.
13
Verify the installation
14
Check that the server is running and can connect to SIFEN:
15
curl http://localhost:8000/health/sifen/test
16
You should receive a response indicating the connection status:
17
{
  "status": "UP",
  "timestamp": "2026-03-08T10:30:00Z"
}
18
Make your first API call
19
Let’s query information about a RUC (tax identification number):
20
curl -X POST http://localhost:8000/consulta/ruc \
  -H "Content-Type: application/json" \
  -d '{"ruc": "80012345-6"}'
21
Or consult an electronic document by CDC (Control Code):
22
curl -X POST http://localhost:8000/consulta/de/json \
  -H "Content-Type: application/json" \
  -d '{"cdc": "12345678901234567890123456789012345678901234"}'

Next Steps

Explore the API

View the complete API documentation in Swagger UI

Production Deployment

Learn how to build and deploy JSIFEN to production

API Reference

Detailed documentation for all endpoints

Configuration

Advanced configuration options

Interactive API Documentation

JSIFEN includes multiple API documentation formats accessible at /doc/:
All documentation interfaces provide the same API information in different formats. Choose the one you prefer!

Common Issues

Port already in use

If port 8000 is already in use, modify src/main/resources/application.properties:
quarkus.http.port=8080

Certificate path errors

Ensure the certificate path in sifen.properties uses absolute paths:
# Linux/macOS
sifen.keystore.path=/home/user/certificates/cert.p12

# Windows
sifen.keystore.path=C:/certificates/cert.p12

Connection to SIFEN fails

Verify:
  • Your credentials are correct
  • The certificate password is accurate
  • You’re using the correct environment (test or prod)
  • Your network allows connections to SIFEN servers

Build docs developers (and LLMs) love