Minha Vero icon

Minha Vero data API: faturas, Wi-Fi and chips

Vero Internet · Telecom

Minha Vero is Vero Internet's subscriber app for fiber-broadband households in Brazil: after a CPF or CNPJ login that can be unlocked again with biometrics, customers open current invoices, pay or negotiate a bill, switch card versus automatic-debit collection, turn digital invoices on for email or WhatsApp, and change the contract's billing day. The same client resets the home Wi-Fi name and password, books or rates a technician visit, opens support tickets, and runs a transfer of ownership that asks for CPF plus RG or CNH from both the current and the new holder. A telefonia area covers extra mobile lines — plan details, NF-e, SIM activation, chip block and shipment tracking — plus add-ons such as Globoplay. It is the self-care channel for Vero's fiber footprint (Minas Gerais and other Brazilian markets sold under the Vero / Quero Vero brands), sitting alongside the public FAQ and speed-test sites rather than a generic national telco super-app.

Open faturas stamp data_vencimento and dia_cobranca next to link_pagamento, valorTotal, linhaDigitavel and pixCopiaCola, while collection method is either a card creditCardNumber/item_brand pair or bank debit under NOME_BANCO, COD_CLIE_DEBITO_EM_CONTA, agencia_numero and conta_numero. Digital delivery stores fatura_digital plus envio_por_email and envio_por_whatsapp. Residential access is a wifi_ssid with pppoe_username and statusConexao; field work is a bairro calendar that becomes data_hora_agendada. Ownership transfer carries both holders' cpf_cnpj; the móvel tab lists numero_simcard, status_chip and codigo_rastreio.

Collections teams reconcile open faturas against PIX copia-e-cola strings, field ops fill technician slots by neighbourhood, and helpdesks overlay Wi-Fi plus chip state without a second login. openData Studio turns that subscriber surface into callable open data.

Screenshots

  • Minha Vero screenshot 1
  • Minha Vero screenshot 2
  • Minha Vero screenshot 3
  • Minha Vero screenshot 4
  • Minha Vero screenshot 5
  • Minha Vero screenshot 6
  • Minha Vero screenshot 7

API surface

