djhvscf / fe-hacienda-cr-dotnet

Conector en .NET para el API de CRLibre de Factura Electrónica en Costa Rica. API en https://github.com/CRLibre/API_Hacienda

Home Page:https://crlibre.org/factura-electronica/

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

fe-hacienda-cr-dotnet

Implementación y herramientas en .NET para la Factura Electrónica en Costa Rica

GitHub GitHub commit activity the past week, 4 weeks, year GitHub issues GitHub issues Telegram @CRLibreFE

Sobre CRLibre

Somos una comunidad de individuos y organizaciones que voluntariamente unimos esfuerzos para colaborar y compartir conocimiento, crear software libre para resolver problemas que enfrentamos en nuestra realidad en Costa Rica.

En este repositorio estamos compartiendo código en .NET útiles para proyectos que implementan la Factura Electrónica del Ministerio de Hacienda de Costa Rica.

Cómo colaborar

Cómo colaborar

Ver archivo CONTRIBUTING.md para más información

Sobre este Connector

Este conector está en ASP.NET MVC, la idea es realizar una aplicación que pueda interactuar con el API de CRLibre , por medio de un conector.

En la aplicación se encuentra un archivo en CRLibre/web.config donde encontraremos una variable “ApiServer” , en esta se debe escribir la URL de donde se encuentra el API.

Se creo una clase /CRLibre/Models/ApiConnect.cs que es el conector con el API al lado servidor de nuestra aplicación.

  • En la función PostApi() enviamos 3 parámetros los cuales son:
  • Dictionary<string, string> values (Los datos que se deseen enviar)
  • string module (Nombre del módulo del API = “w”)
  • string action (Nombre de la acción del módulo = “r” )

Ejemplo de uso del conector

//Se importa models en el casos de usar fuera de Models
using CRLibre.Models;
//Codigo...
.......
bool isAuthenticated = false;
string sessionKey = "";
try
{
    //Se crea un directorio de parámetros
    var values = new Dictionary<string, string>
    {
        { "userName", username },
        { "pwd", password }
    };
    //Se instancia la clase
    ApiConnect api = new ApiConnect();
    //Se llama la la funcion PostApi y se envian los parametros
    JToken jObjet = api.PostApi(values,"users", "users_log_me_in");
    //Se obtiene el objeto deseado
    sessionKey = (string)jObjet["sessionKey"];
    isAuthenticated = true;
}
catch (Exception e)
{
    //Normalmente ocurre error al no encontrar el objeto. se puede hacer un control más adecuado según sea necesario.
    return new AuthenticationResult("El usuario o la contraseña son incorrectos");
}

About

Conector en .NET para el API de CRLibre de Factura Electrónica en Costa Rica. API en https://github.com/CRLibre/API_Hacienda

https://crlibre.org/factura-electronica/

License:GNU Lesser General Public License v3.0


Languages

Language:JavaScript 70.4%Language:CSS 24.5%Language:C# 5.1%Language:ASP 0.0%