Table of Contents

FinancialDocuments

Endpoints relacionados con los documentos.

Los documentos pueden ser del siguiente tipo:

  • Factura de suplidor
  • Factura de taller
  • Nota de crédito de suplidor
  • Nota de crédito de taller

Endpoint Método Descripción
/financialDocuments/ POST Recibe un documento de infopiezas.net

POST /financialDocuments

Recibe un documento y lo registra en el sistema de la aseguradora. Se recibe un objeto en el body del mensaje con los datos del documento.

Se envia un documento con la siguiente estructura:

{
    "documentId": 38,
    "documentGuid": "df756002-960f-495b-9319-0ca9dc80a5c5",
    "documentStatusId": 33,
    "documentStatusName": "Creado",
    "documentTypeId": 1,
    "documentTypeName": "Factura",
    "entityTypeId": 1,
    "entityTypeName": "Suplidor",
    "documentDate": "2024-07-23",
    "requestId": 129754,
    "purchaseOrderId": 24724,
    "serviceOrderId": null,
    "insurancePolicyNumber": "434",
    "insuranceClaimNumber": "545454",
    "taxReceipt": {
      "taxReceiptCode": "01",
      "taxReceiptPrefix": "B01",
      "taxReceiptTypeName": "Factura de crédito fiscal",
      "taxReceiptNumber": "B01123123123",
      "relatedTaxReceiptNumber": null,
      "taxReceiptExpiration": "2024-07-03"
    },
    "relatedDocumentId": null,
    "createdBy": {
      "personId": 1007,
      "identification": "130077999",
      "personName": "ABC Auto Parts, SRL"
    },
    "createdByDisplayName": "Juan Alberto Castillo",
    "createdTo": {
      "personId": 1005,
      "identification": "102444444",
      "personName": "Seguros ABC"
    },
    "creationDateUtc": "2024-07-23T20:05:00.000Z",
    "comments": "",
    "taxTotalAmount": 918.36,
    "discountTotalAmount": 498,
    "subtotalAmount": 5600,
    "totalAmount": 6020.36,
    "currency": {
      "code": "DOP",
      "currencyName": "Pesos Dominicanos"
    },
    "paymentTermName": "30 días",
    "paymentTermDays": 30,
    "items": [
      {
        "documentItemId": 104,
        "documentItemName": "BUMPER DELANTERO",
        "quantity": 1,
        "unitPrice": 2500,
        "unitTaxAmount": 0,
        "unitDiscountAmount": 250,
        "rowTotal": 2250
      },
      {
        "documentItemId": 105,
        "documentItemName": "BUMPER TRASERO",
        "quantity": 1,
        "unitPrice": 3100,
        "unitTaxAmount": 0,
        "unitDiscountAmount": 248,
        "rowTotal": 2852
      }
    ],
    "attachments": []
  }

FinancialDocumentDetails

Atributo Tipo de datos Descripción
DocumentId int Número del documento
DocumentGuid Guid Guid del documento
DocumentStatusId byte Id del estatus del documento
DocumentStatusName string Nombre del estatus del documento
DocumentTypeId short Id tipo de documento
DocumentTypeName string Nombre del tipo de documento
EntityTypeId short Id tipo de entidad que emite el documento
EntityTypeName string Nombre tipo de entidad que emite el documento
DocumentDate DateOnly Fecha a que corresponde el documento en formato YYYY-MM-DD
RequestId int? Id de la licitación relacionada (si aplica)
PurchaseOrderId int? Id de la orden de compra relacionada (si aplica)
ServiceOrderId int? Id de la orden de servicio relacionada (si aplica)
InsurancePolicyNumber string Número de póliza
InsuranceClaimNumber string Número de reclamo
TaxReceipt TaxReceiptDetails Datos del comprobante fiscal
RelatedDocumentId int? Documento relacionado (si aplica)
CreatedBy PersonDetails Empresa que emite el documento
CreatedByDisplayName string Nombre del usuario que registró el documento
CreatedTo PersonDetails Empresa a la que se emite el documento
CreationDateUtc DateTime Fecha de creación en el sistema
Comments string Comentarios
TaxTotalAmount decimal Monto total de impuestos
DiscountTotalAmount decimal Monto total de descuentos
SubtotalAmount decimal Monto subtotal
TotalAmount decimal Monto total del documento (subtotal - descuentos + impuestos)
Currency CurrencyDetails Moneda del documento
PaymentTermName string Descripción del término de pago
PaymentTermDays short Días de término de pago
Items List<ItemDetails> Detalle del documento
Attachments List<AttachmentDetails> Anexos

AttachmentDetails

