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

# Atualizar Método de Pagamento

> Atualizar uma entidade de método de pagamento — no modelo de entidades gu1 para cartões, contas e carteiras, com exemplos para update.

## Visão Geral

Atualiza uma entidade de método de pagamento existente. Este endpoint permite atualizações parciais - você só precisa fornecer os campos que deseja alterar.

## Endpoint

```
PATCH http://api.gu1.ai/entities/{id}
```

## Autenticação

Requer uma chave API válida no cabeçalho de Autorização:

```bash theme={null}
Authorization: Bearer YOUR_API_KEY
```

## Parâmetros de Rota

<ParamField path="id" type="string" required>
  UUID da entidade de método de pagamento a atualizar
</ParamField>

## Corpo da Requisição

<ParamField body="entityData" type="object">
  Container para dados do método de pagamento a atualizar
</ParamField>

<ParamField body="relationships" type="array">
  Array de relacionamentos para adicionar ou atualizar
</ParamField>

<ParamField body="metadata" type="object">
  Metadados adicionais para atualizar
</ParamField>

## Exemplos de Requisições

### Atualizar Data de Vencimento do Cartão

<CodeGroup>
  ```bash cURL theme={null}
  curl -X PATCH "http://api.gu1.ai/entities/payment-method-uuid-123" \
    -H "Authorization: Bearer YOUR_API_KEY" \
    -H "Content-Type: application/json" \
    -d '{
      "entityData": {
        "paymentMethod": {
          "expiryMonth": "06",
          "expiryYear": "2026"
        }
      }
    }'
  ```

  ```javascript JavaScript theme={null}
  const response = await fetch(
    'http://api.gu1.ai/entities/payment-method-uuid-123',
    {
      method: 'PATCH',
      headers: {
        'Authorization': 'Bearer YOUR_API_KEY',
        'Content-Type': 'application/json'
      },
      body: JSON.stringify({
        entityData: {
          paymentMethod: {
            expiryMonth: '06',
            expiryYear: '2026'
          }
        }
      })
    }
  );

  const updated = await response.json();
  console.log('Data de vencimento atualizada');
  ```

  ```python Python theme={null}
  import requests

  response = requests.patch(
      'http://api.gu1.ai/entities/payment-method-uuid-123',
      headers={
          'Authorization': 'Bearer YOUR_API_KEY',
          'Content-Type': 'application/json'
      },
      json={
          'entityData': {
              'paymentMethod': {
                  'expiryMonth': '06',
                  'expiryYear': '2026'
              }
          }
      }
  )

  updated = response.json()
  print('Data de vencimento atualizada')
  ```
</CodeGroup>

### Adicionar Metadados

<CodeGroup>
  ```bash cURL theme={null}
  curl -X PATCH "http://api.gu1.ai/entities/payment-method-uuid-123" \
    -H "Authorization: Bearer YOUR_API_KEY" \
    -H "Content-Type: application/json" \
    -d '{
      "metadata": {
        "isDefault": true,
        "addedVia": "mobile_app",
        "verifiedAt": "2024-12-23T10:00:00Z"
      }
    }'
  ```

  ```javascript JavaScript theme={null}
  const response = await fetch(
    'http://api.gu1.ai/entities/payment-method-uuid-123',
    {
      method: 'PATCH',
      headers: {
        'Authorization': 'Bearer YOUR_API_KEY',
        'Content-Type': 'application/json'
      },
      body: JSON.stringify({
        metadata: {
          isDefault: true,
          addedVia: 'mobile_app',
          verifiedAt: new Date().toISOString()
        }
      })
    }
  );
  ```

  ```python Python theme={null}
  from datetime import datetime

  response = requests.patch(
      'http://api.gu1.ai/entities/payment-method-uuid-123',
      headers={'Authorization': 'Bearer YOUR_API_KEY'},
      json={
          'metadata': {
              'isDefault': True,
              'addedVia': 'mobile_app',
              'verifiedAt': datetime.utcnow().isoformat() + 'Z'
          }
      }
  )
  ```
</CodeGroup>

## Resposta

<ResponseField name="success" type="boolean">
  Se a operação foi bem-sucedida
</ResponseField>

<ResponseField name="id" type="string">
  UUID da entidade de método de pagamento atualizada
</ResponseField>

<ResponseField name="entityData" type="object">
  Os dados completos do método de pagamento atualizado
</ResponseField>

<ResponseField name="updatedAt" type="string">
  Timestamp ISO 8601 desta atualização
</ResponseField>

## Exemplo de Resposta

```json theme={null}
{
  "success": true,
  "id": "payment-method-uuid-123",
  "entityType": "payment_method",
  "entityData": {
    "paymentMethod": {
      "type": "credit_card",
      "last4": "4242",
      "brand": "visa",
      "expiryMonth": "06",
      "expiryYear": "2026",
      "holderName": "John Doe"
    }
  },
  "metadata": {
    "isDefault": true,
    "addedVia": "mobile_app",
    "verifiedAt": "2024-12-23T10:00:00Z"
  },
  "updatedAt": "2024-12-23T10:15:00.000Z"
}
```

<Warning>
  * Este é um endpoint de atualização parcial - apenas os campos fornecidos serão atualizados
  * Outros campos permanecerão inalterados
  * Para remover um campo, defina-o explicitamente como `null`
  * Atualizações de campos sensíveis (como números de cartão) podem ser restritas
</Warning>

## Veja Também

* [Criar Método de Pagamento](/pt/api-reference/payment-methods/create)
* [Obter Método de Pagamento](/pt/api-reference/payment-methods/get)
* [Listar Métodos de Pagamento](/pt/api-reference/payment-methods/list)
