# Facturel — robots.txt # https://facturel.com.ar/ # Ultima revision: 23/09/2026 (lista de bots de IA auditada contra la doc # oficial de cada proveedor; ver bloque 2) # =================================================================== # 1) Regla general (buscadores y todo lo demas) # =================================================================== User-agent: * Content-Signal: search=yes, ai-input=yes, ai-train=yes Allow: / Disallow: /upload.php Disallow: /descargar-csr.php Disallow: /subir-certificado.html Disallow: /certificados/ # (22/08/2026 bis) Aca habia un "Disallow: /index_v2.html" y un # "Disallow: /index.preview.html" para tapar los dos borradores de la landing # que todavia viven en el hosting. Se sacaron: bloquear el crawl impide que # Googlebot vuelva a bajar el archivo y por lo tanto que llegue a LEER el # que ambos ya tienen. El resultado no # es desindexarlas sino congelarlas como "Indexada aunque bloqueada por # robots.txt". Para sacarlas del indice hay que PERMITIR el crawl y dejar que # el noindex haga su trabajo; recien cuando Search Console las reporte fuera # del indice conviene borrarlas del hosting por FTP. # # (03/09/2026) "Disallow: /subir-certificado.html" SE QUEDA, y es una excepcion # DELIBERADA al razonamiento del parrafo de arriba. Se evaluo sacarlo con ese # mismo argumento (la pagina ya tiene noindex,nofollow en su linea 6, asi que # bloquear el crawl la congela en vez de desindexarla) y se decidio NO hacerlo: # - esa URL se le manda al emisor SIEMPRE con un token en el query, y el bot # la envia con preview_url:false, asi que destaparla no gana ninguna tarjeta # de vista previa: no hay beneficio que compensar; # - destaparla si le abre a cualquier rastreador una URL que lleva token. # El costo de dejarla bloqueada es una linea "Indexada aunque bloqueada" en # Search Console para una pagina que nadie busca. Se acepta. # # /certificados/ SI se queda bloqueado aunque su index.html tenga noindex: ahi # viven los .csr y .crt por sucursal y no se le abre el crawl a nadie para # ganar una linea en Search Console. upload.php y descargar-csr.php, igual. # # guia_certificado.html y excepcion.html (las otras dos del flujo RE) tienen # noindex y nunca estuvieron bloqueadas: se quedan como estan. # =================================================================== # 2) Rastreadores de IA - DECISION TOMADA (03/09/2026): TODOS PERMITIDOS # =================================================================== # El objetivo del negocio es que los asistentes RECOMIENDEN Facturel. Eso pasa # por dos vias distintas, y NO son lo mismo: # (a) recuperacion en vivo: el bot baja la pagina en el momento en que alguien # pregunta (OAI-SearchBot, ChatGPT-User, Perplexity-User, Claude-User, # Claude-SearchBot). Bloquearlos es desaparecer de la respuesta. # (b) memoria del modelo: lo que el modelo "sabe" sin buscar, que sale del # corpus de entrenamiento (GPTBot, ClaudeBot, CCBot, meta-externalagent) o # del permiso de uso (Google-Extended, Applebot-Extended). # Para una marca CON prensa y contenido propio lo habitual es permitir (a) y # bloquear (b): el vivo trae trafico y el entrenamiento regala un activo. Aca se # permiten las dos A PROPOSITO, y por un motivo concreto: Facturel no tiene # resenas de terceros, ni prensa, ni fichas en directorios. Estar en el corpus es # la UNICA forma de que un modelo nombre "Facturel" sin que le pasen el link. # Y no hay nada que proteger: todo lo indexable es copy de marketing que la # empresa paga por difundir; no hay paywall ni dato propietario que pierda valor # al ser citado. CUANDO EXISTAN RESENAS Y PRENSA, SE REVISA ESTA DECISION. # # Bot por bot, por que cada uno esta en la lista. (23/09/2026) Auditada nombre # por nombre contra la pagina OFICIAL de cada proveedor; entre corchetes, la # fuente. Regla: no se agrega un token que el proveedor no publique. # OpenAI [developers.openai.com/api/docs/bots] # GPTBot corpus de OpenAI -> memoria del modelo # OAI-SearchBot indice de ChatGPT Search -> canal de mencion # ChatGPT-User fetch en vivo del usuario -> lee la pagina que le pasan # Anthropic [support.claude.com, articulo 8896518] # ClaudeBot corpus de Anthropic -> memoria del modelo # Claude-SearchBot indice de busqueda de Claude -> canal de mencion # Claude-User fetch en vivo del usuario -> lee la pagina que le pasan # Claude-Web nombre VIEJO, ya no documentado -> por si un UA viejo vuelve # anthropic-ai nombre VIEJO, ya no documentado -> idem Claude-Web # Google [developers.google.com/search/docs/crawling-indexing/google-common-crawlers] # Google-Extended NO rastrea: permiso de uso (Gemini) -> explicito, ver abajo # Google-CloudVertexBot rastreos para agentes de Vertex AI -> costo cero # (Googlebot, que alimenta AI Overviews y AI Mode, cae en el grupo "*") # Microsoft [bing.com/webmasters, "Which crawlers does Bing use"] # bingbot indice de Bing -> Copilot se apoya en ESE indice # Perplexity [docs.perplexity.ai/guides/bots] # PerplexityBot indice de Perplexity -> Perplexity cita CON link: es trafico # Perplexity-User fetch en vivo -> idem # Apple [support.apple.com/119829] # Applebot Spotlight, Siri, Safari -> busqueda de Apple # Applebot-Extended NO rastrea: permiso de uso -> explicito, ver abajo # Meta [developers.facebook.com/docs/sharing/webmasters/web-crawlers] # meta-externalagent corpus e indice de Meta AI -> el producto CORRE sobre WhatsApp # meta-webindexer indice de busqueda de Meta AI -> canal de mencion # meta-externalfetcher fetch en vivo del usuario -> Meta avisa que puede no leer robots.txt # Mistral [docs.mistral.ai/robots] # MistralAI-User fetch en vivo (Le Chat / Vibe) -> lee la pagina que le pasan # MistralAI-Index indice de Mistral -> canal de mencion # MistralAI-Training corpus de Mistral -> memoria del modelo # DuckDuckGo [duckduckgo.com/duckduckgo-help-pages/results/duckassistbot] # DuckAssistBot respuestas de DuckAssist -> cita la fuente; no entrena # Amazon [developer.amazon.com/amazonbot] # Amazonbot productos y modelos de Amazon -> costo cero # Amzn-SearchBot busqueda de Alexa y Amazon -> canal de mencion # Amzn-User fetch en vivo de Alexa -> lee la pagina que le pasan # Common Crawl [commoncrawl.org/ccbot] # CCBot Common Crawl -> el multiplicador mas barato que hay # Otros con UA propio y pagina del operador: # Diffbot grafo de entidades -> vuelve a "Facturel" una ENTIDAD # ImagesiftBot imagenes (Hive, imagesift.com) -> son creativas de marketing # Timpibot buscador Timpi (timpi.io) -> costo cero # Bytespider ByteDance, SIN pagina oficial -> ver abajo # # Lo que NO esta, a proposito (23/09/2026): # cohere-ai se saco: Cohere publica que HOY no usa ningun bot para rastrear # (docs.cohere.com/docs/cohere-web-crawlers); el token circulaba # en listas de terceros, no en la del proveedor. # xAI (Grok) y DeepSeek no publican ningun token de rastreador. Los nombres # que circulan (GrokBot, xAI-Grok, DeepSeekBot) salen de # directorios de terceros. No se inventan: el grupo "*" ya los # deja pasar si algun dia se identifican. # YouBot sin pagina oficial vigente de You.com; mismo criterio. # # Google-Extended y Applebot-Extended NO rastrean: son interruptores de uso. Su # ausencia ya significa "permitido"; se escriben explicitos para que nadie los # cierre "por las dudas" mas adelante sin leer esto. # # Bytespider va permitido y SIN Crawl-delay: la directiva no es estandar y ese # bot esta documentado como que ignora robots.txt. Escribirla seria teatro. # # OJO AL FORMATO (RFC 9309): un bot usa el grupo MAS ESPECIFICO que lo nombra e # IGNORA el grupo "User-agent: *". Por eso los cuatro Disallow se repiten aca # abajo: si este grupo dijera solo "Allow: /", los rastreadores de IA dejarian # de heredar el bloqueo de /certificados/, donde viven los .csr y .crt. Y por # eso NO hay lineas en blanco entre los User-agent: los parsers ingenuos cortan # el grupo ahi. # # (09/09/2026) CONTENT-SIGNAL. Toda la decision de arriba vivia SOLO en estos # comentarios, que ninguna maquina lee. Las tres senales la escriben en el # formato que los rastreadores parsean (contentsignals.org / # draft-romm-aipref-contentsignals): # search = aparecer en un indice y ser linkeado # ai-input = que un modelo baje la pagina para responder AHORA (RAG) # ai-train = que el texto entre al corpus de entrenamiento # Las tres van en YES por el mismo motivo del bloque de arriba, no por descuido: # sin resenas ni prensa, estar en el corpus es la unica via a que un modelo diga # "Facturel" sin que le pasen el link, y no hay nada propietario que perder. # La directiva se hereda por grupo igual que Allow/Disallow y quien matchea el # grupo especifico IGNORA el "*", asi que esta repetida en los dos grupos por la # misma razon que los cuatro Disallow. Si manana se cierra ai-train, hay que # cambiarlo EN LOS DOS. User-agent: GPTBot User-agent: OAI-SearchBot User-agent: ChatGPT-User User-agent: ClaudeBot User-agent: Claude-SearchBot User-agent: Claude-User User-agent: Claude-Web User-agent: anthropic-ai User-agent: Google-Extended User-agent: Google-CloudVertexBot User-agent: bingbot User-agent: PerplexityBot User-agent: Perplexity-User User-agent: Applebot User-agent: Applebot-Extended User-agent: meta-externalagent User-agent: meta-webindexer User-agent: meta-externalfetcher User-agent: MistralAI-User User-agent: MistralAI-Index User-agent: MistralAI-Training User-agent: DuckAssistBot User-agent: Amazonbot User-agent: Amzn-SearchBot User-agent: Amzn-User User-agent: CCBot User-agent: Diffbot User-agent: ImagesiftBot User-agent: Timpibot User-agent: Bytespider Content-Signal: search=yes, ai-input=yes, ai-train=yes Allow: / Disallow: /upload.php Disallow: /descargar-csr.php Disallow: /subir-certificado.html Disallow: /certificados/ # Sitemap Sitemap: https://facturel.com.ar/sitemap.xml # Agentmap (ARD 6.1): manifiesto de recursos para agentes. Es al catalogo de # agentes lo que Sitemap es a los buscadores. Agentmap: https://facturel.com.ar/.well-known/ai-catalog.json