{
  "$schema": "https://json-schema.org/draft/2020-12/schema",
  "$id": "https://artifacts.apis.io/facture-ar/json-schema/facture-ar-arca-import-schema.json",
  "title": "ArcaImport",
  "description": "Un relevamiento de los comprobantes que ARCA ya autorizó para un CUIT, y su importación a Facturear",
  "x-generated": "2026-11-10",
  "x-method": "derived",
  "x-generator": "derive-json-schema.py",
  "x-source": "openapi/facture-ar-importar-desde-arca-api-openapi.yml#/components/schemas/ArcaImport",
  "type": "object",
  "properties": {
    "id": {
      "type": "string"
    },
    "status": {
      "type": "string",
      "enum": [
        "scanning",
        "ready",
        "importing",
        "done",
        "error",
        "cancelled"
      ],
      "description": "scanning: relevando; ready: relevado, listo para importar; importing: importando; done, error o cancelled"
    },
    "range": {
      "type": "string",
      "enum": [
        "mes",
        "anio",
        "anio-pasado"
      ]
    },
    "rangeLabel": {
      "type": "string"
    },
    "from": {
      "type": [
        "string",
        "null"
      ],
      "description": "Primer día incluido (DD/MM/AAAA)"
    },
    "to": {
      "type": [
        "string",
        "null"
      ],
      "description": "Último día incluido (DD/MM/AAAA)"
    },
    "imported": {
      "type": "integer"
    },
    "skipped": {
      "type": "integer"
    },
    "gaps": {
      "type": "integer"
    },
    "errorMessage": {
      "type": [
        "string",
        "null"
      ]
    },
    "updatedAt": {
      "type": "string",
      "format": "date-time"
    },
    "pointsOfSale": {
      "type": "array",
      "items": {
        "type": "integer"
      }
    },
    "segments": {
      "type": "array",
      "description": "Un tramo por punto de venta y tipo de comprobante",
      "items": {
        "type": "object",
        "properties": {
          "ptoVta": {
            "type": "integer"
          },
          "cbteTipo": {
            "type": "integer"
          },
          "cbteTipoName": {
            "type": "string"
          },
          "lastNumber": {
            "type": "integer"
          },
          "fromNumber": {
            "type": [
              "integer",
              "null"
            ]
          },
          "toNumber": {
            "type": [
              "integer",
              "null"
            ]
          },
          "fromDate": {
            "type": [
              "string",
              "null"
            ]
          },
          "toDate": {
            "type": [
              "string",
              "null"
            ]
          },
          "inRange": {
            "type": "integer"
          },
          "already": {
            "type": "integer",
            "description": "Ya estaban en Facturear"
          },
          "pending": {
            "type": "integer"
          },
          "note": {
            "type": [
              "string",
              "null"
            ]
          },
          "resolved": {
            "type": "boolean"
          }
        }
      }
    },
    "totals": {
      "type": "object",
      "properties": {
        "inRange": {
          "type": "integer"
        },
        "already": {
          "type": "integer"
        },
        "pending": {
          "type": "integer"
        }
      }
    },
    "scan": {
      "type": [
        "object",
        "null"
      ],
      "description": "Avance del relevamiento; null cuando terminó",
      "properties": {
        "phase": {
          "type": "string",
          "enum": [
            "puntos",
            "numeracion",
            "fechas"
          ]
        },
        "done": {
          "type": "integer"
        },
        "total": {
          "type": "integer"
        }
      }
    },
    "cursor": {
      "type": [
        "object",
        "null"
      ],
      "description": "Por dónde va la importación",
      "properties": {
        "ptoVta": {
          "type": "integer"
        },
        "cbteTipoName": {
          "type": "string"
        },
        "next": {
          "type": "integer"
        },
        "toNumber": {
          "type": "integer"
        }
      }
    }
  }
}