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

# Obtener ofertas de tarjetas

La consulta `getVirtualCardOffers` te permite recuperar una lista de ofertas activas de tarjetas virtuales; cada oferta es un programa de tarjeta contra el cual puedes emitir.

<Info>
  **Requisitos previos:** un token de acceso de usuario con el alcance `CREATE_VIRTUALCARD`.
</Info>

## Argumentos

* **`input`** (`GetVirtualCardOffersInput`): Entrada opcional para filtrar las ofertas de tarjetas virtuales.

## Campos de GetVirtualCardOffersInput

| Field             | Type                   | Description                                                                 | Required |
| :---------------- | :--------------------- | :-------------------------------------------------------------------------- | :------- |
| `cardBrandLocked` | `Boolean`              | Especifica si las ofertas de tarjetas virtuales están bloqueadas por marca. | No       |
| `cardType`        | `VirtualCardOfferType` | Especifica el tipo de red de la tarjeta virtual (`DEBIT` o `PREPAID`).      | No       |
| `cardNetwork`     | `VirtualCardNetwork`   | Especifica el tipo de red de la tarjeta virtual (`MASTERCARD` o `VISA`).    | No       |

## Consulta de ejemplo

```graphql theme={null}
query GetVirtualCardOffers {
    getVirtualCardOffers {
        offerId
        bin
        bankName
        rewardValue
        programLimits {
            dailyLimit
            weeklyLimit
            monthlyLimit
        }
        programName
    }
}
```

## Ejemplo con cURL

```curl theme={null}
curl -X POST \
  https://transactional-graph.staging.fluzapp.com/api/v1/graphql \
  -H 'Content-Type: application/json' \
  -H 'Authorization: Bearer YOUR_USER_ACCESS_TOKEN' \
  -d '{
    "query": "query { getVirtualCardOffers(input: { cardType: DEBIT, cardNetwork: MASTERCARD }) { offerId programName bin bankName programLimits { dailyLimit weeklyLimit monthlyLimit } rewardValue } }"
  }'
```

## Respuesta de ejemplo

Las ofertas están ordenadas por rewardValue.

```json theme={null}
{
  "data": {
    "getVirtualCardOffers": [
      {
        "offerId": "offer-id-1",
        "programName": "Example Card Program A",
        "bin": "543210",
        "bankName": "Bank of Examples",
        "programLimits": {
          "dailyLimit": "500.00",
          "weeklyLimit": "2000.00",
          "monthlyLimit": "5000.00"
        },
        "rewardValue": "1.5%"
      },
      {
        "offerId": "offer-id-2",
        "programName": "Example Card Program B",
        "bin": "456789",
        "bankName": "Another Bank",
        "programLimits": {
          "dailyLimit": "1000.00",
          "weeklyLimit": "4000.00",
          "monthlyLimit": "10000.00"
        },
        "rewardValue": "1%"
      }
    ]
  }
}
```

## Campos de la respuesta

| Field                        | Type            | Description                                                                                       |
| ---------------------------- | --------------- | ------------------------------------------------------------------------------------------------- |
| `offerId`                    | `String`        | El identificador único de la oferta de tarjeta virtual.                                           |
| `programName`                | `String`        | El nombre del programa de tarjeta virtual o del comercio.                                         |
| `bin`                        | `String`        | El Número de Identificación Bancaria (BIN) asociado con la oferta de tarjeta virtual.             |
| `bankName`                   | `String`        | El nombre del banco emisor de esta oferta de tarjeta virtual.                                     |
| `programLimits`              | `ProgramLimits` | Un objeto que detalla los límites de gasto para este programa.                                    |
| `programLimits.dailyLimit`   | `String`        | El monto máximo que se puede gastar diariamente en tarjetas de este programa.                     |
| `programLimits.weeklyLimit`  | `String`        | El monto máximo que se puede gastar semanalmente en tarjetas de este programa.                    |
| `programLimits.monthlyLimit` | `String`        | El monto máximo que se puede gastar mensualmente en tarjetas de este programa.                    |
| `rewardValue`                | `String`        | La tasa de obtención o el porcentaje de recompensa ofrecido por este programa de tarjeta virtual. |

## Próximos pasos

<CardGroup cols={2}>
  <Card title="Crear una tarjeta virtual" icon="credit-card" href="/features/create-card">
    Pasa el `offerId` que elegiste a `createVirtualCard`.
  </Card>

  <Card title="Ofertas vinculadas a la tarjeta" icon="badge-percent" href="/features/card-linked-offers">
    Ofertas específicas de comercios que agregan recompensas adicionales sobre el programa base.
  </Card>
</CardGroup>
