> For the complete documentation index, see [llms.txt](https://ftcoders.first-tech.com/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://ftcoders.first-tech.com/first-tech-ttp-sdk-pt/finalizacao-da-venda-com-tap-to-pay.md).

# Finalização da Venda com Tap to Pay

**Objetivo**

Definir os requisitos mínimos para a finalização de uma venda utilizando Tap to Pay durante o processo de checkout, garantindo visualização clara do pedido, opções flexíveis de pagamento e interação segura via NFC.

**Diretrizes**

* Este fluxo deve ser otimizado para ambientes com conectividade instável (suportando cache de pedidos).
* A compatibilidade com leitores NFC (Android/iOS) deve ser testada conforme o hardware utilizado.
* O tempo entre a confirmação e a leitura via NFC não deve exceder 5 segundos para garantir uma experiência fluida.

***

<figure><img src="/files/dOnAfyHBXvUdFHT0lGBZ" alt=""><figcaption></figcaption></figure>

## **Revisão do Pedido**

### 01 - Lista de itens

Deve exibir imagem, nome, categoria, preço e controles de quantidade para cada produto.

### 02 - Resumo do preço

Deve mostrar: número de itens, valor bruto, desconto aplicado e valor total claramente destacado.

### 03 - Botão “Forma de pagamento”

Deve estar destacado como a principal chamada para ação e habilitado assim que houver pelo menos um item no carrinho.

{% hint style="success" %}
**Obrigatório:**\
Todos os valores devem ser atualizados dinamicamente conforme as quantidades dos itens mudam.
{% endhint %}

{% hint style="info" %}
**Recomendado:**\
Utilizar ícones visuais (ex.: sacola, moeda, desconto) para melhorar a escaneabilidade.
{% endhint %}

***

## **Seleção do Método de Pagamento**

Modal de métodos de pagamento\
Deve exibir todas as opções de pagamento disponíveis com ícones e rótulos claros:

* Tap to Pay
* Pix
* Link de pagamento

{% hint style="success" %}
**Obrigatório:**\
“Tap to Pay” deve estar visível e acessível, com destaque apropriado baseado no uso.
{% endhint %}

{% hint style="info" %}
**Recomendado:**\
Permitir que o sistema reordene as opções com base na atividade recente do usuário.
{% endhint %}

***

## **Definição do Tap to Pay**

### **Opções de pagamento**

O usuário deve selecionar Crédito ou Débito. Se Crédito for selecionado, as opções de parcelamento devem ser exibidas mostrando:

* Número de parcelas
* Valor por parcela
* Valor total

{% hint style="success" %}
**Obrigatório:**\
O botão “Continuar” deve ser habilitado somente após a seleção do tipo de pagamento e, se aplicável, do plano de parcelamento.
{% endhint %}

{% hint style="info" %}
**Recomendado:**\
Indicar claramente a opção selecionada usando cor, sombra ou ícone de check.
{% endhint %}

***

## **Tela de Pagamento via NFC**

### A tela de instruções NFC deve incluir:

* Valor final destacado
* Tipo de pagamento (ex.: crédito – à vista)
* Ilustração mostrando o gesto de proximidade do cartão ou celular
* Indicador ou ícone animado de leitura NFC

{% hint style="success" %}
**Obrigatório:**\
O sistema deve aguardar a detecção NFC com feedback em tempo real.
{% endhint %}

{% hint style="info" %}
**Recomendado:**\
Exibir alertas visuais e sonoros apropriados para erros (“Cartão não detectado”) e confirmações (“Pagamento aprovado”).
{% endhint %}

***

## **Mensagens Obrigatórias**

* Quando nenhum método de pagamento for selecionado:

> Por favor, selecione um método de pagamento para continuar.

* Quando a leitura NFC falhar:

> Não foi possível detectar o cartão. Ajuste a posição e tente novamente.

***

## **Comportamentos Esperados**

* A lista de itens deve permanecer editável até que um método de pagamento seja selecionado.
* O botão “Método de pagamento” deve permanecer visível/fixo, mesmo durante a rolagem.
* O valor total deve ser bloqueado assim que a fase NFC iniciar.
* A transação deve poder ser cancelada a qualquer momento antes da confirmação.


---

# Agent Instructions
This documentation is published with GitBook. GitBook is the documentation platform designed so that both humans and AI agents can read, navigate, and reason over technical content effectively. Learn more at gitbook.com.

## Querying This Documentation
If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter, and the optional `goal` query parameter:

```
GET https://ftcoders.first-tech.com/first-tech-ttp-sdk-pt/finalizacao-da-venda-com-tap-to-pay.md?ask=<question>&goal=<endgoal>
```

`ask` is the immediate question: it should be specific, self-contained, and written in natural language.
`goal` is optional and describes the broader end goal you are ultimately trying to accomplish on behalf of the user. GitBook uses it to tailor the answer towards what is most useful for that goal.

The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
