> ## Documentation Index
> Fetch the complete documentation index at: https://docs.plugtopay.com/llms.txt
> Use this file to discover all available pages before exploring further.

# Configurações

> Tempo de espera síncrono, modo de resposta padrão e retentativas automáticas.

As configurações ficam no painel na página Orquestração.

```json theme={null}
{
  "time_to_wait_sync": 6.0,
  "default_response": "sync",
  "retry_failed_payments": true,
  "max_retry_attempt": 3
}
```

***

## `time_to_wait_sync`

Controla por quanto tempo (em segundos) o servidor aguarda a resposta do gateway antes de devolver uma resposta HTTP ao cliente.

**O que acontece internamente:**

```
Requisição chega
    ↓
Coroutine criada — processa o pagamento em paralelo
    ↓
Servidor aguarda até time_to_wait_sync segundos
    ↓
Gateway respondeu a tempo?
    SIM → 201 com resultado completo (approved / failed)
    NÃO → 202 com transaction_id ("pagamento em processamento")
              ↓
           Gateway responde depois → webhook entregue ao seu servidor
```

| Valor  | Comportamento   |
| ------ | --------------- |
| Padrão | `5.0` segundos  |
| Mínimo | `0.5` segundos  |
| Máximo | `30.0` segundos |

O `202` não significa falha — significa que o gateway ainda não respondeu. O resultado final sempre chega via webhook.

***

## `default_response`

Define o modo padrão de resposta independentemente do tempo de espera.

| Valor           | Comportamento                                                  |
| --------------- | -------------------------------------------------------------- |
| `sync` (padrão) | Aguarda até `time_to_wait_sync` — pode retornar `201` ou `202` |
| `async`         | Retorna `202` imediatamente, sem aguardar o gateway            |

Use `async` quando a latência de resposta for crítica e seu sistema já está preparado para receber o resultado via webhook.

***

## `retry_failed_payments` e `max_retry_attempt`

Controlam o comportamento de retentativa automática quando um gateway recusa o pagamento.

| Campo                   | Padrão | Range | Descrição                                          |
| ----------------------- | ------ | ----- | -------------------------------------------------- |
| `retry_failed_payments` | `true` | —     | Habilita retentativas automáticas em caso de falha |
| `max_retry_attempt`     | `5`    | 1–10  | Número máximo de tentativas por transação          |

Cada retentativa seleciona o próximo gateway disponível usando a mesma lógica de roteamento (percentual → ordem). O resultado de cada tentativa fica registrado no array `transactions[]` da resposta.

**Não são refeitas retentativas** para os seguintes motivos de recusa:

* `expired_card` — cartão vencido
* `insufficient_founds` — saldo insuficiente

Nesses casos, uma nova tentativa no mesmo ou em outro gateway resultaria na mesma recusa, então o sistema interrompe imediatamente.