The endpoints and request/response examples below are reconstructed from the app's interface — illustrative, not a live capture.

  • Sign in to a subscriber session

    POST /v1/auth/subscriber-session osint

    Authenticates a Vero fiber subscriber and returns the session token plus the contract identifiers used by billing, Wi-Fi and support calls.

    Auth: Unauthenticated. JSON body with username (CPF/CNPJ or contract login) and password. The returned access_token is stored on-device and later unlocked with biometrics.

    • username
    • password
    • access_token
    • expires_in
    • token_expires_in
    • numero_contrato
    • id_contrato
    • cpf_cnpj
    POST /v1/auth/subscriber-session HTTP/1.1
    Content-Type: application/json
    
    {
      "username": "12345678901",
      "password": "********"
    }
    {
      "access_token": "<accessToken>",
      "expires_in": 86400,
      "token_expires_in": 86400,
      "numero_contrato": "C-88421",
      "id_contrato": "88421",
      "cpf_cnpj": "12345678901"
    }
  • Check whether a login already exists

    GET /v1/identity/lookup osint

    Checks whether a CPF/username is already provisioned, so the app can route the user to sign-in, password recovery or a new-lead form.

    Auth: Unauthenticated identity probe used on the sign-in and lead screens before password entry.

    • cliente_existe
    • username
    • cpf_cnpj
    GET /v1/identity/lookup?username=12345678901 HTTP/1.1
    {
      "cliente_existe": true,
      "username": "12345678901",
      "cpf_cnpj": "12345678901"
    }
  • Offer password-reset options for a username

    GET /v1/auth/credential-recovery/options osint

    Tells the recover-password screen which channels (SMS, email, WhatsApp) can reset the subscriber login before a code is sent.

    Auth: Unauthenticated. Query username is the CPF/CNPJ or contract login typed on the recover-password screen.

    • username
    • sms_enviado
    • email
    • whatsapp
    • password_reset_code
    GET /v1/auth/credential-recovery/options?username=12345678901 HTTP/1.1
    {
      "username": "12345678901",
      "sms_enviado": false,
      "email": "a***@example.com",
      "whatsapp": "55319****7766"
    }
  • Issue an invoice payment link

    GET /v1/billing/invoices/payment-link openfinance

    Returns the hosted checkout URL, amount, due date, boleto linhaDigitavel and PIX copia-e-cola for the subscriber's open fatura so the invoices screen can open pay / negotiate.

    Auth: Bearer access_token from POST /v1/auth/subscriber-session.

    • numero_contrato
    • id_fatura
    • erp_invoice_id
    • link_pagamento
    • valorTotal
    • data_vencimento
    • linhaDigitavel
    • pixCopiaCola
    • status
    GET /v1/billing/invoices/payment-link?numero_contrato=C-88421 HTTP/1.1
    Authorization: Bearer <accessToken>
    {
      "numero_contrato": "C-88421",
      "id_fatura": "FT-202610-88421",
      "erp_invoice_id": "88421-202610",
      "link_pagamento": "https://checkout.example/pay/ft-202610-88421",
      "valorTotal": 129.90,
      "data_vencimento": "2026-10-15",
      "linhaDigitavel": "23793.38128 60000.000003 00000.000000 1 00000000012990",
      "pixCopiaCola": "00020126...",
      "status": "VENCIDO"
    }
  • Fetch a debt-negotiation URL

    GET /v1/billing/invoices/negotiation-link openfinance

    Returns the hosted debt-negotiation session URL used when the subscriber taps to negotiate an overdue bill.

    Auth: Bearer access_token from POST /v1/auth/subscriber-session.

    • url
    • id_fatura
    • numero_contrato
    • valorTotal
    • status
    GET /v1/billing/invoices/negotiation-link?numero_contrato=C-88421&id_fatura=FT-202610-88421 HTTP/1.1
    Authorization: Bearer <accessToken>
    {
      "url": "https://pay.example/session/nf-441",
      "id_fatura": "FT-202610-88421",
      "numero_contrato": "C-88421",
      "valorTotal": 129.90,
      "status": "EM NEGOCIAÇÃO"
    }
  • Register a new recurring card

    POST /v1/billing/recurring-methods/card openfinance

    Persists a newly tokenized card as the contract's recurring collection method after the in-app checkout sheet closes.

    Auth: Bearer access_token from POST /v1/auth/subscriber-session. Card entry is handed to the Smart Checkout sheet before this persist call.

    • numero_contrato
    • creditCardNumber
    • item_brand
    • brand
    • forma_pagamento
    POST /v1/billing/recurring-methods/card HTTP/1.1
    Authorization: Bearer <accessToken>
    Content-Type: application/json
    
    {
      "numero_contrato": "C-88421",
      "creditCardNumber": "************4421",
      "item_brand": "MASTERCARD",
      "forma_pagamento": "CARTAO"
    }
    {
      "ok": true,
      "forma_pagamento": "CARTAO",
      "creditCardNumber": "************4421",
      "item_brand": "MASTERCARD",
      "brand": "MASTERCARD"
    }
  • List registered cards on the contract

    GET /v1/billing/recurring-methods/cards openfinance

    Reads the cards already on file so the recurrence-payment screen can show the active method or offer a swap.

    Auth: Bearer access_token from POST /v1/auth/subscriber-session.

    • cadastros
    • creditCardNumber
    • item_brand
    • brand
    • forma_pagamento
    GET /v1/billing/recurring-methods/cards?numero_contrato=C-88421 HTTP/1.1
    Authorization: Bearer <accessToken>
    {
      "cadastros": [
        {
          "creditCardNumber": "************4421",
          "item_brand": "MASTERCARD",
          "brand": "MASTERCARD",
          "forma_pagamento": "CARTAO"
        }
      ]
    }
  • Register automatic bank debit

    POST /v1/billing/recurring-methods/bank-debit openfinance

    Switches the contract onto automatic debit in the named bank account, the alternative to card recurrence.

    Auth: Bearer access_token from POST /v1/auth/subscriber-session.

    • numero_contrato
    • NOME_BANCO
    • COD_CLIE_DEBITO_EM_CONTA
    • agencia_numero
    • agencia_digito
    • conta_numero
    • conta_digito
    • forma_pagamento
    • FAT_CLIENTE_DEBITO_EM_CONTA
    POST /v1/billing/recurring-methods/bank-debit HTTP/1.1
    Authorization: Bearer <accessToken>
    Content-Type: application/json
    
    {
      "numero_contrato": "C-88421",
      "NOME_BANCO": "Banco do Brasil",
      "COD_CLIE_DEBITO_EM_CONTA": "001-12345-6",
      "agencia_numero": "1234",
      "agencia_digito": "5",
      "conta_numero": "12345",
      "conta_digito": "6",
      "FAT_CLIENTE_DEBITO_EM_CONTA": true,
      "forma_pagamento": "DEBITO_EM_CONTA"
    }
    {
      "ok": true,
      "forma_pagamento": "DEBITO_EM_CONTA",
      "NOME_BANCO": "Banco do Brasil",
      "COD_CLIE_DEBITO_EM_CONTA": "001-12345-6",
      "agencia_numero": "1234",
      "conta_numero": "12345",
      "FAT_CLIENTE_DEBITO_EM_CONTA": true
    }
  • Read the contract's debit account

    GET /v1/billing/recurring-methods/bank-debit-account openfinance

    Returns the bank debit currently attached to the contract so the payment-settings screen can show or cancel it.

    Auth: Bearer access_token from POST /v1/auth/subscriber-session.

    • forma_pagamento
    • NOME_BANCO
    • COD_CLIE_DEBITO_EM_CONTA
    • agencia_numero
    • conta_numero
    • numero_contrato
    • FAT_CLIENTE_DEBITO_EM_CONTA
    GET /v1/billing/recurring-methods/bank-debit-account?numero_contrato=C-88421 HTTP/1.1
    Authorization: Bearer <accessToken>
    {
      "forma_pagamento": "DEBITO_EM_CONTA",
      "NOME_BANCO": "Banco do Brasil",
      "COD_CLIE_DEBITO_EM_CONTA": "001-12345-6",
      "agencia_numero": "1234",
      "conta_numero": "12345",
      "FAT_CLIENTE_DEBITO_EM_CONTA": true,
      "numero_contrato": "C-88421"
    }
  • Switch the invoice to digital delivery

    PUT /v1/billing/invoices/digital-delivery openfinance

    Turns paper invoices off and sends the fatura to the subscriber's email and/or WhatsApp, matching the digital-invoice toggle.

    Auth: Bearer access_token from POST /v1/auth/subscriber-session.

    • numero_contrato
    • fatura_digital
    • envio_por_email
    • envio_por_whatsapp
    • email
    • whatsapp
    PUT /v1/billing/invoices/digital-delivery HTTP/1.1
    Authorization: Bearer <accessToken>
    Content-Type: application/json
    
    {
      "numero_contrato": "C-88421",
      "fatura_digital": true,
      "envio_por_email": true,
      "envio_por_whatsapp": true,
      "email": "[email protected]",
      "whatsapp": "5531999887766"
    }
    {
      "ok": true,
      "fatura_digital": true,
      "envio_por_email": true,
      "envio_por_whatsapp": true,
      "email": "[email protected]",
      "whatsapp": "5531999887766"
    }
  • Change the contract billing day

    POST /v1/billing/subscription/billing-day openfinance

    Updates the contract's collection day and the resulting due date after the due-date settings screen confirms the change.

    Auth: Bearer access_token from POST /v1/auth/subscriber-session.

    • numero_contrato
    • dia_cobranca
    • diaVencimento
    • dataPagamento
    • data_vencimento
    POST /v1/billing/subscription/billing-day HTTP/1.1
    Authorization: Bearer <accessToken>
    Content-Type: application/json
    
    {
      "numero_contrato": "C-88421",
      "dia_cobranca": 10,
      "diaVencimento": 15
    }
    {
      "ok": true,
      "dia_cobranca": 10,
      "diaVencimento": 15,
      "dataPagamento": "2026-10-15",
      "data_vencimento": "2026-10-15"
    }
  • List allowed billing days

    GET /v1/billing/subscription/billing-day-options openfinance

    Returns the due-day options the due-date settings screen can pick before the billing-day change is saved.

    Auth: Bearer access_token from POST /v1/auth/subscriber-session.

    • diasVencimento
    • diaVencimento
    • dia_cobranca
    GET /v1/billing/subscription/billing-day-options?numero_contrato=C-88421 HTTP/1.1
    Authorization: Bearer <accessToken>
    {
      "diasVencimento": [5, 10, 15, 20],
      "diaVencimento": 15,
      "dia_cobranca": 10
    }
  • Mint a Bemobi Smart Checkout embed token

    GET /v1/payments/checkout/embed-token openfinance

    Issues the short-lived embed token that the in-app card-entry checkout sheet needs before a card is persisted on the contract.

    Auth: Bearer access_token from POST /v1/auth/subscriber-session. Query key identifies the checkout merchant.

    • token
    • bemobi_recorrencia_token
    • token_expires_in
    • tokenExpiresIn
    • key
    GET /v1/payments/checkout/embed-token?key=recurring-card HTTP/1.1
    Authorization: Bearer <accessToken>
    {
      "token": "<embedToken>",
      "embed_token": "<embedToken>",
      "token_expires_in": 900,
      "tokenExpiresIn": 900,
      "key": "recurring-card"
    }
  • Cancel recurring collection on the contract

    POST /v1/billing/recurring-methods/cancel openfinance

    Drops card or debit recurrence so the next fatura is collected some other way.

    Auth: Bearer access_token from POST /v1/auth/subscriber-session.

    • numero_contrato
    • forma_pagamento
    POST /v1/billing/recurring-methods/cancel HTTP/1.1
    Authorization: Bearer <accessToken>
    Content-Type: application/json
    
    {
      "numero_contrato": "C-88421",
      "forma_pagamento": "CARTAO"
    }
    {
      "ok": true,
      "numero_contrato": "C-88421",
      "forma_pagamento": "CARTAO"
    }
  • Open the hosted change-payment checkout

    GET /v1/payments/checkout/change-method openfinance

    Loads the embedded checkout used to change how the next fatura is paid (card, debit or PIX) without leaving the app.

    Auth: Query token issued after sign-in; the embedded checkout view only accepts messages from its own origin.

    • token
    • forma_pagamento
    • status
    GET /v1/payments/checkout/change-method?token=<checkoutToken> HTTP/1.1
    {
      "token": "<checkoutToken>",
      "forma_pagamento": "PIX",
      "status": "READY"
    }
  • Read home Wi-Fi name and credentials

    GET /v1/broadband/gateway/wifi opendata

    Returns the residential gateway Wi-Fi name, password, PPPoE username and link status used by the Wi-Fi settings support screen.

    Auth: Bearer access_token from POST /v1/auth/subscriber-session.

    • wifi_ssid
    • wifiNome
    • wifiSenha
    • wifi_password
    • pppoe_username
    • statusConexao
    • frequencia
    • canal
    GET /v1/broadband/gateway/wifi?numero_contrato=C-88421 HTTP/1.1
    Authorization: Bearer <accessToken>
    {
      "wifi_ssid": "VERO-88421",
      "wifiNome": "VERO-88421",
      "wifiSenha": "********",
      "wifi_password": "********",
      "pppoe_username": "c88421@vero",
      "statusConexao": "ONLINE",
      "frequencia": "5GHz",
      "canal": 36
    }
  • List devices on the subscriber account

    POST /v1/broadband/devices/list opendata

    Returns the CPE/user devices tied to the fiber contract, the inventory behind the devices support screen.

    Auth: Bearer access_token from POST /v1/auth/subscriber-session.

    • dispositivos
    • host
    • wifi_ssid
    • statusConexao
    POST /v1/broadband/devices/list HTTP/1.1
    Authorization: Bearer <accessToken>
    Content-Type: application/json
    
    {
      "numero_contrato": "C-88421"
    }
    {
      "dispositivos": [
        {
          "host": "ONU-Sala",
          "wifi_ssid": "VERO-88421",
          "statusConexao": "ONLINE"
        }
      ]
    }
  • Start a transfer of ownership

    POST /v1/account/ownership-transfer osint

    Opens a change-of-holder workflow that collects identification from the current and the new titular and returns a protocol to track signing.

    Auth: Bearer access_token from POST /v1/auth/subscriber-session. Both holders attach CPF plus RG or CNH.

    • numero_contrato
    • cpf_cnpj
    • documento
    • numero_protocolo_atendimento
    • status
    POST /v1/account/ownership-transfer HTTP/1.1
    Authorization: Bearer <accessToken>
    Content-Type: application/json
    
    {
      "numero_contrato": "C-88421",
      "cpf_cnpj": "12345678901",
      "documento": "RG"
    }
    {
      "numero_protocolo_atendimento": "TT-2026-44119",
      "status": "AGUARDANDO_ASSINATURA",
      "numero_contrato": "C-88421",
      "cpf_cnpj": "12345678901"
    }
  • List reasons for a support ticket

    GET /v1/support/tickets/reasons opendata

    Returns the catalog of support-ticket reasons shown when the subscriber opens a new ticket; a related call attaches files to it.

    Auth: Bearer access_token from POST /v1/auth/subscriber-session.

    • motivos
    • codigo
    • descricao
    GET /v1/support/tickets/reasons HTTP/1.1
    Authorization: Bearer <accessToken>
    {
      "motivos": [
        {"codigo": "WIFI", "descricao": "Wi-Fi lento ou instavel"},
        {"codigo": "FATURA", "descricao": "Duvida de cobranca"}
      ]
    }
  • List bookable technician-visit days

    GET /v1/field-service/visit-slots opendata

    Returns the calendar of technician slots for the subscriber's neighbourhood, used by the technician-visit booking flow.

    Auth: Bearer access_token from POST /v1/auth/subscriber-session.

    • bairro
    • dias
    • data_hora_agendada
    • periodo
    • turno
    GET /v1/field-service/visit-slots?bairro=Savassi HTTP/1.1
    Authorization: Bearer <accessToken>
    {
      "bairro": "Savassi",
      "dias": ["2026-10-12", "2026-10-13", "2026-10-15"],
      "data_hora_agendada": null,
      "periodo": "manha",
      "turno": "AM"
    }
  • Rate a completed technician visit

    POST /v1/field-service/visits/rating opendata

    Stores the star rating for a finished technician visit after the rating screen posts; a related call returns the rating history.

    Auth: Bearer access_token from POST /v1/auth/subscriber-session.

    • numero_contrato
    • numero_protocolo_atendimento
    • score
    • comentario
    POST /v1/field-service/visits/rating HTTP/1.1
    Authorization: Bearer <accessToken>
    Content-Type: application/json
    
    {
      "numero_contrato": "C-88421",
      "numero_protocolo_atendimento": "OS-55210",
      "score": 5,
      "comentario": "Tecnico pontual"
    }
    {
      "ok": true,
      "numero_protocolo_atendimento": "OS-55210",
      "score": 5
    }
  • Load the mobile-line dashboard

    GET /v1/mobile/lines/overview opendata

    Lists mobile lines under the subscriber CPF/CNPJ with plan and SIM status, the payload for the Mobile tab.

    Auth: Bearer access_token from POST /v1/auth/subscriber-session.

    • cpf_cnpj
    • linhas
    • numero_simcard
    • nome_plano
    • plano_movel
    • status_chip
    • codigo_rastreio
    GET /v1/mobile/lines/overview?cpf_cnpj=12345678901 HTTP/1.1
    Authorization: Bearer <accessToken>
    {
      "cpf_cnpj": "12345678901",
      "linhas": [
        {
          "numero_simcard": "31998887766",
          "nome_plano": "Vero Movel 20GB",
          "plano_movel": "Vero Movel 20GB",
          "status_chip": "ATIVA",
          "codigo_rastreio": null
        }
      ]
    }
  • Block a mobile chip

    POST /v1/mobile/sim/block opendata

    Blocks a Vero móvel chip (loss/theft) and returns the protocol shown on the block-line screen.

    Auth: Bearer access_token from POST /v1/auth/subscriber-session.

    • cpf_cnpj
    • numero_simcard
    • motivo
    • status_chip
    • numero_protocolo_atendimento
    POST /v1/mobile/sim/block HTTP/1.1
    Authorization: Bearer <accessToken>
    Content-Type: application/json
    
    {
      "cpf_cnpj": "12345678901",
      "numero_simcard": "31998887766",
      "motivo": "PERDA"
    }
    {
      "ok": true,
      "numero_simcard": "31998887766",
      "status_chip": "BLOQUEADA",
      "numero_protocolo_atendimento": "CH-88102"
    }
  • Fetch the NF-e for a mobile plan

    GET /v1/mobile/billing/tax-invoices opendata

    Returns electronic invoices (NF-e) issued against the subscriber CPF/CNPJ for the móvel plan.

    Auth: Bearer access_token from POST /v1/auth/subscriber-session.

    • cpf_cnpj
    • notas_fiscais
    • id_fatura
    • valorTotal
    • data_vencimento
    GET /v1/mobile/billing/tax-invoices?cpf_cnpj=12345678901 HTTP/1.1
    Authorization: Bearer <accessToken>
    {
      "cpf_cnpj": "12345678901",
      "notas_fiscais": [
        {
          "id_fatura": "NF-202610-01",
          "valorTotal": 39.90,
          "data_vencimento": "2026-10-10"
        }
      ]
    }
  • Track a SIM shipment

    GET /v1/mobile/sim/shipment-tracking opendata

    Returns the postal tracking code for a chip/SIM shipment after activation is requested.

    Auth: Bearer access_token from POST /v1/auth/subscriber-session.

    • codigo_rastreio
    • status_chip
    • numero_simcard
    GET /v1/mobile/sim/shipment-tracking?cpf_cnpj=12345678901 HTTP/1.1
    Authorization: Bearer <accessToken>
    {
      "codigo_rastreio": "AM123456789BR",
      "status_chip": "EM_TRANSITO",
      "numero_simcard": "31998887766"
    }
  • Read value-added service config

    POST /v1/subscription/addons/config opendata

    Lists which value-added services (SVA) such as Globoplay are enabled on the fiber contract.

    Auth: Bearer access_token from POST /v1/auth/subscriber-session.

    • svas
    • codigo
    • ativo
    • nome
    • numero_contrato
    POST /v1/subscription/addons/config HTTP/1.1
    Authorization: Bearer <accessToken>
    Content-Type: application/json
    
    {
      "numero_contrato": "C-88421"
    }
    {
      "svas": [
        {"codigo": "GLOBOPLAY", "ativo": true, "nome": "Globoplay"}
      ],
      "numero_contrato": "C-88421"
    }
  • Check a mass-outage bulletin

    GET /v1/network/outage-bulletin opendata

    Tells the support home whether the subscriber's neighbourhood is under a network-wide incident before opening a ticket.

    Auth: Bearer access_token from POST /v1/auth/subscriber-session.

    • bairro
    • massiva
    • statusConexao
    GET /v1/network/outage-bulletin?bairro=Savassi HTTP/1.1
    Authorization: Bearer <accessToken>
    {
      "bairro": "Savassi",
      "massiva": true,
      "statusConexao": "INSTAVEL"
    }
  • Enable trust reconnection on the contract

    PUT /v1/billing/subscription/trust-reactivation opendata

    Re-enables a blocked fiber contract under Vero's trust-reconnection policy, limited to once every 30 days.

    Auth: Bearer access_token from POST /v1/auth/subscriber-session.

    • numero_contrato
    • podeSolicitarHabilitacaoEmConfianca
    PUT /v1/billing/subscription/trust-reactivation HTTP/1.1
    Authorization: Bearer <accessToken>
    Content-Type: application/json
    
    {
      "numero_contrato": "C-88421"
    }
    {
      "ok": true,
      "numero_contrato": "C-88421",
      "podeSolicitarHabilitacaoEmConfianca": false
    }
  • List annual payoff receipts

    GET /v1/billing/receipts/annual-payoff openfinance

    Returns yearly payoff documents the receipts screen can preview or download.

    Auth: Bearer access_token from POST /v1/auth/subscriber-session.

    • quitacoes
    • ano
    • numero_contrato
    • receiptId
    • valorTotal
    GET /v1/billing/receipts/annual-payoff?numero_contrato=C-88421 HTTP/1.1
    Authorization: Bearer <accessToken>
    {
      "quitacoes": [
        {
          "ano": 2025,
          "numero_contrato": "C-88421",
          "receiptId": "QA-2025-88421",
          "valorTotal": 1558.80
        }
      ]
    }
  • Export an invoice PDF

    GET /v1/billing/invoices/export-pdf openfinance

    Returns the downloadable PDF for a fiber fatura from the invoice-export screen.

    Auth: Bearer access_token from POST /v1/auth/subscriber-session.

    • numero_contrato
    • id_fatura
    • erp_invoice_id
    • url
    GET /v1/billing/invoices/export-pdf?numero_contrato=C-88421&id_fatura=FT-202610-88421 HTTP/1.1
    Authorization: Bearer <accessToken>
    {
      "numero_contrato": "C-88421",
      "id_fatura": "FT-202610-88421",
      "erp_invoice_id": "88421-202610",
      "url": "https://cdn.example/invoices/FT-202610-88421.pdf"
    }
  • List fiber tax invoices (NF)

    GET /v1/billing/tax-invoices openfinance

    Lists electronic invoices (nota fiscal) issued against the fiber contract, separate from the móvel NF-e call.

    Auth: Bearer access_token from POST /v1/auth/subscriber-session.

    • notas_fiscais
    • id_fatura
    • valorTotal
    • data_vencimento
    • numero_contrato
    • cpf_cnpj
    GET /v1/billing/tax-invoices?numero_contrato=C-88421 HTTP/1.1
    Authorization: Bearer <accessToken>
    {
      "notas_fiscais": [
        {
          "id_fatura": "NF-202610-88421",
          "valorTotal": 129.90,
          "data_vencimento": "2026-10-15",
          "numero_contrato": "C-88421",
          "cpf_cnpj": "12345678901"
        }
      ]
    }
  • List scheduled technician visits

    GET /v1/field-service/visits opendata

    Returns booked technician-visit rows so the subscriber can consult, reschedule or cancel them.

    Auth: Bearer access_token from POST /v1/auth/subscriber-session.

    • numero_protocolo_atendimento
    • bairro
    • data_hora_agendada
    • data_hora_baixada
    • dataHoraBaixada
    • dataHoraCancelamento
    • periodo
    • turno
    GET /v1/field-service/visits?numero_contrato=C-88421 HTTP/1.1
    Authorization: Bearer <accessToken>
    {
      "visitas": [
        {
          "numero_protocolo_atendimento": "OS-55210",
          "bairro": "Savassi",
          "data_hora_agendada": "2026-10-12T09:00:00-03:00",
          "data_hora_baixada": null,
          "dataHoraCancelamento": null,
          "periodo": "manha",
          "turno": "AM"
        }
      ]
    }
  • Read móvel plan details

    GET /v1/mobile/lines/plan-details opendata

    Returns plan name and chip status for one móvel line, the detail payload behind the plan-selection screen.

    Auth: Bearer access_token from POST /v1/auth/subscriber-session.

    • cpf_cnpj
    • numero_simcard
    • nome_plano
    • plano_movel
    • status_chip
    • chip_status_nome
    GET /v1/mobile/lines/plan-details?cpf_cnpj=12345678901&numero_simcard=31998887766 HTTP/1.1
    Authorization: Bearer <accessToken>
    {
      "cpf_cnpj": "12345678901",
      "numero_simcard": "31998887766",
      "nome_plano": "Vero Movel 20GB",
      "plano_movel": "Vero Movel 20GB",
      "status_chip": "ATIVA",
      "chip_status_nome": "Ativo"
    }
  • List banks for automatic debit

    GET /v1/billing/bank-catalog openfinance

    Returns the bank catalog the direct-debit settings screen uses before a debit account is saved.

    Auth: Bearer access_token from POST /v1/auth/subscriber-session.

    • bancos
    • codigo
    • NOME_BANCO
    GET /v1/billing/bank-catalog HTTP/1.1
    Authorization: Bearer <accessToken>
    {
      "bancos": [
        {"codigo": "001", "NOME_BANCO": "Banco do Brasil"},
        {"codigo": "237", "NOME_BANCO": "Bradesco"}
      ]
    }
  • Look up a chip by ICCID

    GET /v1/mobile/sim/lookup opendata

    Resolves a scanned or typed ICCID to SIM status so the find-chip / activate-chip flow can continue.

    Auth: Bearer access_token from POST /v1/auth/subscriber-session.

    • iccid
    • chip_iccid
    • numero_simcard
    • status_chip
    • chip_status_nome
    • codigo_rastreio
    GET /v1/mobile/sim/lookup?iccid=89550000000000000000 HTTP/1.1
    Authorization: Bearer <accessToken>
    {
      "iccid": "89550000000000000000",
      "chip_iccid": "89550000000000000000",
      "numero_simcard": "31998887766",
      "status_chip": "PRONTO_ATIVACAO",
      "chip_status_nome": "Pronto para ativacao",
      "codigo_rastreio": null
    }

