=== Brazilian Checkout Toolkit for WooCommerce ===
Contributors: riaanknoetze
Tags: woocommerce, checkout, brazil, cpf, cpnj
Requires at least: 6.0
Tested up to: 7.0
Requires PHP: 7.4
Stable tag: 1.2.0
License: GPLv2 or later
License URI: https://www.gnu.org/licenses/gpl-2.0.html

Checkout preparado para o Brasil no WooCommerce: campos CPF/CNPJ, validação, máscaras e compatibilidade total com o Bloco de Finalização de compra.

== Descrição ==

As lojas brasileiras precisam de alguns campos extra na finalização de compra para manter a conformidade, evitar problemas de entrega e reduzir erros em gateways de pagamento.

O **Brazilian Checkout Toolkit for WooCommerce** adiciona campos específicos do Brasil na finalização de compra (CPF/CNPJ, tipo de pessoa, bairro, número da porta, etc.), melhora a experiência do cliente com máscaras de introdução e funciona com:

* **Finalização de compra clássica do WooCommerce (shortcode)**
* **Bloco de Finalização de compra do WooCommerce** (Cart & Checkout Blocks)

Também espelha os valores nas metachaves legadas `_billing_*`, usadas por muitos temas, integrações e gateways.

= Missão =
Tornar a finalização de compra do WooCommerce verdadeiramente adequada ao Brasil — com os campos certos, a validação certa e uma UX fluida.

= Porquê este plugin =
Ao contrário de soluções antigas que funcionam apenas na finalização de compra clássica, este plugin foi pensado para lojas WooCommerce modernas:

* **Compatível com o Bloco de Finalização de compra** (API de Campos Adicionais do Checkout do WooCommerce 9.0+)
* **Retrocompatível** com a finalização de compra clássica e integrações existentes
* **Leve e controlado por definições** (ative apenas o que a sua loja precisa)

= Funcionalidades principais =

* **Tipo de pessoa** (Pessoa Singular / Pessoa Coletiva)
* Campos **CPF / CNPJ** com validação opcional (definições)
* Campos opcionais (definições): **RG**, **Inscrição Estadual (IE)**, **Data de Nascimento**, **Género**
* Campos de endereço: **Número da porta** e **Bairro** (o Bairro pode ser opcional/obrigatório)
* **Opções de telemóvel** (campo opcional, obrigatório, ou substituir o telefone do WooCommerce)
* **Máscaras / formatação** para CPF, CNPJ, telefone e mais (definições)
* **Sugestão de e-mail** (Mailcheck) para reduzir falhas na finalização de compra
* **Formatação de moradas brasileira** em encomendas e em “A minha conta”
* **Melhorias na API REST**: expõe os campos extra nas respostas REST do WooCommerce
* **Compatível com HPOS** (High-Performance Order Storage do WooCommerce)

= Onde encontrar as definições =
WooCommerce → Definições → Envios → **Campos Brasileiros na Finalização de compra**

= Compatibilidade e requisitos =

* Requer **WooCommerce**
* WordPress 6.0+ (testado até 7.0)
* PHP 7.4+
* Recomenda-se WooCommerce **9.0+** para suporte ao Bloco de Finalização de compra (o plugin deteta a API de Blocos automaticamente)

= Integrações =

Este plugin inclui camadas de compatibilidade / mapeamento de dados para:

* **Flux Checkout for WooCommerce**
* **Bcash** (adiciona o número e dados de CPF/CNPJ)
* **Moip / Moip Transparent Checkout** (adiciona o número, bairro, CPF e data de nascimento quando disponível)

= Créditos =

Este plugin baseia-se no trabalho original de campos brasileiros na finalização de compra por **Claudio Sanches** e colaboradores, e foi significativamente refatorizado/modernizado.

Bibliotecas de terceiros incluídas:
* Mailcheck jQuery (https://github.com/Kicksend/mailcheck)
* jQuery Mask Plugin (https://github.com/igorescobar/jQuery-Mask-Plugin)

== Instalação ==

1. Instale e ative o **WooCommerce**.
2. Envie este plugin para `/wp-content/plugins/` ou instale-o através do ecrã de Plugins.
3. Ative o **Brazilian Checkout Toolkit for WooCommerce**.
4. Vá a WooCommerce → Definições → Envios → **Campos Brasileiros na Finalização de compra** e configure os campos.

== Perguntas frequentes ==

= Funciona com o Bloco de Finalização de compra do WooCommerce? =

Sim. Se a sua versão do WooCommerce disponibiliza a API de **Campos Adicionais do Checkout** (WooCommerce 9.0+), o plugin regista automaticamente os campos brasileiros para o Bloco de Finalização de compra.

= Continua a funcionar com a finalização de compra clássica? =

Sim. O plugin mantém a injeção de campos e validações na finalização de compra clássica e também evita campos duplicados quando o Bloco de Finalização de compra está em uso.

= Posso tornar a validação de CPF/CNPJ opcional? =

Sim. A validação pode ser ativada/desativada nas definições do plugin.

= Posso mostrar apenas Pessoas Singulares ou apenas Pessoas Coletivas? =

Sim. Pode configurar o modo de “Tipo de pessoa” nas definições.

= Onde está a página de definições? =

WooCommerce → Definições → Envios → **Campos Brasileiros na Finalização de compra**.

== Capturas de ecrã ==

1. Ecrã de definições (WooCommerce → Definições → Envios → Campos Brasileiros na Finalização de compra)
2. Bloco de Finalização de compra com campos brasileiros (CPF/CNPJ, tipo de pessoa, número, bairro)
3. Finalização de compra clássica com campos brasileiros e máscaras
4. Ecrã da encomenda no admin a mostrar os dados brasileiros guardados
5. A minha conta → Moradas com o formato de morada brasileiro

== Changelog ==

= 1.2.0 =
* Atualização - Testado até ao WordPress 7.0.
* Atualização - Compatibilidade declarada até ao WooCommerce 10.9.
* Desenvolvimento - Adicionada suíte de testes local (PHPUnit unitário + integração, Playwright e2e) e configuração de normas de código PHPCS (WordPress/WooCommerce).

= 1.1.0 =
* Novo - Compatibilidade com o WooCommerce

= 1.0.0 =
* Lançamento inicial.
