> ## 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 estado de orden masiva

Usa la query `getVirtualCardBulkOrderStatus` para comprobar el estado de una orden masiva de creación de tarjetas virtuales y recuperar los detalles de las tarjetas creadas a medida que se procesa la orden.

<Info>
  **Requisitos previos:** un token de acceso de usuario con el alcance `CREATE_VIRTUALCARD`, y el `orderId` devuelto por [Crear orden masiva](/features/create-bulk-order).
</Info>

<Warning>
  La respuesta incluye números de tarjeta completos, CVVs y fechas de vencimiento en texto plano. Trátala como datos sensibles del titular de la tarjeta: transmítela sobre TLS, nunca la registres en logs y muéstrala solo a usuarios autorizados.
</Warning>

## Argumentos

* `input` (`GetVirtualCardBulkOrderStatusInput!`): El objeto de entrada que contiene el identificador de la orden masiva.

## Campos de GetVirtualCardBulkOrderStatusInput

| Campo     | Tipo      | Descripción                                                                                         | Requerido |
| :-------- | :-------- | :-------------------------------------------------------------------------------------------------- | :-------- |
| `orderId` | `String!` | El identificador único de la orden masiva, que recibes de la mutación `createVirtualCardBulkOrder`. | Sí        |

## Ejemplo cURL

```bash 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 GetVirtualCardBulkOrderStatus { getVirtualCardBulkOrderStatus( input: { orderId: \"ZTBhYTg2YmQtZWQwYS00OWQxLTk5ZmUtZDBhZGY3ZjYxZGUyfDI0NjMyM2NmLTBkMzEtNGI2YS04NGQ2LTRmNGI2NzMzNmU5Yw==\" } ) { orderStatus orderId virtualCards { cardNumber expiryMMYY cvv cardHolderName virtualCardId billingAddress { city } } successfulCardCreations failedCardCreations totalCards } }"
  }'
```

## Query de ejemplo

```graphql theme={null}
query GetVirtualCardBulkOrderStatus {
    getVirtualCardBulkOrderStatus(
        input: {
            orderId: "<<ORDER_ID>>"
        }
    ) {
        orderStatus
        orderId
        virtualCards {
            cardNumber
            expiryMMYY
            cvv
            cardHolderName
            virtualCardId
            billingAddress {
                city
            }
        }
        successfulCardCreations
        failedCardCreations
        totalCards
    }
}
```

## Respuesta de ejemplo

```json theme={null}
{
    "data": {
        "getVirtualCardBulkOrderStatus": {
            "orderStatus": "COMPLETED",
            "orderId": "<<ORDER_ID>>",
            "virtualCards": [
                {
                    "cardNumber": "5111147189413564",
                    "expiryMMYY": "08/29",
                    "cvv": "143",
                    "cardHolderName": "Test",
                    "virtualCardId": "104b50d2-97e5-49ee-b9fd-b42120d68212",
                    "billingAddress": {
                        "city": "San Jose"
                    }
                },
                {
                    "cardNumber": "5111143166431356",
                    "expiryMMYY": "08/29",
                    "cvv": "135",
                    "cardHolderName": "Test",
                    "virtualCardId": "03291f04-8358-44f7-ac58-73a6643ac07f",
                    "billingAddress": {
                        "city": "San Jose"
                    }
                }
            ],
            "successfulCardCreations": 4,
            "failedCardCreations": 0,
            "totalCards": 4
        }
    }
}
```

## Campos de la respuesta

| Campo                           | Tipo                          | Descripción                                                                                             |
| ------------------------------- | ----------------------------- | ------------------------------------------------------------------------------------------------------- |
| `orderId`                       | `String`                      | El identificador único de la orden de creación masiva.                                                  |
| `orderStatus`                   | `VirtualCardBulkOrderStatus!` | El estado de la orden masiva (por ejemplo, `COMPLETED`, `PENDING`, `FAILED`).                           |
| `virtualCards`                  | `[VirtualCardDetails]`        | Detalles completos de cada tarjeta creada exitosamente. Se completa a medida que se crean las tarjetas. |
| `virtualCards[].cardNumber`     | `String`                      | El número completo de 16 dígitos de la tarjeta virtual.                                                 |
| `virtualCards[].expiryMMYY`     | `String`                      | La fecha de vencimiento de la tarjeta en formato MM/YY.                                                 |
| `virtualCards[].cvv`            | `String`                      | El código de seguridad de 3 dígitos de la tarjeta.                                                      |
| `virtualCards[].cardHolderName` | `String`                      | El nombre asignado al titular de la tarjeta.                                                            |
| `virtualCards[].virtualCardId`  | `UUID`                        | El identificador único de la tarjeta virtual.                                                           |
| `virtualCards[].billingAddress` | `Object`                      | La dirección de facturación asociada con la tarjeta virtual.                                            |
| `successfulCardCreations`       | `Int`                         | La cantidad de tarjetas creadas exitosamente hasta el momento.                                          |
| `failedCardCreations`           | `Int`                         | La cantidad de tarjetas que no se pudieron crear.                                                       |
| `totalCards`                    | `Int`                         | El número total de tarjetas solicitadas en la orden.                                                    |

<Tip>
  Consulta esta query repetidamente hasta que `orderStatus` sea `COMPLETED` (o `FAILED`). Mientras esté en `PENDING`, `virtualCards` se completa de forma incremental y `successfulCardCreations` aumenta hasta alcanzar `totalCards`.
</Tip>

## Próximos pasos

<CardGroup cols={2}>
  <Card title="Revelar una tarjeta virtual" icon="eye" href="/recipes/reveal-virtual-card">
    Recupera de forma segura los datos sensibles de una sola tarjeta.
  </Card>

  <Card title="Códigos de error de tarjeta virtual" icon="triangle-alert" href="/features/virtual-card-error-codes">
    Interpreta `failedCardCreations` y maneja casos de fallas parciales.
  </Card>
</CardGroup>
