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

# Get a Payment Intent

> Retorna um payment intent pelo ID.

Retorna o objeto `payment_intent` pelo ID Chargefy. O campo `payment_method`
retorna o ID do método salvo por padrão. O campo `latest_charge` retorna o ID
da última tentativa de cobrança criada pela confirmação do intent. Use
`expand[]=payment_method` ou `expand[]=latest_charge` para receber objetos
aninhados.

<Note>
  PaymentIntent é o documento financeiro de compras avulsas (one-off) na
  Chargefy. Use `payment.intent.succeeded` no webhook para confirmar uma compra
  one-off — invoices não são criadas para esse fluxo. Cobranças de assinatura
  têm um PaymentIntent vinculado à invoice (`invoice.payment_intent`).
</Note>

## Autenticação

A API key da própria organização atua diretamente. A API key de plataforma exige o
header `Organization: <organization_id>` apontando para uma organização
conectada ativa.

## Parâmetros de caminho

<ParamField path="id" type="string" required>
  ID do payment intent (`pi_*`).
</ParamField>

## Parâmetros de query

<ParamField query="expand[]" type="string">
  Use `payment_method` para expandir o método salvo ou `latest_charge` para
  expandir a última tentativa de cobrança.
</ParamField>

<RequestExample>
  ```bash cURL theme={}
  curl -X GET "https://api.chargefy.io/v1/payment-intents/pi_123?expand[]=payment_method" \
    -H "Authorization: Bearer {{API_KEY}}"
  ```
</RequestExample>

## Resposta

<ResponseExample>
  ```json 200 theme={}
  {
    "id": "pi_123",
    "object": "payment_intent",
    "amount": 10528,
    "amount_capturable": 0,
    "amount_details": {
      "installment_interest": 528,
      "subtotal": 10000,
      "total": 10528
    },
    "amount_received": 10528,
    "canceled_at": null,
    "cancellation_reason": null,
    "capture_method": "automatic",
    "client_secret": "pi_123_secret_abc",
    "confirmation_method": "automatic",
    "created_at": "2026-05-16T18:34:58Z",
    "currency": "brl",
    "customer": "cus_123",
    "invoice": "inv_123",
    "last_payment_error": null,
    "latest_charge": "ch_123",
    "livemode": true,
    "metadata": {},
    "next_action": null,
    "payment_method": "pm_123",
    "payment_method_options": {
      "credit_card": {
        "installments": {
          "amount_subtotal": 10000,
          "amount_total": 10528,
          "count": 3,
          "has_interest": true,
          "interest_amount": 528
        }
      }
    },
    "payment_method_types": [
      "credit_card"
    ],
    "setup_future_usage": null,
    "status": "succeeded",
    "updated_at": "2026-05-16T18:35:00Z"
  }
  ```

  ```json 401 theme={}
  {
    "error": {
      "code": "authentication_failed",
      "message": "Invalid API key provided.",
      "type": "authentication_error"
    }
  }
  ```

  ```json 404 theme={}
  {
    "error": {
      "code": "resource_missing",
      "message": "Payment intent not found.",
      "type": "invalid_request_error"
    }
  }
  ```
</ResponseExample>

## Status

| Valor                     | Significado                                             |
| ------------------------- | ------------------------------------------------------- |
| `requires_payment_method` | Falta método de pagamento.                              |
| `requires_confirmation`   | Pronto para confirmação/processamento.                  |
| `requires_capture`        | Autorizado com captura manual; pronto para captura.     |
| `pending`                 | Aguardando ação do comprador ou confirmação assíncrona. |
| `processing`              | Pagamento em processamento.                             |
| `succeeded`               | Pagamento concluído.                                    |
| `failed`                  | Pagamento falhou.                                       |
| `canceled`                | Pagamento cancelado.                                    |

## Charges

Uma `charge` representa uma tentativa de cobrar o `payment_intent`. Ela é
criada pela confirmação do intent e não por uma chamada direta de criação.
Um intent pode ter mais de uma charge quando há novas confirmações ou tentativas
de pagamento; `latest_charge` aponta para a tentativa mais recente.