Atributo Tipo de datos Descripción
AttachmentId int Id del anexo
AttachmentFilename string Nombre del anexo
ContentType string Content type del documento (Para más información ver http://en.wikipedia.org/wiki/Internet_media_type)
DocumentFileSizeBytes int Tamaño en bytes del documento
DocumentUrl string Url del documento

ItemDetails

Atributo Tipo de datos Descripción
DocumentItemId int Id del detalle
DocumentItemName string Nombre del producto o servicio
Quantity decimal Cantidad
UnitPrice decimal Precio unitario
UnitTaxAmount decimal Impuestos unitario
UnitDiscountAmount decimal Descuento unitario (monto)
RowTotal decimal Subtotal (Cantidad * (Precio unitario + Impuestos unitario - Descuento unitario))

PersonDetails

Atributo Tipo de datos Descripción
Identification string RNC de la empresa
PersonName int Nombre de la empresa

CurrencyDetails

Atributo Tipo de datos Descripción
Code string Código de la moneda
CurrencyName string Nombre de la moneda

TaxReceiptDetails

Atributo Tipo de datos Descripción
TaxReceiptCode string Código tipo de comprobante fiscal
TaxReceiptPrefix string Prefijo del tipo de comprobante fiscal
TaxReceiptTypeName string Nombre del tipo de comprobante fiscal
TaxReceiptNumber string Número de comprobante fiscal
RelatedTaxReceiptNumber string Número de comprobante fiscal relacionado (si aplica)
TaxReceiptExpiration DateOnly Fecha de vencimiento del comprobante fiscal en formato YYYY-MM-DD
Note

Los documentos JSON que aparecen aquí son solamente para fines ilustrativos y no necesariamente representa la última versión del objeto en el API. Se debe utilizar como referencia de desarrollo siempre el JSON que aparece en la documentación dinámica del endpoint correspondiente en Swagger.


  classDiagram
    class FinancialDocumentDetails {
        int DocumentId
        Guid DocumentGuid
        byte DocumentStatusId
        string DocumentStatusName
        short DocumentTypeId
        string DocumentTypeName
        short EntityTypeId
        string EntityTypeName
        DateOnly DocumentDate
        int? RequestId
        int? PurchaseOrderId
        int? ServiceOrderId
        TaxReceiptDetails TaxReceipt
        int? RelatedDocumentId
        PersonDetails CreatedBy
        string CreatedByDisplayName
        PersonDetails CreatedTo
        DateTime CreationDateUtc
        string Comments
        decimal TaxTotalAmount
        decimal DiscountTotalAmount
        decimal SubtotalAmount
        decimal TotalAmount
        CurrencyDetails Currency
        short? PaymentTermId
        string PaymentTermName
        List~ItemDetails~ Items
        List~AttachmentDetails~ Attachments
    }
    
    class AttachmentDetails {
        int AttachmentId
        string AttachmentFilename
        string ContentType
        int DocumentFileSizeBytes
        string DocumentUrl
    }
    
    class ItemDetails {
        int DocumentItemId
        string DocumentItemName
        decimal Quantity
        decimal UnitPrice
        decimal UnitTaxAmount
        decimal UnitDiscountAmount
        decimal RowTotal
    }
    
    class PersonDetails {
        string Identification
        int PersonName
    }
    
    class CurrencyDetails {
        string Code
        string CurrencyName
    }
    
    class TaxReceiptDetails {
        string TaxReceiptCode
        string TaxReceiptPrefix
        string TaxReceiptTypeName
        string TaxReceiptNumber
        string RelatedTaxReceiptNumber
        DateOnly TaxReceiptExpiration
    }


    
    FinancialDocumentDetails --|> "1" PersonDetails : CreatedBy
    FinancialDocumentDetails --|> "1" PersonDetails : CreatedTo
    FinancialDocumentDetails --|> "1" CurrencyDetails : Currency
    FinancialDocumentDetails --|> "1" TaxReceiptDetails : TaxReceipt
    FinancialDocumentDetails --|> "n" ItemDetails : Items
    FinancialDocumentDetails --|> "n" AttachmentDetails : Attachments
    

Respuesta

Se devuelve un objeto que incluye el número del documento en el sistema interno. Este número quedará registrado en infopiezas para referencia y aparecerá en pantalla al visualizar la factura.

  {
    "documentId": 0,
    "internalDocumentId": "string"
  }


classDiagram
    class CreatedFinancialDocumentResponse {
        int DocumentId
        string InternalDocumentId
    }


Atributo Tipo de datos Descripción
DocumentId int Id del documento en infopiezas.net (enviado en el documento)
InternalDocumentId string(50) Id del documento en el sistema de la empresa que recibe el documento
Note

Los documentos JSON que aparecen aquí son solamente para fines ilustrativos y no necesariamente representa la última versión del objeto en el API. Se debe utilizar como referencia de desarrollo siempre el JSON que aparece en la documentación dinámica del endpoint correspondiente en Swagger.


Tablas auxiliares

DocumentStatus

Indica el estatus del documento.

DocumentStatusId DocumentStatusName
33 Creado

DocumentTypes

Indica el tipo de documento.

DocumentTypeId DocumentTypeName
1 Factura
2 Nota de crédito

EntityTypes

Indica el tipo de entidad que emite el documento.

EntityTypeId TypeName
1 Suplidor
2 Taller