# Crear Transacción Compra con 3DS

{% hint style="info" %}
POST [/TransaccionCompra/3DS](https://api.wompi.sv)
{% endhint %}

## Crear una transacción de compra con 3DS

### Descripción del Proceso

En síntesis el API funciona de la siguiente manera:

1. Desde el Back End del sistema se invoca el API y del objeto de retorno se toma la url del parámetro "urlCompletarPago3Ds"
2. Se redirecciona el explorador del usuario que desea pagar a esa URL
3. Luego se valida si el  pago fue exitoso o fallido ya se por la [URL de Redirect](/redirect-url/parametros-de-url-de-redirect.md) o el [Webhook](/webhook/definicion-webhook.md)

### Ejemplo de petición básica

En este ejemplo se incluyen solamente los parámetros obligatorios

```
{
  "tarjetaCreditoDebido": {
    "numeroTarjeta": "string",
    "cvv": "string",
    "mesVencimiento": 0,
    "anioVencimiento": 0
  },
  "monto": 0,
  "urlRedirect": "string",
  "nombre": "string",
  "apellido": "string",
  "email": "user@example.com",
  "ciudad": "string",
  "direccion": "string",
  "idPais": "string",
  "idRegion": "string",
  "codigoPostal": "string",
  "telefono": "string",
}
```

### Ejemplo de Respuesta

```
{
  "idTransaccion": "string",
  "esReal": true,
  "urlCompletarPago3Ds": "string",
  "monto": 0
}
```

## Objeto Completo de Petición

En la sección anterior se definió una petición básica para crear una transacción de compra con 3DS. En esta sección se detallan todas las propiedades opcionales que se pueden incluir.

### JSON Completo

```
{
  "tarjetaCreditoDebido": {
    "numeroTarjeta": "string",
    "cvv": "string",
    "mesVencimiento": 0,
    "anioVencimiento": 0
  },
  "monto": 0,
  "configuracion": {
    "emailsNotificacion": "string",
    "urlWebhook": "string",
    "telefonosNotificacion": "string",
    "notificarTransaccionCliente": true
  },
  "urlRedirect": "string",
  "nombre": "string",
  "apellido": "string",
  "email": "user@example.com",
  "ciudad": "string",
  "direccion": "string",
  "idPais": "string",
  "idRegion": "string",
  "codigoPostal": "string",
  "telefono": "string",
  "datosAdicionales": {
    "additionalProp1": "string",
    "additionalProp2": "string",
    "additionalProp3": "string"
  }
}
```

#### Definición Campos Objeto Root

| Campo                | Es Requerido | Tipo Dato   | Descripción                                                                                                                                                                                                             |
| -------------------- | ------------ | ----------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| monto                | si           | double      | El monto que se desea cargar a la tarjeta de crédito en la transacción                                                                                                                                                  |
| email                | si           | string      | El e-mail del cliente que realiza la compra. Es de utilidad ya que allí es donde Wompi enviará una notificación de su compra al cliente su se activa dicha opción.                                                      |
| nombre               | si           | string      | Los nombres del cliente que realiza la compra.                                                                                                                                                                          |
| apellido             | si           | string      | Los apellidos del cliente que realiza la compra                                                                                                                                                                         |
| ciudad               | si           | string      | La ciudad indicada por el cliente                                                                                                                                                                                       |
| direccion            | si           | string      | Dirección del cliente                                                                                                                                                                                                   |
| idPais               | si           | string      | Código ISO 3166-1 alpha2 para el país del cliente. Ver [/api/Regiones](https://api.wompi.sv)                                                                                                                            |
| idRegion             | si           | string      | Código ISO 3166-2 para el territorio del cliente. Ver [/api/Regiones](https://api.wompi.sv)                                                                                                                             |
| codigoPostal         | si           | string      | Código postal del cliente.                                                                                                                                                                                              |
| telefono             | si           | string      | Teléfono del cliente                                                                                                                                                                                                    |
| tarjetaCreditoDebito | si           | Objeto      | Ver definición de objeto abajo.                                                                                                                                                                                         |
| configuracion        | no           | Objeto      | Ver definición de objeto abajo. Solo se necesita si se desea utilizar una configuración diferente a la que esta definida a nivel de negocio.                                                                            |
| datosAdicionales     | no           | Diccionario | Permiten al cliente enviar una lista de Llave/Valor para identificar características adicionales de la transacción. Esta lista de Llave/Valor se entregan al comercio vía el [webhook](/webhook/definicion-webhook.md). |

#### Definición de Objeto tarjetaCreditoDebido

| Campo           | Es Requerido | Tipo Dato | Descripción                                                                                            |
| --------------- | ------------ | --------- | ------------------------------------------------------------------------------------------------------ |
| numeroTarjeta   | si           | string    | El numero de tarjeta sin espacios.                                                                     |
| cvv             | si           | string    | Una cadena de caracteres solo con números con el CVV de la tarjeta a la que se le desea hacer el cobro |
| mesVencimiento  | si           | entero    | El mes en que se vence la tarjeta                                                                      |
| anioVencimiento | si           | entero    | El año en que se vence la tarjeta                                                                      |

#### Objeto Configuración

| Campo                       | Es Requerido | Tipo Dato | Descripción                                                                                                                                                                                                                                                                                        |
| --------------------------- | ------------ | --------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| emailsNotificacion          | no           | string    | Lista de correos electrónicos divididos por coma a los que se enviará una notificación si la transacción es exitosa.                                                                                                                                                                               |
| urlWebhook                  | no           | string    | Url proporcionada por el comercio que se invocará con los datos de la transacción cuando esta sea exitosa. Los webhook son la manera principal que los sistemas del comercio se enteren de una transacción exitosa. Para más información ver la sección[ Webhook](/webhook/definicion-webhook.md). |
| telefonosNotificacion       | No           | string    | Lista de telefonos dividida por comas a los que se enviará una notificación de esta transacción                                                                                                                                                                                                    |
| notificarTransaccionCliente | No           | bool      | Indica si Wompi debe enviar una notificación por correo electrónico al cliente después de efectuar una transacción exitosa. El correo del cliente ex capturado en la interfaz de pago.                                                                                                             |

#### Datos Adicionales

Permiten al cliente enviar una lista de Llave/Valor para identificar características adicionales de la transacción. Esta lista de Llave/Valor se entregan al comercio vía el [webhook](/webhook/definicion-webhook.md).

## Objeto de Respuesta

| Campo               | Tipo Dato | Descripción                                                                                                                                                                      |
| ------------------- | --------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| idTransaccion       | string    | Identificador único de la transacción                                                                                                                                            |
| esReal              | bool      | Verdadero si es un transacción ejecutada en producción, falso si es una transacción en desarrollo. La transacción en desarrollo no se cobra al cliente.                          |
| urlCompletarPago3Ds | string    | <p>URL para que el usuario pagador pueda completar el pago con 3DS. <br><br>El usuario que desea pagar debe redireccionarse a esta URL para que finalice el proceso de pago.</p> |
| monto               | decimal   | El monto cobrado en la transacción                                                                                                                                               |


---

# Agent Instructions: Querying This Documentation

If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter:

```
GET https://docs.wompi.sv/metodos-api/crear-transaccion-compra-3ds.md?ask=<question>
```

The question should be specific, self-contained, and written in natural language.
The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
