Construtores Foto Certa

Gere o código dos componentes do Prosite preenchendo os parâmetros. Os valores ficam salvos neste navegador.

Rascunho rascunho
Campanha e página

O nome não se digita: ele vem da campanha mais a página — Natal 2026 · Hospedeira. Com o nome derivado, a ferramenta sabe que as duas páginas pertencem à mesma campanha e pode comparar uma com a outra.

Salvar como preset geral cria um preset novo com o que está na tela agora, e nele todas as abas nascem fora da página. Ligue as que esta página realmente usa: aba esquecida fora some da página e você vê; aba esquecida dentro publica um bloco a mais e você não vê.

Onde fica: no armazenamento deste navegador, como todo o resto — não acompanha outro computador. Apagar um preset geral não mexe em nenhum código já colado no site.

Outros códigos meus

Estes dois campos ficam guardados por página, dentro do preset geral — ao trocar de preset, eles trocam junto. Nunca vêm de outra página: um preset geral criado a partir de outro nasce com os dois vazios, e sair para o Rascunho também os esvazia. É a mesma proteção que faz as abas nascerem fora — só que aqui, sem interruptor, a proteção é não copiar. É o painel consolidado que os usa: no painel à direita das abas, o que estiver aqui aparece primeiro no campo montado, antes dos blocos gerados, separado deles por uma linha de fronteira.

Backup em arquivo

Exportar tudo gera um arquivo .json com os presets gerais, as bibliotecas de presets de todas as abas e o rascunho (o que está na tela). É o backup completo — a configuração desta ferramenta vive só no armazenamento deste navegador, e some se você limpar os dados do site. Exportar este preset geral leva só a campanha e a página selecionadas na barra, para repassar a alguém.

Os dados de contato e pagamento são escolha na hora de exportar, e o nome do arquivo diz qual é: …-com-dados.json ou …-sem-dados.json. Confira o nome antes de enviar o arquivo a alguém — é ele que diz se o número do WhatsApp, a chave Pix e o Client ID do PayPal estão lá dentro.

Importar mostra um resumo antes e pede confirmação — quantos presets são novos, quantos já existem aqui e o que se perde ao substituí-los. Quando o nome já existe, você escolhe entre substituir e importar como cópia. Um arquivo sem dados não apaga os dados que já estão neste navegador: os campos que ele não traz mantêm o valor atual.

Arquivo de outra pessoa é código que vai para a sua página. A ferramenta confere a forma do arquivo e descarta o que não reconhece, dizendo quantos itens foram — mas as caixas “Outros códigos meus” são texto livre e viajam como estão. Se o arquivo não veio de você, leia esse trecho antes de usar o que ele trouxer.

Nesta largura de janela o painel consolidado — onde a Tag Head e a Tag Body ficam prontas para copiar — não cabe ao lado das abas e está no fim desta página.

Slideshow de fotos — gera o código de uma apresentação de imagens para colar em um componente HTML de qualquer página. Aceita fotos horizontais e verticais juntas (a foto inteira aparece sobre um fundo desfocado dela mesma), com setas de navegação e bolinhas indicadoras (cada uma pode ser desligada), legenda individual por foto, looping automático e três transições à escolha (fade, deslizar ou zoom). Também dá para usar outra proporção de quadro no celular, embaralhar a ordem a cada visita, arrastar para trocar de foto no toque e pausar enquanto o visitante olha. Ideal para mostrar ensaios anteriores nas páginas de campanha. As fotos podem ser cadastradas uma a uma ou importadas de uma galeria inteira do site, colando o link dela e o código-fonte da página.

1 Imagens
Adicionar imagem
Importar de uma galeria ou de uma página

Por que duas colagens: o navegador não deixa esta ferramenta abrir uma página do fotocerta.com.br por conta própria (política de origem cruzada — medido: Failed to fetch). Então você traz a página até aqui. Como fazer: abra a galeria no navegador, aperte Cmd ⌥ U (ver código-fonte), depois Cmd A (selecionar tudo) e Cmd C (copiar). Cole o link no primeiro campo e o código-fonte no segundo. Vale para galerias (/gallery/…), para portfólios (/portfolio/…) e para as páginas comuns do site (/albuns), que servem as fotos de cdn.alboompro.com em vez do storage.

O código-fonte traz mais fotos que a tela: na galeria de exemplo, o navegador tinha 10 fotos carregadas e o código-fonte trazia 46. As fotos entram na mesma ordem em que aparecem na página, inclusive a de capa, que na página não é a primeira. Só entram endereços dos servidores da Alboom: qualquer outro é descartado com a contagem à vista. Numa página comum a mesma foto aparece em vários tamanhos (medido: 51 endereços para 10 fotos em /albuns) — cada foto entra uma vez só, no maior tamanho que a página trouxe, e só as da conta que aparece em mais fotos, que a conferência mostra. Nada do que você cola aqui é salvo — a ferramenta só lê os endereços das fotos e esquece o resto.

Como as fotos entram na lista

Não dá para trazer uma legenda por foto: medido nas duas galerias, todas as fotos compartilham o mesmo texto de descrição, escrito para buscadores. O que serve é o título da galeria — ao conferir, ele aparece preenchido abaixo como sugestão, e você pode trocar. Conferir outra galeria troca a sugestão — a menos que você já tenha digitado a sua, que nunca é sobrescrita.

Sobre o tamanho: medi as 104 fotos das duas galerias de exemplo e o site já entrega tudo com 1200 px de largura (de 157 a 868 KB por foto; metade delas abaixo de 340 KB, e seis acima de 610 KB). Pedir 1400 px ao redimensionador da Alboom funciona, mas só estica a foto de 1200: arquivo maior, nenhum detalhe a mais. Numa página comum a largura varia por foto — de 735 a 1920 px nas 10 medidas em /albuns —, e por isso a ferramenta mede cada foto da página antes de reduzir: a que já tiver 900 px ou menos entra com o endereço original, porque pedir 900 de uma foto de 735 devolvia 900×1224 com 15% mais bytes e nenhum detalhe a mais (medido). A conferência diz quantas ficaram de fora da redução. Fotos de galeria não são medidas: as 46 da galeria de exemplo têm 1200 px de largura, todas, e medi-las custaria 18 MB de download para confirmar um número que não muda nada.