Data categories

  • invoices
  • payments
  • profile
  • wifi
  • devices
  • tickets
  • technician-visits
  • mobile-lines
  • tax-documents
  • outages
  • add-ons

Where teams use this data

  • Reconcile fiber invoices against PIX and barcode pay

    A billing bot pulls link_pagamento, valorTotal, data_vencimento, linhaDigitavel and pixCopiaCola for numero_contrato and matches them to PIX or boleto settlements, flagging rows still VENCIDO past diaVencimento.

  • Sync recurring collection method into an ISP CRM

    Nightly jobs read forma_pagamento plus creditCardNumber/item_brand or NOME_BANCO with COD_CLIE_DEBITO_EM_CONTA, agencia_numero and conta_numero, then write fatura_digital, envio_por_email and envio_por_whatsapp so collections knows whether the next bill is card, debit or digital-only.

  • Dispatch technicians from neighbourhood calendars

    Field ops list available days by bairro, book data_hora_agendada with periodo and turno, then store the visita tecnica score against the protocol so SLA dashboards see both the slot and the post-visit rating.

  • Inventory Wi-Fi and móvel lines for support

    A helpdesk overlay shows wifi_ssid, pppoe_username, statusConexao and gateway dispositivos, plus telefonia linhas with numero_simcard, nome_plano, status_chip and codigo_rastreio, and can fire a chip block without asking the subscriber to retype identifiers.

