Saltar a contenido

Cliente dll

Solmicro.DigitalHub.Client.dll está desarrollado en .NetStandard 2.0. En ella se pueden encontrar diferentes clases en las que se encontrarán las funciones necesarias para operar con distintos documentos. Por ejemplo:

  • InvoicingClient es la clase para operar con los endpoint de la API de Invoicing empleados principalmente por Veri*Factu y TicketBAI.
  • AccountingBookClient es la clase para operar con los endpoint de la API de AccountingBook empleados principalmente por Batuz Bizkaia y SII.

Esta DLL se podrá usar buscando Zucchetti.SDH.Client en el siguiente repositorio Nuget. Desde Visual Studio se puede localizar como se indica en la imagen siguiente: Nuget

Para utilizar Solmicro.DigitalHub.Client.dll es necesario instanciarla junto a Newtonsoft.Json.dll y parametrizarla de las siguientes formas:

Autenticación basada en certificados accesibles por la aplicación de terceros

string companyId = ""; // El identificador único de la empresa.
                       // Suministrado por los administradores de SDH
string installationId = ""; // El identificador de Instalación.
                            // Suministrado por los administradores de SDH
                            // Un companyId podría tener asociados varios
                            // installationId
string serviceUrl = ""; // La url del servicio web de SDH
SDHAuthorization auth = new ()
{
    // Instancia de tipo Certificate
    // para obtener el certificado del que se ha facilitado
    // a los administradores de SDH el Thumbprint
    //
    //new Certificate(x509Certificate2)
    //new Certificate(serialNumberOrHash)
    //new Certificate(fromFileName, passwordFromFileName)
};

InvoicingClient client = new InvoicingClient(); //Para endpoints de Invoicing
//AccountingBookClient client = new AccountingBookClient(); //Para endpoints de AccountingBook
client.Set(companyId, installationId, serviceUrl, auth);

Autenticación basada en Azure

string companyId = ""; // El identificador único de la empresa.
                       // Suministrado por los administradores de SDH
string installationId = ""; // El identificador de Instalación.
                            // Suministrado por los administradores de SDH
                            // Un companyId podría tener asociados varios
                            // installationId
string serviceUrl = ""; // La url del servicio web de SDH
SDHAuthorization authAzureOption1 = new ()
{
    clientId = "", // Identificador del cliente en Azure
    clientSecret = "" // Secreto del cliente en Azure
};
SDHAuthorization authAzureOption2 = new ()
{
    clientId = "", // Identificador del cliente en Azure
    certificate =
    // Instancia de tipo Certificate
    //
    //new Certificate(x509Certificate2)
    //new Certificate(serialNumberOrHash)
    //new Certificate(fromFileName, passwordFromFileName)
};

InvoicingClient client = new InvoicingClient(); //Para endpoints de Invoicing
//AccountingBookClient client = new AccountingBookClient(); //Para endpoints de AccountingBook
client.Set(companyId, installationId, serviceUrl, authOption);

Clase Certificate

Mediante la clase Certificate se obtiene el certificado. Admite constructores con:

  • X509Certificate2: Un objeto de la clase X509Certificate2.
  • serialNumberOrHash: Un string con el SerialNumber o el Thumbprint para localizar el certificado instalado en el almacén personal del usuario en el equipo que consume la integración. Tiene que estar instalado como exportable.
  • fromFileName y passwordFromFileName: Ruta a un archivo cuyo contenido es un certificado, y la contraseña de dicho certificado.