Imagens do slideshow

    Nenhuma imagem ainda. Adicione os links acima, uma a uma, ou traga uma galeria inteira pelo bloco de importação — depois dá para reordenar com as setas.

    2 Configurações da apresentação
    Transição e proporção
    Ritmo e tamanho
    Proporção no celular

    Foto em retrato dentro de um quadro horizontal aparece minúscula no telefone, que é onde a maioria vê. Abaixo da largura de corte o quadro pode ter outra proporção — o resto (transição, ritmo, legendas) continua igual.

    Ordem e controles do visitante
    3 Biblioteca de presets
    4 Prévia e código gerado
    Largura da prévia:

    A prévia do slideshow aparece aqui. Adicione imagens e clique em "Atualizar prévia".

    O que a prévia mostra: o próprio código da caixa ao lado, rodando num quadro isolado — não é um desenho parecido. O que ainda difere da página publicada: a largura é a largura lógica do botão acima (reduzida na tela só para caber na coluna), enquanto na página real vale a janela do visitante; as fotos vêm da internet, então a que demora aqui demora lá; e "arrastar" só se experimenta num aparelho com toque — no computador o quadro reage a mouse, teclado e cliques.

    Código para o componente HTML Copiado!

    Mexeu na lista, a caixa esvazia. Acrescentar, remover, reordenar, importar ou limpar a lista apaga o código já gerado: ele traz as fotos nome por nome, na ordem, então depois de qualquer uma dessas ações ele descreveria uma lista que não existe mais. Clique em Gerar código de novo. Mudar as configurações (intervalo, largura, proporção) não esvazia — ali a caixa envelhece em silêncio, como em todas as abas, e vale gerar de novo antes de copiar.

    Instrução de uso do código gerado

    Onde colar: em um componente HTML da página desejada, no editor do Prosite. Cole o código inteiro substituindo o conteúdo do componente.

    Pré-requisitos: nenhum ID Html ou CSS extra é necessário — o código é autocontido. Apenas confira que os links das imagens são públicos (storage da Alboom) e, se a galeria de origem for republicada, atualize os links aqui e gere novamente.

    Mais de uma galeria na mesma página: pode. Gere um código para cada conjunto de fotos e cole cada um no seu próprio componente HTML — cada bloco assume a galeria dele, na ordem em que aparecem na página. O único cuidado é a largura máxima e as proporções (a do quadro e a do celular, com a largura de corte), que cada bloco redefine para todas: se as galerias tiverem tamanhos diferentes, vale a última colada. Use os mesmos valores nos dois, ou aceite o valor do último. Setas, bolinhas, ordem aleatória, arrastar e pausar são de cada bloco e não interferem no outro.

    Depois de colar: salve, publique e confira na página publicada (o editor pode se comportar diferente). Se o slideshow aparecer cortado, aumente a altura do componente no editor.

    Captação de leads via WhatsApp — gera o código completo da Tag Body da página de campanha: um botão flutuante (WhatsApp, balão neutro ou a coruja da marca) que abre um pop-up pedindo nome e recado do visitante e envia a mensagem formatada para o seu WhatsApp, identificada com o código de atendimento da página. Inclui modo de abertura automática, efeitos de atenção no botão, paleta de cores e textos totalmente customizáveis — e, opcionalmente, a âncora inteligente que faz o botão da página rolar até o calendário dentro do iframe (com plano B de rolagem suave).

    1 Essenciais e modo de exibição
    Essenciais
    Modo de exibição
    2 Botão flutuante
    Estilo do botão flutuante

    Prévia do botão

    Efeito de atenção no botão
    Posição do botão flutuante

    O padrão de 92 px deixa o botão acima da faixa de rodapé do tema. No celular o bloco continua usando 8 px a menos de rodapé e 16 px de margem lateral (contra 22 no computador), como sempre fez — a distância acima é a do computador.

    3 Mensagem, textos e cores do pop-up
    Mensagem enviada no WhatsApp
    Paleta de cores do pop-up
    Textos do pop-up
    4 Cabeçalho do pop-up: coruja, movimento e efeitos
    Coruja no cabeçalho

    A coruja fica ancorada na ponta, fora da área que rola: com o movimento ligado ela emoldura o cabeçalho em vez de passar junto com o texto. A posição vale só para o cabeçalho do pop-up — no botão flutuante a coruja é o ícone inteiro, e ali posição não se aplica.

    Movimento do conteúdo

    As duas opções de alternância da Contagem regressiva não entram aqui: elas exigem duas ou mais mensagens, e o cabeçalho tem um título só. Com a rolagem ligada o título é repetido até cobrir a largura do cabeçalho — é o que evita o vão que a duplicação simples deixa num título curto. O trilho é medido quando o pop-up abre, porque antes disso ele está escondido e mede zero.

    Destaque contínuo (pode combinar)

    São os cinco da Contagem regressiva. Ressalva registrada: num cabeçalho pequeno, pulsar e tremor incomodam mais do que ajudam — ficam disponíveis porque a decisão de usar é da campanha. O separador piscando não tem relógio para separar aqui: ele entra como um ponto (•) piscando antes do título. O degradê anima entre a cor do cabeçalho e a cor do botão enviar. Quem pede menos movimento no sistema não vê nenhum dos cinco.

    5 Horário de atendimento
    Faixa de atendimento
    O que muda fora do horário

    O botão continua abrindo o pop-up e o recado continua indo para o WhatsApp: fora do horário ninguém é impedido de deixar recado, porque a mensagem fica lá esperando. O que muda é a promessa — um aviso aparece no topo do formulário dizendo que a resposta não é imediata. O aviso é recalculado toda vez que o pop-up abre, então uma página deixada aberta na virada das 18h mostra o aviso certo quando o visitante finalmente clicar.

    O fuso é fixo no código. O relógio do visitante pode estar em qualquer lugar (viagem, aparelho desacertado, cliente de fora), e o horário de atendimento é o seu. O bloco gerado converte o instante para o fuso de Brasília (−3, sem horário de verão desde 2019) antes de decidir — mesma escolha que a Contagem regressiva fez para a data de encerramento. Atendendo de outro fuso, troque HORARIO_FUSO no topo do código gerado.

    Faixa que cruza a meia-noite (ex.: das 20:00 às 02:00) é aceita: o dia marcado é o dia em que o expediente começa. Abertura e fechamento iguais são recusados na geração — não há como saber se você quis dizer 24 horas ou zero.

    Sem nenhum dia marcado, ou com um dos horários em branco, o modo fica desligado e o bloco sai sem nada disso — o aviso ao lado diz isso na tela, para o desligamento não ser silencioso.

    6 Pergunta de qualificação
    A pergunta e as opções
    Opções cadastradas

    Nenhuma opção ainda. Sem opções cadastradas a pergunta não aparece no pop-up e nada muda no código gerado — é assim que este recurso fica desligado.

      A resposta é opcional para o visitante: uma pergunta obrigatória custaria leads, e o recado já é o que importa. Escolhendo alguma coisa, a mensagem ganha uma linha entre a página e o código — Interesse *Ensaio gestante*. Sem escolher, essa linha simplesmente não existe e a mensagem sai exatamente como sairia sem o recurso.

      7 Âncora para o calendário
      Âncora do botão da página (iframe)
      Como configurar no Prosite

      1) No botão/link da página (ex.: o do hero), defina a URL exatamente como a âncora ao lado (ex.: #reserva). 2) Na coluna que contém o componente HTML do iframe da página intermediária, aba Avançado, preencha o campo ID Html com o nome da âncora sem o # (ex.: reserva). 3) Ao clicar, o script rola suave até o calendário dentro do iframe; se ele ainda não tiver carregado, a âncora nativa leva ao topo do iframe (plano B, já incluído no código gerado).

      8 Biblioteca de presets
      9 Prévia e código gerado
      Largura da prévia:

      A prévia roda o próprio código da caixa ao lado, dentro de um quadro isolado — não é um desenho parecido. O que ainda difere da página publicada: o quadro abre o pop-up sozinho (na página real ele espera o clique ou o tempo do modo automático), e por isso o botão flutuante aparece atrás do véu escuro; o foco automático do campo nome e o window.open do botão enviar são neutralizados só dentro do quadro, senão a prévia roubaria o cursor do formulário e abriria o WhatsApp a cada atualização — o código gerado não é afetado; o aviso de horário usa o relógio deste computador convertido para o fuso configurado; a largura é a largura lógica do botão acima (reduzida na tela só para caber na coluna), enquanto na página real vale a janela do visitante; e o quadro não carrega o CSS do tema do site.

      Código para a Tag Body Copiado!

      Instrução de uso do código gerado

      Onde colar: no campo Tag Body da página hospedeira (configurações da página no Prosite). Se já houver ali uma versão anterior deste bloco (ela começa com o comentário FOTO CERTA - BOTAO FLUTUANTE), substitua esse bloco inteiro — colar a versão nova por cima da antiga duplica o botão flutuante. O que estiver no campo e for de outro construtor — a barra de contagem regressiva, por exemplo — fica onde está: os blocos convivem no mesmo campo, um embaixo do outro. Apagar o campo inteiro derrubaria a barra de contagem sem nenhum aviso.

      Primeira troca, quando o bloco antigo não tem cabeçalho: versões geradas antes de ago/2026 saíam sem o cometário de identificação, então não há o que procurar. Nesse caso, o bloco antigo é o trecho do WhatsApp inteiro: começa no <style> que abre as regras .fcw- e termina no último </script> desse trecho. Apague dessa abertura até esse fechamento e cole o novo no lugar. O que vier antes ou depois é de outro construtor e fica. Da próxima vez o cabeçalho já estará lá.

      Pré-requisitos no Prosite (só se a âncora estiver incluída): 1) o botão/link da página (ex.: o do hero) deve ter a URL igual à âncora configurada (ex.: #reserva); 2) a coluna que contém o componente HTML do iframe da página intermediária deve ter, na aba Avançado, o campo ID Html preenchido com o nome da âncora sem o # (ex.: reserva). O botão flutuante e o pop-up não exigem nenhuma configuração extra.

      Depois de colar: salve, publique e teste na página publicada: botão da coruja único no canto, pop-up abrindo e enviando ao WhatsApp, e clique do hero rolando até o calendário.

      Agendamento TidyCal — gera o código do calendário de agendamento com expansão e recolhimento automáticos quando o formulário de reserva abre e fecha (sem barra de rolagem interna no modal), com alturas calibráveis separadamente para computador e celular. Suporta as duas arquiteturas: componente direto na página final, ou página intermediária embutida por iframe na hospedeira — neste caso gera as três peças necessárias (componente do TidyCal, Tag Body da intermediária e iframe da hospedeira).

      1 Configuração do calendário
      Agendamento

      Antes de gerar: o botão abre tidycal.com/ + o caminho digitado numa aba nova. É a mesma página que o código embute — se ela não existir aqui, também não vai existir no site publicado. Descobrir agora custa um clique; descobrir depois custa publicar, testar e voltar.

      O preset não substitui a calibragem, adianta o ponto de partida. Só o formulário padrão (2350 / 2700) foi medido em produção, na campanha de Natal; os outros dois são esse mesmo par deslocado para menos e para mais, e continuam precisando da conferência na página publicada. Escolher um preset escreve os dois números nos campos abaixo — nada fica escondido. Mexer num deles devolve a marca para ajuste fino na hora, para o rótulo nunca dizer uma coisa e o campo outra. A largura de corte não entra no preset: ela é o tamanho da tela, não o tamanho do formulário.

      Arquitetura da página
      2 Biblioteca de presets
      3 Códigos gerados

      1. Componente HTML do TidyCal Copiado!

      Instrução de uso do código gerado

      Modo "Componente direto na página final": cole o código 1 em um componente HTML da própria página onde o calendário deve aparecer. Nada mais é necessário.

      Modo "Página intermediária embutida por iframe" (3 códigos): 1) código 1 → componente HTML da página intermediária; 2) código 2 → campo Tag Body da página intermediária; 3) código 3 → componente HTML da página hospedeira (é o iframe que embute a intermediária).

      Pré-requisitos no Prosite: o caminho do booking type deve existir no TidyCal; se for usar âncora de botão até o calendário (gerada na aba Captação de leads), a coluna do componente do código 3 deve ter o ID Html da âncora sem o # (ex.: reserva) na aba Avançado.

      Calibragem das alturas: comece pelo tipo de agendamento, que preenche as duas alturas, e confirme na página publicada: escolha data e horário e veja se o formulário abre inteiro, sem barra de rolagem interna — no computador e no celular. Se cortar, aumente a altura correspondente (a marca vira "ajuste fino" sozinha) e gere novamente.

      Os dois botões de teste não geram nada: abrem numa aba nova o endereço montado com o que está nos campos — tidycal.com/ + caminho, e a página intermediária. Servem para conferir o endereço antes de publicar. O botão da intermediária só aceita endereço http(s) completo: um caminho começando com barra é resolvido no domínio do site publicado, que não é o desta ferramenta, e abriria a página errada.

      Checkout — carrinho de pagamento completo para colar em um componente HTML. Você escolhe as formas de pagamento (PayPal, Pix ou os dois juntos) e monta o pedido com um ou vários produtos, cada um com seus próprios itens opcionais. Inclui cobrança de sinal (com o saldo na entrega), quantidade por item, resumo copiável do pedido, cupons de desconto, desconto exclusivo para Pix, largura e cores ajustáveis. O PayPal traz cartão sem login e parcelamento conforme sua conta; o Pix gera QR Code e Copia e Cola na hora, com o valor exato, e aviso de pagamento via WhatsApp. Nenhum segredo vai no código: apenas o Client ID público do PayPal e a chave Pix.

      1 Formas de pagamento e identificação
      Como o cliente vai pagar

      O código gerado carrega apenas o necessário para as formas escolhidas. Com Pix ativo, a moeda é fixa em reais (o Pix só existe em BRL); somente com PayPal, você pode escolher a moeda.

      Cobrança de sinal

      Ligado, o PayPal cobra o sinal, o Pix gera o QR do sinal, a mensagem do WhatsApp declara sinal pago e saldo devido, e o carrinho passa a mostrar três linhas: total, sinal agora e saldo na entrega. A ordem da conta é quantidade multiplica → cupom incide sobre o total → o sinal sai do total já com o cupom. Um sinal maior que o total é recusado: o carrinho avisa e não deixa pagar.

      Identificação do pedido

      Vale para as três pontas ao mesmo tempo — não é uma configuração de nenhuma forma de pagamento em particular. É por ele que você reconhece a campanha no painel do PayPal, no extrato do Pix e no WhatsApp de aviso.

      Conta PayPal
      Dados do recebedor (Pix)
      Desconto para pagamento via Pix

      Com a cobrança de sinal ligada este campo não vale. O Pix passa a cobrar o sinal, e o desconto do Pix não se aplica sobre o sinal — seria desconto dobrado, porque o sinal já sai de um total que pode ter cupom. O número acima fica guardado, mas não entra no código gerado nem aparece no carrinho enquanto o sinal estiver ligado. Para usar o desconto do Pix, volte a cobrar o valor cheio.

      Com desconto ativo, o carrinho mostra a linha verde "Pagando via Pix (-10%)" abaixo do total, o separador vira "ou pague com Pix com 10% de desconto" e o Pix é gerado já com o valor reduzido. O PayPal continua cobrando o total sem esse desconto.

      Aviso de pagamento Pix via WhatsApp
      2 Produtos e itens opcionais
      Cadastrar produto

      Cadastre um ou vários produtos; cada um pode ter seus próprios itens opcionais. Com um único produto, o carrinho o exibe direto (sem seletor), como uma compra simples.

        Nenhum opcional neste produto.

        Produtos do carrinho

          Nenhum produto cadastrado ainda. Use o formulário ao lado.

          Vale para todos os itens vendidos por quantidade. O seletor vai de 0 até esse número, e 0 equivale a não escolher o item: ele sai da conta, do resumo e da mensagem do WhatsApp. A quantidade do produto e a do opcional são independentes — dois ensaios com um álbum somam dois ensaios e um álbum, não dois álbuns.

          Cupons de desconto

          O segundo campo é a validade (opcional — vale até o fim do dia; vazio = sem validade).

            Nenhum cupom. O campo de cupom não aparecerá no carrinho.

            3 Textos e aparência
            Textos do carrinho
            Resumo copiável do pedido

            O Pix estático não confirma pagamento — a conferência é pelo extrato. O resumo sai no fim do carrinho, com um botão de copiar, e traz produtos, opcionais (com quantidade quando houver), cupom, subtotal, desconto, total e — com sinal ligado — sinal e saldo, tudo abaixo do código do pedido. O cliente cola no WhatsApp ou no e-mail e você concilia com o extrato sem redigitar nada.

            Aparência do carrinho
            4 Biblioteca de presets
            5 Prévia e código gerado
            Ver como:

            A prévia roda o código gerado de verdade: é o mesmo bloco que sai na saída ao lado, executando dentro de um quadro isolado — dá para marcar produtos, mudar quantidade, aplicar cupom, gerar o Pix e ler o Copia e Cola. Ela também passa pelas mesmas recusas do botão "Gerar código": enquanto a configuração for recusada, o quadro mostra a recusa e o motivo, nunca um carrinho.

            O que a prévia prova sobre o PayPal: o botão é um desenho, mas logo abaixo dele a prévia mostra o valor que iria na ordem e a decisão do clique (segue para o PayPal ou recusa, com o motivo) — os dois medidos chamando o createOrder e o onClick do próprio bloco, a cada mudança do carrinho. É por isso que o valor do sinal e as recusas do lado PayPal são verificáveis aqui sem baixar o SDK e sem mandar seu Client ID para fora.

            O que ela ainda não prova: o que depende da resposta do PayPal — a janela de pagamento, a captura e as mensagens de sucesso e de erro que vêm dela; o QR Code é real, mas depende da biblioteca do cdnjs (sem internet ele some e só o Copia e Cola aparece); o quadro não carrega o CSS do tema do site; e o botão "Já paguei" não abre o WhatsApp aqui — o quadro desliga a abertura de abas, e avisa em vermelho se não conseguir desligar.

            Código para o componente HTML Copiado!

            Instrução de uso do código gerado

            Onde colar: em um componente HTML da página de venda, substituindo o conteúdo do componente. Não cole dois carrinhos na mesma página.

            Pré-requisitos: para PayPal, o Client ID (público) da sua conta Business em developer.paypal.com — e, se quiser parcelamento, ative-o no painel do PayPal. Para Pix, conferir chave, nome (máx. 25) e cidade (máx. 15): são esses dados que aparecem no app do banco do cliente; acentos são removidos automaticamente no código Pix. O QR Code usa biblioteca do cdnjs; se ela falhar, o Copia e Cola continua funcionando.

            Cobrança de sinal: ligada, o PayPal e o Pix passam a cobrar só o sinal, e o carrinho mostra total, sinal agora e saldo na entrega. A ordem da conta é fixa: quantidade multiplica → cupom incide sobre o total → o sinal sai do total já com o cupom. O desconto do Pix não se aplica sobre o sinal (seria desconto dobrado) e por isso ele não é emitido enquanto o sinal estiver ligado — a aba avisa em âmbar. Um sinal maior que o total é recusado: o carrinho mostra a linha vermelha e nem o PayPal nem o Pix deixam pagar. Quem controla o saldo é você: o carrinho não cobra a segunda parcela nem lembra ninguém dela.

            Quantidade e resumo: um item vendido por quantidade ganha um seletor [− n +] e o preço da linha passa a mostrar o subtotal dele; quantidade zero equivale a não ter escolhido o item, e ele some da conta, do resumo, da descrição do PayPal e da mensagem do WhatsApp. O resumo copiável sai no fim do carrinho para o cliente colar no seu WhatsApp — é o que fecha a conciliação do Pix, que o QR estático não confirma sozinho.

            Como funciona cada pagamento: no PayPal, a cobrança é do total com cupom e a confirmação aparece na tela e no seu painel (com código do pedido e cupom). No Pix, o QR e o Copia e Cola são gerados com o total exato do momento; se o cliente alterar o pedido depois, o Pix some e precisa ser gerado de novo (proteção contra valor desatualizado). A confirmação do Pix é manual: o botão "Já paguei" abre o WhatsApp do cliente com produtos, opcionais, cupom e valor, e você confere no extrato.

            Sobre os cupons: a validação (existência e validade) acontece no código da página e o desconto entra no valor cobrado. Como em todo carrinho desse tipo, os códigos ficam visíveis para quem inspecionar a página — use cupons que possam ser públicos, como os de campanha.

            Depois de colar: salve, publique e teste com valor baixo cada forma ativa: um pagamento PayPal (reembolsável pelo painel) e um Pix pago por você mesmo. Teste também trocar de produto/opcional depois de gerar o Pix e confira no celular.

            Bordas com efeito — gera o CSS para destacar um componente do Prosite com borda animada e fundo interno customizável (cor sólida ou degradê, para componentes que não oferecem degradê nativo). Cinco efeitos à escolha: brilho giratório (o facho de luz que percorre a moldura), degradê contínuo, halo pulsante, listras em movimento e borda fixa (sem animação). Gera dois códigos: um global para a Tag Head do site (uma vez só) e o CSS do componente. É 100% CSS, sem JavaScript, e já inclui a regra de acessibilidade que reduz o movimento para quem prefere.

            1 Efeito e fundo
            Efeito da borda

            Qual usar: o brilho giratório chama atenção sem cansar (ideal para bloco de oferta ou plano recomendado); o degradê contínuo é mais moderno e constante; o halo pulsante é o mais insistente (use com moderação, em um único elemento da página); as listras lembram fita/promoção; a borda fixa serve quando você quer só o fundo em degradê ou uma moldura discreta.

            Fundo interno do componente

            A técnica de borda animada precisa pintar o miolo do componente, então "manter o fundo atual" só funciona com os efeitos halo pulsante e borda fixa. Nos demais, informe a cor: se quiser preservar a aparência atual, capture a cor exata do componente com o conta-gotas (ou pelo inspetor do navegador) e use-a como cor sólida.

            2 Borda, cores e acabamento
            Borda e cores do efeito

            Segredo do brilho: o efeito depende de contraste alto entre a cor de base (escura) e o facho (claro), com o facho estreito. Cores próximas em luminosidade produzem apenas uma ondulação sutil.

            Halo externo
            Conteúdo do componente (opcional)
            3 Biblioteca de presets
            4 Prévia e códigos gerados
            Fundo da prévia (não entra no código gerado)

            Por que isto existe: cor renderizada muda de percepção conforme o que está atrás dela — o halo é semitransparente e se mistura com o fundo, e um facho que brilha sobre papel claro pode sumir sobre uma seção escura. Sobre o fundo real da página, dá para ver isso antes de publicar. Esta escolha é só da prévia: os códigos 1 e 2 saem exatamente iguais com qualquer fundo aqui.

            Código 1 para dois efeitos no mesmo site

            Para que serve: o código 1 é colado uma vez no cabeçalho do site e vale para o site inteiro. Quando o site usa dois efeitos diferentes — na mesma página ou em páginas diferentes —, em vez de colar dois blocos concorrentes nesse campo, escolha aqui o preset do outro componente e o código 1 sai com as duas animações e as duas regras de movimento reduzido, num bloco só.

            O que ele não resolve: efeitos diferentes têm nomes de animação diferentes e convivem; o mesmo efeito com parâmetros diferentes colide — os dois se chamariam fc-borda-listras e valeria o último. Por isso a ferramenta recusa consolidar um preset do mesmo efeito da tela, em vez de emitir dois @keyframes de mesmo nome. Dois componentes com o mesmo efeito precisam dos mesmos parâmetros de animação.

            1) Código global — Tag Head do site Copiado!

            2) CSS Customizado do componente Copiado!

            Instrução de uso do código gerado

            Onde colar o código 1 (global): em Configurações → Códigos personalizados → campo do cabeçalho (head) do site, com a tag style inclusa. Cola-se uma única vez: ele define a animação e vale para o site inteiro. Se usar efeitos diferentes em componentes diferentes, salve o primeiro como preset e use a consolidação do código 1 (seção 4): sai um bloco só com as duas animações, em vez de dois blocos concorrentes no mesmo campo. Colar os dois blocos separados continua funcionando — cada efeito tem nome próprio e não conflita —, mas aí são dois trechos para manter.

            A regra de acessibilidade que vem junto: ela desliga apenas esta animação para quem escolheu "reduzir movimento" no sistema — redefinindo a própria animação com um único quadro. A borda para de se mexer e continua visível (o degradê fica parado, o halo vira um anel estático). Nada mais do site é afetado: a versão anterior deste código usava * e apagava a animação de todas as páginas, inclusive as do tema. Se o efeito escolhido for borda fixa, não há animação nenhuma e o código 1 não existe.

            Onde colar o código 2 (componente): no campo CSS Customizado do próprio componente, no editor. São propriedades soltas, sem seletor — o Prosite as aplica direto no elemento do componente, então não é preciso ID Html nem classe. Se em algum componente o campo não aceitar propriedades soltas, inspecione o elemento publicado, pegue a classe que a Alboom gera e envolva tudo em .classe { ... } — nesse caso, coloque a regra completa no head.

            Regra de ouro: at-rules (@keyframes, @media) só funcionam no head; o campo do componente aceita apenas propriedades. Se a borda aparecer parada, é quase sempre porque o código 1 não foi colado no head — ou porque o nome da animação foi alterado em um dos dois lugares.

            Depois de colar: salve, publique e confira em aba anônima (evita cache). Verifique se a borda aparece e se está se movendo, e teste no celular. Cores mudam de percepção conforme o contexto da página — antes de publicar, ponha a prévia sobre o fundo real da seção (seção 4); depois de publicar, confirme na página, que é onde entram também a tipografia e o que estiver em volta.

            Dica de conversão: use a borda animada em um único elemento por página — normalmente o card do plano recomendado ou o bloco da oferta principal. Ela também substitui bem um selo do tipo "O mais escolhido" quando a plataforma não permite badge flutuante (nesse caso, escreva o texto na primeira linha do card).

            Contagem regressiva — gera a barra de urgência para o topo de uma landing page, com mensagem, contador em dias/horas/minutos/segundos e efeitos. A contagem não reinicia quando o visitante recarrega a página: o momento da primeira visita fica guardado no navegador dele. Pode contar um prazo a partir da primeira abertura ou até uma data marcada. O código sai pronto para a Tag Body (barra fixa no topo) ou para um componente HTML (barra que rola com a página).

            1 Contagem e encerramento
            Como contar

            Cada visitante tem o próprio prazo, contado da primeira vez que abriu a página naquele navegador.

            O instante é gravado no código com o fuso de Brasília (−03:00) fixo, para que todo visitante conte até o mesmo momento, esteja onde estiver.

            Trocar este código zera a contagem de todos os visitantes. É o jeito de recomeçar uma campanha. Duas campanhas com códigos diferentes convivem no mesmo site sem se atrapalhar.

            Unidades exibidas
            Quando a contagem zerar

            Reiniciar o ciclo só funciona no modo "a partir da primeira abertura": ao zerar, começa outro prazo do mesmo tamanho. Cria urgência permanente que não corresponde a um prazo real — use com consciência.

            2 Mensagens
            Adicionar mensagem

            Sem o marcador {contador}, o relógio aparece depois do texto. Com duas ou mais mensagens, os efeitos de alternância da seção 4 passam a fazer sentido; com uma só, a barra fica estática ou rolando.

            Mensagens da barra

            Nenhuma mensagem ainda. Sem nenhuma, o código usa "Oferta por tempo limitado {contador}".

              3 Aparência, posição e extras
              Cores e tipografia
              Formato e espaço
              Posição

              A escolha define onde colar o código: fixa vai na Tag Body da página; rolando com a página vai num componente HTML posicionado no topo pelo editor. O título da saída na seção 5 avisa qual dos dois.

              Em landing page, que não tem menu, empurrar é o certo: a barra reserva o próprio espaço e nada do topo fica coberto. Use sobrepor só se quiser a barra flutuando por cima do hero. O z-index raramente precisa ser tocado — ele existe para o caso de a página ter algum outro elemento fixo disputando o topo.

              Faixa reservada pelos blocos desta ferramenta: barra de contagem 99980 (este campo), botão flutuante de WhatsApp 99990 e pop-up de captação 99991. Subir este número acima de 99989 põe a barra por cima do pop-up: ele deixa de ser modal e o visitante consegue clicar na página atrás dele. Se precisar subir mesmo assim, suba para ficar abaixo de 99990 — e teste com o pop-up aberto.

              Extras da barra

              Separa o conteúdo da coruja, do botão de ação e do botão de fechar. Só tem efeito visível quando algum desses estiver ligado.

              Se o link for uma âncora como #reserva, a coluna de destino precisa ter esse valor no campo ID Html (aba Avançado do componente).

              A coruja fica ancorada na ponta, fora da área que rola — ela emoldura a barra em vez de passar junto com o texto. A altura dela acompanha a da barra e para no teto acima: quando o texto quebra em duas linhas — o que é comum no celular — ela cresce e ocupa o espaço que antes sobrava. Numa barra mais baixa que o teto ela acompanha a linha e fica menor: o teto não estica a barra, só limita a coruja. Com o teto padrão de 26 isso só acontece em barra bem curta, mas acima de 30 vale também para barra com botão — e subir o teto alarga o espaço reservado nas pontas mesmo quando a coruja não cresce, o que estreita a coluna de texto. "Mostrar no celular?" é independente da posição: dá para ter as duas no computador e nenhuma no telefone.

              4 Efeitos e movimento
              Movimento do conteúdo

              A alternância precisa de duas ou mais mensagens na seção 2. Com uma só, o código gerado cai para estático.

              Virada dos dígitos
              Entrada da barra
              Destaque contínuo (pode combinar)

              Com “Alternância deslizando” ligada, o efeito Pulsar não vale. Os dois animam o mesmo elemento pela mesma propriedade (o transform do miolo da barra), e animação em execução vence a transição do deslize: com os dois ligados, o deslize simplesmente não acontece e a troca de mensagem vira um fade. A marcação acima fica guardada, mas não entra no código gerado enquanto o movimento for “deslizando”. Para usar o pulsar, escolha outro movimento (estático, rolagem ou alternância com fade).

              O separador piscando só aparece no formato compacto (é o : entre os números). Efeitos contínuos chamam atenção o tempo todo e cansam — na dúvida, prefira a urgência progressiva ao lado, que só age quando o prazo aperta.

              Urgência progressiva

              Com “Alternância deslizando” ligada, este pulsar não vale. É o mesmo conflito do efeito Pulsar ao lado: durante a urgência, a animação tomaria o transform do miolo da barra e o deslize da troca de mensagem pararia de acontecer. A escolha fica guardada, mas não entra no código gerado enquanto o movimento for “deslizando”. A cor de urgência continua valendo normalmente.

              5 Biblioteca de presets
              6 Prévia e código gerado
              Ver como:

              A prévia roda o código gerado de verdade: é o mesmo bloco que sai na saída ao lado, executando dentro de um quadro isolado. O que ainda difere da página publicada: a barra fixa gruda no topo do quadro, não da janela; o relógio é o do seu computador; a contagem sempre começa agora, enquanto na página real ela conta a partir da primeira visita de cada visitante; o botão de fechar esquece o clique a cada atualização da prévia; o modo Computador é exibido reduzido para caber na coluna, então julgue o tamanho da fonte pelo modo Celular, que sai em tamanho real; e o quadro não carrega o CSS do tema do site.

              Código gerado Copiado!

              Instrução de uso do código gerado

              Onde colar: o título da saída avisa. Com fixa no topo, o código vai no campo Tag Body da página. Se já houver ali uma versão anterior deste bloco (ela começa com o comentário FOTO CERTA - BARRA DE CONTAGEM REGRESSIVA), substitua esse bloco inteiro. O que estiver no campo e for de outro construtor — o botão flutuante de WhatsApp, por exemplo — fica onde está: os blocos convivem no mesmo campo, um embaixo do outro. Nunca apague o campo inteiro. Com rola com a página, vai num componente HTML que você posiciona no topo da landing pelo editor. Não há nada para colar na Tag Head.

              Por que fixa exige a Tag Body: componentes HTML do Prosite vivem dentro de um iframe, e um elemento fixo dentro do iframe gruda no iframe, não na página. A Tag Body é o mesmo lugar onde mora o botão flutuante de WhatsApp, que já funciona fixo.

              A contagem não reinicia: na primeira visita o código grava o horário no navegador do visitante, na chave fcbar:SEU-CODIGO, e todas as visitas seguintes contam a partir dali. Trocar o código da campanha zera a contagem de todos — é assim que se recomeça uma promoção.

              Limites que nenhum código resolve: a contagem usa o relógio do aparelho do visitante, então quem estiver com a hora errada vê o tempo errado. O carimbo é por navegador: o mesmo visitante no celular e no computador começa duas contagens; aba anônima recomeça; limpar dados zera. O Safari pode descartar o registro depois de cerca de 7 dias sem visita — irrelevante para campanhas de dois ou três dias, relevante para campanhas de semanas.

              Fuso da data marcada: o instante é gravado com −03:00 fixo. Um visitante em outro fuso vê o tempo restante correto para o mesmo momento.

              Depois de publicar: confira em aba anônima (evita cache) que a barra aparece, que o topo da página não ficou coberto e que ao recarregar a contagem continua de onde estava. Teste também no celular, onde a barra costuma quebrar em duas linhas. Se a página tiver algum outro elemento fixo no topo disputando espaço com a barra, é aí que entram o z-index e o "sobrepor".

              Conversão: prefira a urgência progressiva aos efeitos contínuos. Uma barra que só muda quando o prazo aperta comunica algo; uma que pisca o tempo todo vira ruído e o visitante para de enxergar.

              Link de cobrança — para quando o serviço já foi combinado e falta receber. Você publica uma vez um componente HTML numa página fixa do site (por exemplo /pagar) e, a cada cobrança, gera aqui um link diferente para mandar ao cliente. A página abre com a descrição do serviço, o valor, o Pix (copia e cola mais QR Code) e, se você quiser, o PayPal — mais o botão “Já paguei”, que avisa você pelo WhatsApp. O valor mostrado na tela e o valor cobrado saem os dois de dentro do próprio código Pix que viaja no link: não existe um segundo lugar de onde eles possam divergir. Um código mexido no caminho é recusado pela página, e um código montado com a chave Pix de outra pessoa também — a página só exibe uma cobrança que ela consegue remontar a partir dos seus dados de recebedor.

              1 Quem recebe
              Pix

              Estes três campos entram no bloco da página e também em cada link. A página só aceita um link cujo código Pix tenha sido montado com exatamente esta chave, este nome e esta cidade — é assim que ela sabe que aquela cobrança é sua. Se você trocar a chave e regerar o bloco, os links antigos ainda não pagos param de abrir: gere links novos para eles.

              PayPal

              O botão do PayPal no site é adulterável de um jeito que o Pix não é. No Pix, o valor que a tela mostra é lido de dentro do mesmo código que o aplicativo do banco vai ler: os dois não têm como discordar. No botão do PayPal o valor é calculado no navegador do cliente e a tela pode dizer uma coisa enquanto a ordem leva outra. No botão do PayPal o valor é calculado no navegador do cliente: quem souber mexer paga o que quiser. Para valor alto, use o segundo modo — colar um link de cobrança criado no próprio PayPal, na seção 3: ali o valor fica guardado no PayPal e o cliente não alcança. A escolha é por cobrança.

              Comprovante pelo WhatsApp

              O botão abre o WhatsApp com a descrição, o valor e o identificador da cobrança já escritos na mensagem — assim você sabe de qual cobrança o cliente está falando. O Pix estático não avisa ninguém quando cai: confira o extrato antes de entregar o trabalho.

              2 A página de pagamento
              Endereço da página

              Serve só para montar o link. A página em si não precisa saber o próprio endereço.

              Textos
              Aparência
              Coruja da identidade
              Quando o link não traz uma cobrança

              A página fica publicamente alcançável: quem abrir o endereço sem link algum precisa encontrar uma mensagem cordial, nunca uma página quebrada.

              3 Esta cobrança
              O que está sendo cobrado

              A descrição é cosmética. Ela viaja no link em campo próprio e alterá-la não muda um centavo do que é cobrado — o valor está dentro do código Pix, e é de lá que a tela o lê. Não há por que “proteger” a descrição.

              PayPal desta cobrança

              À prova de adulteração: no modo “link criado no PayPal” o valor fica guardado lá, e o cliente não tem como mexer. Custa um passo manual por cobrança e é o modo recomendado para valor alto.

              O endereço é conferido pela mesma regra que a página publicada usa: só https:// de um domínio do próprio PayPal, e sem espaço, quebra de linha, tabulação ou barra invertida no meio — que costumam vir invisíveis ao colar de um PDF ou de um e-mail. Se a ferramenta recusar um endereço que parece certo, apague o campo e digite de novo.

              Gerar o link

              Mande o link individualmente, nunca em grupo: a pré-visualização de link mostra a descrição e o valor para todo mundo que estiver na conversa.

              4 Biblioteca de presets
              5 Prévia e código gerado
              Ver a página:

              A prévia roda o código gerado de verdade: é o mesmo bloco que sai na saída ao lado, executando dentro de um quadro isolado que recebe um endereço simulado com os parâmetros da cobrança da seção 3. Os três botões acima trocam esse endereço — em Código adulterado um dígito do código Pix é trocado, exatamente como aconteceria se alguém mexesse no link. O que ainda difere da página publicada: o QR Code é desenhado por uma biblioteca baixada da internet, então no quadro ele só aparece depois que ela carrega; o botão do PayPal não é o botão de verdade (o SDK não roda na prévia) e sai como desenho; o botão “Já paguei” não abre o WhatsApp aqui (o quadro desliga a abertura de abas, e avisa em vermelho se não conseguir desligar); e o quadro não carrega o CSS do tema do site.

              Código 1 — a página de pagamento (componente HTML, cola-se uma vez só) Copiado!

              Código 2 — o link desta cobrança (muda a cada cobrança) Copiado!

              As duas saídas têm vidas diferentes: o código 1 vai uma vez só para o componente HTML da página fixa; o código 2 é gerado a cada cobrança e vai para o cliente. Mudar a descrição ou o valor não exige colar o código 1 de novo.

              Mexeu na cobrança, a caixa do link esvazia. Trocar a descrição, o valor, o identificador, o endereço da página, o modo de PayPal ou os dados do recebedor apaga o link que estava aqui — para não existir a chance de copiar um link com o valor da cobrança anterior. Clique em Gerar link desta cobrança de novo. Mexer só na aparência ou nos textos do cartão não apaga nada: isso muda o código 1, e aí quem avisa é o painel consolidado.

              Instrução de uso do código gerado

              Uma vez só: crie no Prosite uma página fixa (sugestão: /pagar), ponha nela um componente HTML e cole ali o código 1. Publique. Não há nada para colar na Tag Head nem na Tag Body.

              A cada cobrança: preencha a seção 3 (descrição, valor e, se quiser, um identificador), clique em Gerar link desta cobrança e mande o código 2 ao cliente. Você pode ter quantas cobranças quiser abertas ao mesmo tempo: a página não guarda nada, lê tudo do endereço.

              O que a página garante, dito sem exagero. O link carrega o código Pix já pronto, com o valor dentro dele. A página confere a verificação interna do código, remonta o código a partir dos seus dados de recebedor e só exibe a cobrança se o resultado for idêntico ao que chegou. Aí ela lê o valor de dentro do código e usa esse mesmo valor na tela e no botão do PayPal. Disso saem três garantias e um limite:

              1. Tela, Pix e PayPal não podem divergir, porque leem o mesmo lugar — não existe um segundo parâmetro de valor para ficar desatualizado.
              2. Link mexido na mão é recusado: trocar um dígito quebra a verificação interna do código.
              3. Link com a chave de outra pessoa é recusado: a remontagem não fecha, então ninguém usa a sua página de pagamento para receber na conta dele.

              O limite, que nenhum código sem servidor resolve. Sua chave Pix é pública — é o que você dá a quem vai te pagar. Quem souber recalcular a verificação interna monta um link seu, que a sua página aceita, com dois campos trocados: o valor (para menos ou para mais) e o identificador. O dinheiro continua indo para a sua conta — isso a página garante —, e a tela, o Pix e o PayPal continuam dizendo o mesmo número. O que ela não garante é que esse número, e esse identificador, sejam os que você escreveu aqui.

              Na prática, os dois jeitos de isso incomodar: um cliente que tenta pagar menos do que foi combinado; e alguém que manda ao seu cliente um link forjado com valor maior — o cliente paga a mais, para você, achando que é o preço. Nos dois casos o que resta é detectar: confira no extrato o valor recebido e a qual cobrança ele se refere, antes de entregar o trabalho. Impedir exigiria um segredo que o cliente não pudesse ler, ou seja, um servidor — e este projeto não tem um, por decisão.

              O que continua sendo por sua conta: o Pix estático não confirma pagamento sozinho — ninguém avisa a página quando o dinheiro cai. O botão “Já paguei” serve para o cliente te chamar; a conferência é sua, no extrato.

              Depois de publicar: abra o endereço da página sem nenhum parâmetro e confirme que aparece a mensagem cordial. Depois abra um link de cobrança de verdade em aba anônima e confira que o valor da tela é o mesmo do aplicativo do banco ao ler o QR Code.

              Mini loja — gera o código de uma vitrine com carrinho para colar num componente HTML de uma página do site. O visitante vê os produtos em grade com foto, filtra por categoria, clica num item para abrir o cartão de detalhe na mesma página (com a foto grande, a descrição e os opcionais), monta o carrinho ao lado e paga por Pix, PayPal ou os dois. Cupom, cobrança de sinal, quantidade por item e desconto no Pix são as mesmas contas do Checkout — a conta do dinheiro é escrita uma vez só e usada pelas duas abas. É um catálogo com carrinho, não uma loja completa: não há registro de pedidos, confirmação automática de pagamento nem estoque. Esses limites estão escritos na seção 6 e também dentro da página gerada, no rodapé do carrinho.

              1 Como você recebe
              Formas de pagamento

              Ele identifica o carrinho no navegador do cliente (é a chave do armazenamento) e abre o identificador de cada pedido, que é o que aparece no seu extrato. Duas lojas no mesmo site precisam de códigos diferentes, senão dividem o mesmo carrinho.

              Conta PayPal

              O preço tem aqui o mesmo limite do link de cobrança. No Pix o valor viaja dentro do código que o aplicativo do banco lê, e o banco trava nele. No botão do PayPal o valor é calculado no navegador do cliente: tela, Pix e PayPal desta página nunca divergem entre si, mas alguém determinado monta um pagamento com outro valor. Não há como impedir sem um servidor, e este projeto não tem um. Confira o valor recebido antes de produzir.

              Dados do recebedor (Pix)
              Desconto para pagamento via Pix

              Com a cobrança de sinal ligada este campo não vale. O Pix passa a cobrar o sinal, e o desconto do Pix não se aplica sobre o sinal — seria desconto dobrado, porque o sinal já sai de um total que pode ter cupom. O número acima fica guardado, mas não entra no código gerado.

              Aviso de pagamento Pix via WhatsApp

              A mensagem já vai com o identificador do pedido, os itens, o cupom e o valor. Ao clicar nele o carrinho do cliente é esvaziado — é o único momento em que a página sabe que a compra terminou. O Pix estático não avisa ninguém quando o dinheiro cai: a conferência é sua, no extrato.

              2 Produtos do catálogo
              Cadastrar produto

              De 15 a 50 produtos é o tamanho para o qual esta vitrine foi desenhada. Cada produto pode ter os seus próprios itens opcionais, como no Checkout.

                Nenhum opcional neste produto.

                Importar as fotos de uma galeria inteira

                  Isto é a mesma leitura que a aba Slideshow faz, com outro destino: em vez de virar uma lista de fotos, os endereços ficam aqui para você associar ao produto que estiver cadastrando. Nada do que você cola nestes dois campos é salvo.

                  Catálogo

                    Nenhum produto cadastrado ainda. Use o formulário ao lado.

                    Vale para todos os itens vendidos por quantidade. O seletor vai de 0 até esse número, e no carrinho 0 tira a linha.

                    Cupons de desconto

                    O segundo campo é a validade (opcional — vale até o fim do dia; vazio = sem validade).

                      Nenhum cupom. O campo de cupom não aparecerá no carrinho.

                      Cupom não é secreto. Ele fica escrito dentro do código desta página, e qualquer visitante que abrir o código-fonte consegue lê-lo. Serve para divulgar um desconto, não para dar desconto a uma pessoa só. Isto já vale hoje no Checkout.

                      Cobrança de sinal
                      3 Vitrine, categorias e peso das fotos
                      Grade da vitrine

                      Abaixo dessa largura o carrinho deixa de ficar ao lado e vai para baixo da vitrine, e a grade cai para no máximo 2 colunas. Os dois botões da prévia atravessam esse corte, então dá para conferir os dois layouts.

                      Os botões só aparecem se houver ao menos um produto com categoria. Produto sem categoria aparece em "Todos" e em mais nada.

                      Tamanho das fotos pedidas

                      Por que isto é um campo e não um detalhe. As fotos do storage da Alboom saem todas com 1200 px de largura e de 157 a 868 KB cada (medido). Cinquenta delas numa grade seriam dezenas de megabytes. A página pede cada foto ao redimensionador da Alboom na largura escolhida aqui, e só pede a foto grande quando alguém abre o cartão de detalhe.

                      Estas larguras são um teto, não uma promessa. Foto pedida acima da largura que ela tem de verdade sai esticada: mais bytes, nenhum detalhe a mais — medido, uma foto de 735 px pedida a 1000 px devolve 297 KB no lugar de 220 KB. Por isso a ferramenta mede a largura de cada foto do catálogo (uma vez por foto, ao abrir esta aba ou ao cadastrar, e o número fica salvo) e a loja publicada nunca pede mais do que a foto tem. A linha acima diz quantas ficaram abaixo das larguras escolhidas. Foto que não passa pelo redimensionador não é medida: ela vai inteira de qualquer jeito.

                      Foto que não passa pelo redimensionador não encolhe. O redimensionador é um serviço da Alboom sobre o storage dela, e só alcança endereços completos em storage.alboom.ninja, alfred.alboompro.com ou cdn.alboompro.com (este último é o servidor das páginas comuns do site). Qualquer outra — outro servidor, ou um caminho do próprio site como /fotos/promo.jpg — vai inteira para a vitrine. O cadastro avisa quando isso acontece, e na lista do catálogo essas linhas aparecem com a origem em destaque. Quem decide é a mesma função que roda dentro do código gerado, então o aviso não tem como discordar da página publicada.

                      4 Textos e aparência
                      Textos
                      Aparência
                      Resumo copiável

                      O resumo lista os itens, o cupom, o total e o sinal, com um botão de copiar — é o que o cliente manda para você quando quiser combinar alguma coisa antes de pagar.

                      5 Biblioteca de presets
                      6 Prévia e código gerado
                      Ver a loja em:

                      A prévia executa o código gerado de verdade: é o mesmo bloco que sai na caixa ao lado, rodando dentro de um quadro isolado. Filtro, cartão de detalhe, carrinho, cupom e o Pix funcionam aqui como funcionarão na página. O que ainda difere da página publicada: o carrinho do quadro é guardado numa memória de mentira (o quadro não suja o carrinho do seu navegador, e por isso ele volta vazio a cada atualização da prévia); o QR Code é desenhado por uma biblioteca baixada da internet, então só aparece depois que ela carrega; o botão do PayPal não é o botão de verdade — o SDK não roda aqui e ele sai como desenho, com o valor que iria na ordem medido dentro do próprio bloco; o botão "Já paguei" não abre o WhatsApp — o quadro desliga a abertura de abas, e avisa em vermelho se não conseguir desligar; e o quadro não carrega o CSS do tema do site.

                      Código da loja (componente HTML) Copiado!

                      Mudar produto, preço, cupom ou aparência não apaga o que está nesta caixa: quem avisa que o código ficou velho é o painel consolidado, ao lado das abas. Clique em Gerar código de novo antes de colar.

                      Instrução de uso do código gerado

                      Onde colar: crie no Prosite a página da loja, ponha nela um componente HTML e cole ali o código acima. Publique — e teste na página publicada, não no editor: o Prosite processa o código na publicação.

                      Como o cliente usa: ele vê a grade, filtra por categoria se você tiver criado categorias, clica num item para abrir o cartão de detalhe na mesma página, escolhe os opcionais e a quantidade, adiciona ao carrinho e paga. Não há navegação entre páginas: tudo acontece nesta.

                      Para atualizar o catálogo: mude aqui, clique em Gerar código e cole por cima. É o mesmo fluxo de todas as outras abas — o catálogo vive dentro do código da página.

                      O que esta loja não faz — leia antes de publicar

                      Não há registro de pedidos. Um pedido existe como três rastros: a mensagem que chega no seu WhatsApp, a transação no PayPal e o Pix na sua conta. Não existe uma lista de pedidos em lugar nenhum, e nenhuma tela para consultá-los.

                      Não há confirmação automática. Nem o Pix estático nem o PayPal têm para onde avisar esta página quando o dinheiro cai. Você confere e libera à mão, pelo extrato.

                      Não há estoque. Todos os itens são tratados como sob encomenda: o mesmo item pode ser comprado quantas vezes for. Se um dia você vender uma peça única, saiba que não há como esta página impedir que duas pessoas a comprem — impedir exigiria um servidor guardando o que já foi vendido, e este projeto não tem um.

                      O cupom não é secreto — está dentro do código desta página, à vista de quem abrir o código-fonte.

                      O carrinho não atravessa aparelhos. Ele fica no armazenamento do navegador: montado no celular, no computador aparece vazio. O carrinho sobrevive a recarregar a página; o cupom não — o cliente digita de novo (medido). E se você regerar o bloco com o catálogo mudado, as linhas que não existem mais são descartadas com aviso no carrinho do cliente, em vez de virarem uma compra de outro item.

                      O preço tem o mesmo limite do link de cobrança. Tela, Pix e PayPal desta página não divergem entre si — eles leem a mesma conta. Mas o valor do PayPal é montado no navegador do cliente, e alguém determinado monta um pagamento com outro valor. A garantia é de coerência, não de valor: confira o extrato antes de produzir.

                      Uma Mini loja por página. Dois blocos desta aba na mesma página do Prosite não funcionam: os dois procuram a mesma caixa (id="fcmloja"), então o primeiro bloco desenha o catálogo do segundo e o segundo não desenha nada. É a mesma limitação do Checkout (id="fcuni"), e ela é conhecida e não corrigida — corrigir mudaria o identificador dos dois blocos e de todo código já colado no site. Duas lojas, duas páginas.

                      Códigos de loja diferentes, mesmo em páginas diferentes. O código da loja é a chave do carrinho no navegador do cliente. Se duas lojas usarem o mesmo código, o carrinho montado numa é lido pela outra — e agora ele é descartado com aviso na tela do cliente (cada bloco carrega a assinatura do próprio catálogo, e recusa carrinho que não seja dele). O aviso conserta o sintoma, não a causa: use códigos diferentes.

                      Depois de publicar: abra a página em aba anônima, monte um carrinho, gere o Pix e confira no aplicativo do banco que o valor lido do QR Code é o mesmo que a página mostra. Depois recarregue a página e confirme que o carrinho continua lá.

                      Painel consolidado

                      Ferramenta interna Foto Certa. Novos construtores podem ser adicionados como novas abas.