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 (
.p12file) for SIFEN authentication
# 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
Keep your credentials secure! Never commit
sifen.properties with real credentials to version control.The server will start on port
8000 by default. You should see output indicating the server is running.Development mode includes hot-reload, so changes to your code will be automatically reflected without restarting the server.
curl -X POST http://localhost:8000/consulta/ruc \
-H "Content-Type: application/json" \
-d '{"ruc": "80012345-6"}'
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/:
- Swagger UI: http://localhost:8000/doc/swagger
- Redoc: http://localhost:8000/doc/redoc
- Stoplight: http://localhost:8000/doc/stoplight
- RapiDoc: http://localhost:8000/doc/rapidoc
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, modifysrc/main/resources/application.properties:
Certificate path errors
Ensure the certificate path insifen.properties uses absolute paths:
Connection to SIFEN fails
Verify:- Your credentials are correct
- The certificate password is accurate
- You’re using the correct environment (
testorprod) - Your network allows connections to SIFEN servers