HomeDocumentaciónAPI EndpointsNovedades
Log In
Novedades

[API FE PAN] Actualización dgi 13 - dic - 2024: agregado el nuevo campo 'otros gastos' en el objeto totales y mejoras en validaciones de teléfonos de sucursal y receptor de un documento electronico.

Mejoras en las validaciones para los telefonos.

Se han agregado nuevas validaciones para el campo telephone, las cuales se aplican tanto al crear o actualizar una sucursal, como a la propiedad telephones.[*] dentro del objeto receiver al emitir un documento electrónico. Estas validaciones permiten solo los siguientes formatos de número de teléfono:

  • XXX-XXXX (Ejemplo: 123-4567)
  • XXXX-XXXX (Ejemplo: 1234-5678)
  • XXXXXX-XXX-XXXX (Ejemplo: 123456-789-1234)
  • XXXXXX-XXXX-XXXX (Ejemplo: 123456-7890-1234)
    Formato del teléfono:

Nota: El teléfono debe ser ingresado siguiendo exactamente uno de los formatos mencionados, con guiones en los lugares correspondientes. No se permitirán números sin los guiones ni con más o menos dígitos de los establecidos en los formatos válidos.

Ejemplo de una request para emitir una FE:

{
    "information": {
        "issueType": "01",
        "documentType": "01",
        "numeration": "0000002175",
        "billingPoint": "001",
        "securityCode": "301525944",
        "cafe": {
            "format": 3,
            "delivery": 3
        },
        "nature": "01",
        "operationType": 1,
        "information": "",
        "destination": 1,
        "receiverContainer": 1,
        "saleType": 1,
        "issueDate": "2024-11-20T13:19:37-05:00"
    },
   "receiver": {
    "type": "01",
    "ruc": { "type": 2, "ruc": "000-00-00000" },
    "name": "Empresa",
    "address": "Monte Oscuro,Panamá",
    "location": {
      "code": "8-8-8",
      "correction": "Pueblo Nuevo",
      "district": "Panama",
      "province": "Panama"
    },
    "telephones": [
      "323-8700"  // Número de teléfono del receptor. Debe seguir uno de los siguientes formatos válidos:
                  // 1. "XXX-XXXX" (Ejemplo: "323-8700")
                  // 2. "XXXX-XXXX" (Ejemplo: "1234-5678")
                  // 3. "XXXXXX-XXX-XXXX" (Ejemplo: "123456-789-1234")
                  // 4. "XXXXXX-XXXX-XXXX" (Ejemplo: "123456-7890-1234")
    ],
    "emails": ["[email protected]"],
    "country": "PA"
  },
  "items": [
    {
      "number": "0001",
      "description": "Articulo ",
      "code": "0001",
      "unit": "und",
      "quantity": 1,
      "cpbs": { "code": "8210", "unit": "und" },
      "prices": {
        "transfer": 3925,
        "discount": 0,
        "transport": 0,
        "insurance": 0
      },
      "itbms": { "rate": "01" },
      "isc": { "rate": 0, "amount": 0 }
    }
  ],
  "totals": {
    "change": 0,
    "transport": 0,
    "insurance": 0,
    "paymentTime": 1,
    "paymentMethods": [{ "type": "01", "amount": 4199.75 }],
    "retention": { "code": 2, "amount": 137.38 },
  }
}


Nuevo campo otherExpenses en el objeto totals:

Se ha añadido un nuevo campo otherExpenses en el objeto totals, el cual es opcional y debe incluirse en el cálculo del total de la factura. Este campo representa el valor de otros gastos cobrados que se agregan al precio total de la transacción.

Detalles del campo otherExpenses:

  • Tipo: Número
  • Rango de valores: De 0 a 100,000,000,000
  • Campo DGI correspondiente:

Nota: Este valor debe ser sumado al total general para calcular el monto final reflejado en el campo (Valor total de la factura). Recuerda que este campo es opcional y debe ser usado cuando existan cargos cobrados en el precio total.

Ejemplo de la request de una FE:

{
    "information": {
        "issueType": "01",
        "documentType": "01",
        "numeration": "0000002175",
        "billingPoint": "001",
        "securityCode": "301525944",
        "cafe": {
            "format": 3,
            "delivery": 3
        },
        "nature": "01",
        "operationType": 1,
        "information": "",
        "destination": 1,
        "receiverContainer": 1,
        "saleType": 1,
        "issueDate": "2024-11-20T13:19:37-05:00"
    },
   "receiver": {
    "type": "01",
    "ruc": { "type": 2, "ruc": "000-00-00000" },
    "name": "Empresa",
    "address": "Monte Oscuro,Panamá",
    "location": {
      "code": "8-8-8",
      "correction": "Pueblo Nuevo",
      "district": "Panama",
      "province": "Panama"
    },
    "telephones": [
      "323-8700"
    ],
    "emails": ["[email protected]"],
    "country": "PA"
  },
  "items": [
    {
      "number": "0001",
      "description": "Articulo ",
      "code": "0001",
      "unit": "und",
      "quantity": 1,
      "cpbs": { "code": "8210", "unit": "und" },
      "prices": {
        "transfer": 3925,
        "discount": 0,
        "transport": 0,
        "insurance": 0
      },
      "itbms": { "rate": "01" },
      "isc": { "rate": 0, "amount": 0 }
    }
  ],
  "totals": {
    "change": 0,
    "transport": 0,
    "insurance": 0,
    "paymentTime": 1,
    "paymentMethods": [
      { 
        "type": "01",  
        "amount": 4419.77  // Monto total pagado en este método de pago. Este valor debe ser igual al total de la factura, considerando impuestos y otros cargos. 
      }
    ],
    "retention": { 
      "code": 2, 
      "amount": 137.38 
    },
    "otherExpenses": 220.02  // Valor de "Otros Gastos" cobrados en la transacción. Este campo es opcional y se suma al total de la factura (campo <dVTot>).
  }
}

Nota: Estos cambios están disponibles en nuestro ambiente de sandbox y se implementarán próximamente en el entorno final.