Frequently asked questions

How does Minha Vero authenticate subscriber calls?

Sign-in posts username (CPF/CNPJ or contract login) and password, returning access_token plus the contract identifiers numero_contrato and id_contrato; later calls send it as a Bearer token, and the stored session re-opens with biometrics. An unauthenticated lookup checks cliente_existe before password entry.

Which invoice and payment fields are available?

The open-fatura read returns link_pagamento, valorTotal, data_vencimento, linhaDigitavel and pixCopiaCola, and an overdue one gets a hosted negotiation URL. Recurring collection stores a card (creditCardNumber, item_brand) or bank debit (NOME_BANCO, COD_CLIE_DEBITO_EM_CONTA, agencia_numero, conta_numero) as forma_pagamento; the billing-day write sets dia_cobranca and diaVencimento; digital delivery stores fatura_digital with envio_por_email and envio_por_whatsapp.

Does the surface include Wi-Fi, visits and móvel lines?

Yes. The gateway read returns wifi_ssid, wifiSenha, pppoe_username and statusConexao, and a devices call lists the CPE inventory. Technician booking lists days by bairro with data_hora_agendada, periodo and turno, and a post-visit score lands on numero_protocolo_atendimento. The mobile dashboard lists linhas with nome_plano, status_chip and numero_simcard, plus chip blocking, NF-e invoices and codigo_rastreio tracking.

