# Dynamic Currency Conversion (DCC)

Dynamic Currency Conversion (DCC) é uma funcionalidade que permite aos portadores de cartões internacionais pagar em sua moeda de origem em vez da moeda local do estabelecimento (Euro). A Get Smart API Cloud suporta fluxos de DCC, fornecendo campos de dados específicos e requisitos de impressão de recibos para garantir a conformidade com as regulamentações financeiras.

## Como o DCC Funciona
    
Quando um cartão que não é em Euro (ex.: um Visa em Dólar Americano) é utilizado em um terminal, o sistema pode oferecer uma escolha ao portador do cartão:

1. Pagar em **EUR** (A moeda do estabelecimento). A taxa de câmbio é determinada posteriormente pelo banco do portador do cartão.  
2. Pagar em **USD** (A moeda do portador do cartão). A taxa de câmbio é determinada imediatamente pelo provedor de DCC, oferecendo certeza sobre o valor final cobrado.

Essa negociação acontece fisicamente no terminal. Se o cliente aceitar a oferta de DCC, a API Cloud retorna dados adicionais na resposta da transação.

## Estrutura de Dados do DCC

Se uma transação incluir DCC, o payload de resposta (`datosRespuesta`) conterá campos específicos detalhando a conversão de moeda.

### Campos Principais do DCC

| Campo | Descrição | Exemplo |
| :---- | :---- | :---- |
| `codigoDivisa` | O código ISO numérico da moeda estrangeira. | `840` (USD) |
| `importeDivisa` | O valor final cobrado na moeda estrangeira. | `71,37` |
| `tasaCambio` | A taxa de câmbio aplicada à transação. | `0.840678` |
| `tasaDivisaSinComision` | A taxa de câmbio base antes do markup. | `0.870102` |
| `pocentajeComision` | O percentual de comissão (markup) aplicado pelo serviço. | `2.0` |

### Requisitos do Recibo (Literales)

Regras de conformidade exigem que o recibo impresso para o cliente declare claramente os termos da conversão. A API simplifica isso retornando um objeto `Literales` contendo o texto exato que você deve imprimir.

Você **deve** imprimir essas linhas exatamente como recebidas, se elas estiverem presentes na resposta.

* **Aviso Legal:** Um bloco de texto confirmando a escolha do usuário (ex.: *"I accept that I have been offered a choice of currencies..."*).  
* **Objeto `datosDCC`:** Contém linhas estruturadas para o rodapé do recibo:  
  * `linLitTrans`: Rótulo para a moeda da transação.  
  * `linLitDivisa`: O valor na moeda estrangeira.  
  * `linCambio`: A equação da taxa de câmbio (ex.: `USD 1.00 \= 0.840678 EUR`).  
  * `linMarkUp`: Declaração explícita da comissão (ex.: `INCLUDES 2.0% MARK-UP`).

> **Lógica de Impressão**: Se o objeto `Literales` estiver presente na resposta, sua lógica de impressão deve iterar por ele e anexar o texto ao recibo do cliente. Consulte as **Especificações de Impressão de Recibos** para ver exemplos de layout.

## Próximos Passos

* [**Especificações de Impressão de Recibos**](/pt/get-smart/get-smart-api-cloud/reference/receipt-printing-specifications)**:** exemplos detalhados de layouts de recibos com DCC.  
* [**Processar Pagamentos em Etapa Única**](/pt/get-smart/get-smart-api-cloud/integration-guides/process-single-step-payments)**:** Aprenda como lidar com o fluxo de pagamento padrão onde o DCC pode ocorrer.