Is this a public Vero developer API?

No — these are the first-party endpoints the app calls after sign-in across billing, Wi-Fi, field service and mobile lines, documented here as a data surface rather than an open partner program.

Apps similar to Minha Vero

  • Minha Claro — Minha Claro is Claro Brasil's self-care app for mobile, home broadband and TV, where subscribers view and pay invoices, download a second copy, turn on digital billing or auto-debit, follow technician visits and configure home Wi-Fi.
  • Vivo — The Vivo app from Telefónica Brazil lets subscribers manage Vivo mobile and Vivo home fiber services in one client, including invoices, support and top-ups.
  • MEU TIM — MEU TIM is TIM Brasil's subscriber app for mobile and residential plans: it issues a second copy of the bill, pays via PIX or Open Finance, and includes in-app support for TIM Ultra Fibra.
  • Algar — Algar is Algar Telecom's self-care app for prepaid and postpaid lines, covering invoice tracking, data-usage checks, in-app technical support, line recharges and negotiation of unpaid amounts.
  • Nio — Nio is the self-care app for Nio fiber households in Brazil, used to check invoices, pay by Pix or card, handle technical issues and configure the home Wi-Fi network.
  • Desktop — Desktop is the subscriber app of Brazilian fiber ISP Desktop, used to issue a second copy of the boleto, view recent invoices, update account data and request a courtesy reconnect when service is suspended.
  • Minha Unifique — Minha Unifique is Unifique's self-care app for internet, digital landline, mobile, TV and data-center customers, covering contracted services, payments, pending invoices, support tickets and Wi-Fi password changes.

Topics

  • minha vero api
  • vero internet billing api
  • fatura vero link_pagamento
  • dia_cobranca vero
  • wifi_ssid vero internet
  • troca de titularidade cpf_cnpj
  • vero movel numero_simcard
  • agendar visita tecnica bairro

Need this app's data API integrated?

We deliver scoped integrations for any named app — from USD 500 with source-code handoff, or hosted access billed per call. Tell us the data you need.

  • NDA + SOW on every engagement
  • Delivery in 3–7 days
  • Payment only after acceptance
  • Work scoped to authorized use

Get a quote