---
title: "Pago en un sólo paso"
method: POST
path: "/charge"
tags: ["Pagos", "Payments"]
---

# Pago en un sólo paso

`POST /charge`

Permite generar una orden de cobro, almacenar la tarjeta y realizar el pago en una sola petición. Sólo usable por clientes PCI.

Si el pago es no seguro y se proporciona el `TraceID` en el campo `extra_data.cof.txnid`, se realizará un pago directo (MIT).

Si el pago es seguro se devolverá el enlace al pago tokenizado por 3DS para que el usuario finalice el pago de forma segura. En caso de que el antifraude detecte riesgo, se devolverá un enlace para que el usuario finalice el pago tokenizado por 3DS.

Si se envían datos de tarjetas dinámicas (DPAN) como aquellas obtenidas a través de Google Pay, Apple Pay o VTS/MDES, es obligatorio enviar los campos `cryptogram` y `eci` en el objeto `dpan_data` si se trata de una CIT. En pagos MIT, basta con indicar los datos de la tarjeta y el `TraceID`.

## Parameters

- `#/paths/~1/get/parameters/0` — unresolved $ref

## Request body

- object
  - `signature` Signature, required — unresolved $ref
  - `amount` Amount, required — unresolved $ref
  - `operative` Operative, required — unresolved $ref
  - `secure` Safe, required — unresolved $ref
  - `customer_ext_id` ExternalId, required — unresolved $ref
  - `service` ServiceUuid, required — unresolved $ref
  - `description` string, required — Descripción del pago. Para los pagos mediante transferencia bancaria, el concepto que verá el usuario será el indicado en este campo.
  - `additional` Additional — unresolved $ref
  - `url_post` UrlPost — unresolved $ref
  - `url_ok` UrlOk — unresolved $ref
  - `url_ko` UrlKo — unresolved $ref
  - `template_uuid` DccTemplate — unresolved $ref
  - `dcc_template_uuid` DccTemplate — unresolved $ref
  - `card_holder` Holder, required — unresolved $ref
  - `card_pan` string, required — Número de la tarjeta.
  - `card_expiry_month` ExpireMonth, required — unresolved $ref
  - `card_expiry_year` ExpireYear, required — unresolved $ref
  - `card_additional` Additional — unresolved $ref
  - `card_cvv` CardCvv — unresolved $ref
  - `customer_ip` CustomerIp — unresolved $ref
  - `reference` Reference — unresolved $ref
  - `dynamic_descriptor` DynamicDescriptor — unresolved $ref
  - `expires_in` number, nullable — Tiempo en segundos desde que se crea la orden hasta que expira.
  - `threeds_data` object, nullable — Campo que contiene la información procedente del comercio si ha indicado una autenticación mediante MPI/3DS externo.
    - `version` Version — unresolved $ref
    - `trans_status` 'Y' | 'A' | 'C' | 'D' | 'R' | 'N' | 'U'
    - `eci` '00' | '01' | '02' | '05' | '06' | '07'
    - `ds_trans_id` string, nullable — identificador de la transacción 3DS cuando se utiliza una versión V2.
  - `dpan_data` object, nullable — Campo que contiene la información procedente del comercio si ha indicado una autenticación mediante MPI/3DS externo.
    - `cryptogram` string, nullable — Criptograma que autentica los datos de tarjeta.
    - `eci` '00' | '01' | '02' | '05' | '06' | '07', nullable — El valor del ECI del criptograma asociado a la tarjeta.
    - `origin` 'GOOGLE_PAY' | 'APPLE_PAY', nullable — Identifica cómo se obtuvo la tarjeta.
    - `last4` Last4 — unresolved $ref
    - `flow` 'APP' | 'WEB', nullable — Indica si la obtención de la tarjeta se realizó a través del navegador o una app móvil.
  - `extra_data` ExtraData
    - `profile` Profile — Configuración del perfil del cliente.
      - `first_name` FirstName, required — unresolved $ref
      - `last_name` LastName, required — unresolved $ref
      - `cardholder_name` Holder — unresolved $ref
      - `document_identification_issuer_type` 'STATE_GOVERNMENT' | 'FEDERAL_GOVERNMENT' | 'MONEY_TRANSMITTER' | 'PROFESSIONAL_ASSOCIATION' — Proveedor del documento de identificación.
      - `document_identification_type` 'ALIEN_REGISTRATION_CARD' | 'ELECTOR_CREDENTIAL' | 'FISCAL_IDENTIFICATION_CODE' | 'ORIGIN_COUNTRY_IDENTIFICATION_CODE' | 'FOREIGN_IDENTIFICATION_DOCUMENT' | 'NATIONAL_IDENTITY_DOCUMENT' | 'OTHER_PHYSICAL_PERSON_DOCUMENTS' | 'DRIVER_LICENSE' | 'CONSULAR_REGISTRATION' | 'UNDER_AGE' | 'RESIDENCE_CARD' | 'TAX_IDENTIFICATION_NUMBER' | 'NON_DRIVER_LICENSE_PHOTO_ID' | 'VALID_PASSPORT' | 'DIPLOMAT_IDENTITY_CARD' | 'US_GOVERNMENT_ISSUER_ID' | 'UNIQUE_ID_ISSUED_BY_MT' — Tipo de documento de identificación del usuario.
      - `document_identification_number` string, nullable — Número de identificación.
      - `email` Email — unresolved $ref
      - `phone` Phone — Número de teléfono del usuario.
        - `number` string, required — Número de teléfono sin el prefijo.
        - `prefix` string — Prefijo de teléfono.
      - `work_phone` Phone — Número de teléfono del usuario.
        - `number` string, required — Número de teléfono sin el prefijo.
        - `prefix` string — Prefijo de teléfono.
      - `home_phone` Phone — Número de teléfono del usuario.
        - `number` string, required — Número de teléfono sin el prefijo.
        - `prefix` string — Prefijo de teléfono.
      - `mobile_phone` Phone — Número de teléfono del usuario.
        - `number` string, required — Número de teléfono sin el prefijo.
        - `prefix` string — Prefijo de teléfono.
      - `birthdate` string, nullable — Fecha de nacimiento del usuario en formato YYYY-MM-DD.
      - `source_of_funds` string, nullable — Origen de los ingresos del usuario.
      - `occupation` string, nullable — Puesto de trabajo del usuario.
      - `social_security_number` string, nullable — Número de seguridad social del usuario.
    - `address` Address — Dirección de cliente
      - `address1` string, required — Línea 1 de Dirección (max. 50 carácteres).
      - `address2` string, nullable — Línea 2 de Dirección (max. 50 carácteres).
      - `address3` string, nullable — Línea 3 de Dirección (max. 50 carácteres).
      - `city` string, required — Ciudad.
      - `country` string, required — Código alfanumérico de tres letras ISO 3166 del país.
      - `default` boolean, required — Configurar como dirección por defecto. Si el usuario tiene una dirección por defecto, se utilizará ésta siempre que no se indique una diferente.
      - `state_code` string, required — Estado o provincia.
      - `type` 'OTHER' | 'BILLING' | 'SHIPPING', required — Tipo de dirección.
      - `zip_code` string, required — Código postal.
    - `billing_address` Address — Dirección de cliente
      - `address1` string, required — Línea 1 de Dirección (max. 50 carácteres).
      - `address2` string, nullable — Línea 2 de Dirección (max. 50 carácteres).
      - `address3` string, nullable — Línea 3 de Dirección (max. 50 carácteres).
      - `city` string, required — Ciudad.
      - `country` string, required — Código alfanumérico de tres letras ISO 3166 del país.
      - `default` boolean, required — Configurar como dirección por defecto. Si el usuario tiene una dirección por defecto, se utilizará ésta siempre que no se indique una diferente.
      - `state_code` string, required — Estado o provincia.
      - `type` 'OTHER' | 'BILLING' | 'SHIPPING', required — Tipo de dirección.
      - `zip_code` string, required — Código postal.
    - `shipping_address` Address — Dirección de cliente
      - `address1` string, required — Línea 1 de Dirección (max. 50 carácteres).
      - `address2` string, nullable — Línea 2 de Dirección (max. 50 carácteres).
      - `address3` string, nullable — Línea 3 de Dirección (max. 50 carácteres).
      - `city` string, required — Ciudad.
      - `country` string, required — Código alfanumérico de tres letras ISO 3166 del país.
      - `default` boolean, required — Configurar como dirección por defecto. Si el usuario tiene una dirección por defecto, se utilizará ésta siempre que no se indique una diferente.
      - `state_code` string, required — Estado o provincia.
      - `type` 'OTHER' | 'BILLING' | 'SHIPPING', required — Tipo de dirección.
      - `zip_code` string, required — Código postal.
    - `cof` CredentialOnFile — Configuración del Credential On File
      - `reason` 'INSTALLMENTS' | 'RECURRING' | 'NO_SHOW' | 'DELAYED' | 'OTHER', required — Motivo para el cual se utilizará el Credential On File más adelante.
      - `txnid` string — Identificador del COF obtenido tras una CIT. Si no se proporciona, se enviará un txnid existente de la tarjeta (si hay).
    - `payment` PaymentObject — Configuración avanzada del pago
      - `installments` number, required — Número de cuotas
    - `halcash` HalCashExtraDataObject — Información adicional sobre HalCash
      - `expiry_date` string, required — Fecha de caducidad
      - `secret_key` string, required — Clave secreta
      - `sender_name` string, required — Nombre de quien envía el dinero
    - `marketplace` MarketplaceObject — Datos de liquidación de los distintos comercios asociados al marketplace. La suma del campo net_amount para todos ellos deberá coindicir con el campo `amount`.
      - `merchant_location_id` number, required — ID del merchant.
      - `amount` number, required — Importe bruto que va destinado a ese merchant.
      - `net_amount` number, required — Cantidad sin la comisión que va destinada a ese merchant.
      - `description` string — Descripción opcional.
    - `checkout` object, nullable — Metódo de pago.
      - `uuid` string, required — UUID del checkout.
      - `payment_methods` PAYMENT_CARD,BIZUM,SOFORT,IDEAL,CRYPTO,PIX,VIACASH,KLARNA,GIROPAY,GOOGLE_PAY,APPLE_PAY,CLICKTOPAY, nullable — Aunque en la configuración del checkout se indican los servicios de pago que se mostrarán, si se envía este campo se mostrarán los que se especifiquen aquí, por lo que este campo tiene preferencia frente a la configuración que se haya establecido en el panel.
        - unknown
      - `customization` object — Customización del checkout.
        - `title` string, nullable — Titulo del checkout.
        - `logo` string, nullable — Logo del checkout, tiene que ser una URL.
        - `theme_type` string, nullable — Tema del checkout.
        - `accent_color` string, nullable — Color complementario del checkout, en formato hexadecimal.
        - `background_color` string, nullable — Color de fondo del checkout, en formato hexadecimal.
        - `text_color` string, nullable — Color del texto del checkout, en formato hexadecimal.
        - `font` string, nullable — Fuente de texto del checkout.
        - `description` string, nullable — Resumen del checkout.
        - `payment_details` object, nullable — Objeto que contiene varias entradas llave - valor.
        - `is_enabled_cancel_button` boolean — Indica si se quiere mostrar el botón para cancelar el pago.
      - `default_payment_method` string — Método de pago por defecto.
    - `aft` AFT — Configuración del envío de fondos (AFT)
      - `type` 'NONE' | 'ACCOUNT_TO_ACCOUNT' | 'PERSON_TO_PERSON', required — Tipo de AFT
      - `receiver` object — Datos del receptor (solo en AFT tipo PERSON_TO_PERSON)
        - `first_name` FirstName, required — unresolved $ref
        - `last_name` LastName, required — unresolved $ref
        - `country` Country, required — unresolved $ref
        - `account_number` string, required — Número de cuenta, tarjeta o teléfono del receptor
        - `account_type` 'CARD_NUMBER' | 'ACCOUNT_NUMBER' | 'MOBILE_PHONE_NUMBER' — Tipo de cuenta del receptor. (CARD_NUMBER, por defecto)
    - `source_holder_verification` SourceHolderVerification — Configuración de verificación del titular del medio de pago (Source Holder Verification - SHV) aplicada durante flujos de almacenamiento o pago.
      - `enabled` boolean, required — Activa la verificación del titular del medio de pago. Cuando se establece en `true`, la plataforma intenta realizar la comprobación SHV antes de continuar con el flujo.
      - `verification_method` 'NAME' | 'IDENTIFICATION_NUMBER' — Método utilizado para verificar la titularidad del medio de pago. Si no se especifica, se utiliza NAME.
      - `accepted_verification_results` string[] — Lista de resultados de verificación considerados aceptables para continuar con la operación. Si se omite o está vacía, el flujo continúa independientemente del resultado SHV.
      - `allow_unavailable` boolean — Permite continuar con el flujo si la verificación no ha sido realizada porque no está soportada por el banco o tipo/marca de tarjeta, o porque el banco no la ha ejecutado.
      - `allow_error` boolean — Determina el comportamiento cuando la verificación no puede completarse debido a errores o fallos transitorios (por ejemplo, timeout o indisponibilidad temporal). Si es `true`, estos errores no bloquean el flujo; si es `false`, la operación se bloquea.
      - `first_name` string — Nombre del titular utilizado para la comparación. Si no se envía, en flujos de pago se obtiene de `extra_data.profile` y, durante la creación de la tarjeta/cuenta bancaria, de `card_holder` o `account_holder`.
      - `last_name` string — Apellidos del titular utilizados para la comparación.
      - `identification_number` string — Identificador legal del titular del medio de pago (por ejemplo, NIF, DNI, pasaporte o número de registro de empresa).

## Response `200`

OK

- object
  - `message` string, required — Nombre del código HTTP de respuesta.
  - `code` number, required — Código de respuesta.
  - `current_time` string, required — Fecha y hora de la petición.
  - `order` Order, required
    - `uuid` string, required — Identificador único de la orden.
    - `created` string, required — Fecha de creación de la entidad.
    - `created_from_client_timezone` string, required — Fecha de creación de la entidad, usando la zona horaria del comercio.
    - `amount` Amount, required — unresolved $ref
    - `currency` string, required — Código numérico ISO 4217 de la moneda.
    - `paid` boolean, required — Identifica si el importe de la operación ya se ha liquidado (`true`) o está pendiente de liquidar (`false`).
    - `status` 'CREATED' | 'EXPIRED' | 'BLACKLISTED' | 'FRAUD' | 'PENDING_CARD' | 'PENDING_PROCESSOR_RESPONSE' | 'PENDING_3DS_RESPONSE' | 'REFUSED' | 'SUCCESS' | 'PENDING_CONFIRMATION' | 'CANCELLED' | 'REFUNDED' | 'PARTIALLY_REFUNDED' | 'PARTIALLY_CONFIRMED' | 'USER_CANCELLED' | 'REDIRECTED_TO_3DS' | 'AUTHENTICATION_REQUIRED' | 'PENDING_PAYMENT' | 'THREEDS_EXPIRED', required — Estado actual de la orden.
    - `safe` boolean, required — `true` si el pago requerirá 3D Secure. `false` en caso contrario.
    - `refunded` number, required — Importe ya devuelto, en la moneda fraccionaria elegida. Una cantidad de 100 utilizando la moneda Euro es igual a 1€.
    - `additional` Additional — unresolved $ref
    - `service` string, required — Nombre del servicio de pago asignado a la orden (REDSYSPSD2, CREDORAX...)
    - `service_uuid` string, required — El UUID del servicio de pago empleado para llevar a cabo la operación.
    - `customer` ExternalId — unresolved $ref
    - `cof_txnid` string, nullable — Identificador obtenido tras realizar un pago 3D Secure.
    - `transactions` Transaction[], required
      - `uuid` string, required — El identificador único de la transacción.
      - `created` Created, required — unresolved $ref
      - `created_from_client_timezone` CreatedFromClientTimezone, required — unresolved $ref
      - `operative` 'AUTHORIZATION' | 'DEFERRED' | 'REFUND' | 'CONFIRMATION' | 'CANCELLATION' | 'PAYOUT' | 'TRANSFER', required — Operativa de la transacción.
      - `amount` Amount, required — unresolved $ref
      - `authorization` Authorization — unresolved $ref
      - `processor_id` ProcessorId — unresolved $ref
      - `status` 'CREATED' | 'SUCCESS' | 'REFUSED' | 'ERROR' | 'PENDING' | 'CANCELLED', required — Estado de la transacción.
      - `error` string, required — Error de la transacción. Si no hay error, su valor es `"NONE"`.
      - `source` union
        - object
          - `object` Object, required — unresolved $ref
          - `uuid` string, required — Identificador de la tarjeta.
          - `type` 'CREDIT' | 'DEBIT' | '', required — Tipo de tarjeta (Crédito/Débito o desconocido).
          - `token` string, required — Token que identifica de forma única el PAN de una tarjeta. Dos tarjetas con el mismo PAN tienen el mismo token.
          - `brand` 'VISA' | 'DISCOVER' | 'AMERICAN_EXPRESS' | 'MASTERCARD' | 'DINERS_CLUB_INTERNATIONAL' | 'JCB' | 'UNIONPAY' | 'INTERPAY' | 'MAESTRO' | 'OTHER', required
          - `additional` Additional — unresolved $ref
          - `bank` string, required — Banco emisor de la tarjeta. Vacío si es desconocido.
          - `bin` number, required — Los 6 primeros dígitos del número de la tarjeta que componen el BIN.
          - `country` string, required — Código alfanumérico de dos letras ISO 3166 del país.
          - `expire_month` string, required — Mes de expiración de la tarjeta.
          - `expire_year` string, required — Año de expiración de la tarjeta.
          - `holder` string, required — Titular de la tarjeta.
          - `is_saved` boolean, required — Indica si el usuario ha dado consentimiento para que su tarjeta sea usada en pagos futuros. La tarjeta puede usarse para procesar pagos con independencia de este valor, es el comercio quien debe tener en cuenta este campo.
          - `last4` string, required — Últimos 4 dígitos de la tarjeta.
          - `prepaid` string — Indica si la tarjeta es prepago. Vacío si se desconoce esta información.
          - `validation_date` ValidationDate — unresolved $ref
          - `creation_date` Created, required — unresolved $ref
          - `brand_description` BrandDescription — unresolved $ref
          - `origin` 'UNKNOWN' | 'PAYMENT_CARD' | 'API' | 'SDK' | 'ONE_STEP' | 'MOTO' | 'KEYENTRY' | 'MIGRATION' | 'PROXY_PCI' | 'GOOGLE_PAY' | 'MC_C2P' | 'VISA_C2P' | 'APPLE_PAY', required — Identifica cómo se obtuvo la tarjeta.
        - object
          - `object` Object, required — unresolved $ref
          - `uuid` Uuid, required — unresolved $ref
          - `created_at` Created, required — unresolved $ref
          - `holder` Holder, required — unresolved $ref
          - `dpan` string, required — El DPAN de una tarjeta reemplaza el PAN. Los seis primeros dígitos y los cuatro últimos no se corresponden con los del PAN.
          - `last4` string, required — Últimos 4 dígitos del PAN. Estos sí se corresponden con los 4 últimos dígitos del PAN.
          - `brand` Brand, required — unresolved $ref
          - `bank` Bank, required — unresolved $ref
          - `country` Country, required — unresolved $ref
          - `type` 'CREDIT' | 'DEBIT' | '', required — Tipo de tarjeta (Crédito/Débito o desconocido).
          - `brand_description` BrandDescription — unresolved $ref
          - `prepaid` Prepaid — unresolved $ref
          - `origin` Origin — unresolved $ref
          - `additional` Additional — unresolved $ref
        - object
          - `object` Object, required — unresolved $ref
          - `uuid` Uuid, required — unresolved $ref
          - `account_holder` string, required — Titular de la cuenta bancaria.
          - `iban` string, required — IBAN de la cuenta bancaria.
          - `created_at` Created, required — unresolved $ref
          - `additional` Additional — unresolved $ref
        - object
          - `object` 'CARD' | 'TRANSFER' | 'HALCASH' | 'BIZUM' | 'BANK' | 'DYNAMIC_CARD' | 'CRYPTO' | 'PIX' | 'VIACASH' | 'COFIDIS' | 'IDEAL' | 'SOFORT' | 'KLARNA' | 'GIROPAY' | 'INESPAY' | 'PAYPAL' | 'FLOA' | 'PSE' | 'PAYLATER' | 'SPEI' | 'TRUELAYER' | 'MULTIBANCO' | 'MBWAY' | 'PAYSAFECARD' | 'PAYRETAILERS' | 'PAGO_FACIL' | 'EFECTY' | 'BOLETO' | 'LOTERICA' | 'PAYSHOP', required — El tipo del medio de pago.
        - object
          - `object` Object, required — unresolved $ref
          - `uuid` Uuid, required — unresolved $ref
          - `payer_id` string, required — Identificador único del pagador (PayerID) proporcionado por el proveedor externo, como PayPal.
          - `first_name` string, required — Nombre del usuario.
          - `last_name` string, required — Apellidos del usuario.
          - `email` string, required — Correo electrónico del usuario.
          - `country_alpha2` Country, required — unresolved $ref
          - `additional` Additional, required — unresolved $ref
          - `creation_date` Created — unresolved $ref
          - `validation_date` string — Fecha de validación de la tarjeta. Si no se validó al guardarla o no ha sido usada en al menos una `AUTHORIZATION`, este valor será `null`.
        - object
          - `object` Object, required — unresolved $ref
          - `uuid` string, required — Identificador único del medio de pago empleado para realizar el pago.
          - `masked_pan` string, required — Número de la tarjeta censurado, mostrando solo el BIN y los 4 últimos dígitos.
          - `additional` Additional — unresolved $ref
          - `validation_date` ValidationDate — unresolved $ref
          - `creation_date` Created, required — unresolved $ref
        - object
          - `object` Object, required — unresolved $ref
          - `uuid` Uuid, required — unresolved $ref
          - `bin` Bin, required — unresolved $ref
          - `last_4` Last4, required — unresolved $ref
          - `additional` Additional — unresolved $ref
          - `validation_date` ValidationDate — unresolved $ref
          - `creation_date` Created, required — unresolved $ref
      - `antifraud` Antifraud — Información antifraude asociada a la transacción. Disponible solo en transacciones de pago.
        - `evaluation` 'TRUSTED' | 'RISKY' | 'FRAUD' | 'WHITELISTED' | 'BLACKLISTED' | 'GREYLISTED', required — Resultado de la evaluación antifraude.
        - `fraud_score` number, required — Umbral de fraude configurado en el antifraude del servicio. Si `score` es igual o lo supera, el pago será marcado como fraudulento y no se intentará cobrar.
        - `risk_score` number, required — Umbral de riesgo configurado en el antifraude del servicio. Si `score` es igual o lo supera, el pago deberá finalizarse mediante 3D Secure obligatoriamente.
        - `score` number, required — Puntuación total de las reglas antifraude evaluadas.
        - `triggered_rules` unknown[], required — Listado de reglas antifraude activadas para esta transacción.
          - unknown
      - `device` object, nullable
        - `fingerprint` string, required — Huella digital del dispositivo empleado para realizar el pago.
        - `user_agent` string, required — La cabecera User-Agent del navegador empleado para realizar el pago.
      - `error_details` object, nullable — Objeto con información sobre el motivo de rechazo de la operación.
        - `error_code` string, nullable — Código de error devuelto por el emisor.
        - `error_description` string, nullable — Texto descriptivo asociado al error_code.
        - `error_code_scheme` string, nullable — Código de error devuelto por las marcas.
        - `error_description_scheme` string, nullable — Texto descriptivo asociado al error_code_scheme.
        - `error_unified` string, nullable — Cadena de texto asociada al campo error_code_scheme. En caso de tener multiadquirencia, este campo contendrá el mismo valor para un mismo motivo de rechazo entre los diferentes adquirentes.
      - `bizum` object, nullable — Objeto con información del pago Bizum.
        - `account` string, nullable — Cuenta bancaria del usuario enmascarada.
        - `phone_number` string, nullable — Número de teléfono enmascarado que el usuario ha utilizado para realizar la transacción.
      - `metadata` object, nullable — Contiene los pares clave-valor de datos asociados por el comercio.
    - `token` string, nullable — Token utilizado para mostrar la carta de pago. Caduca al cabo de 10 minutos por defecto.
    - `ip` CustomerIp — unresolved $ref
    - `reference` string, nullable — Referencia de la orden. Puede ser utilizado como identificador externo o para evitar pagos duplicados.
    - `dynamic_descriptor` string, nullable — Descriptor dinámico del cargo en la cuenta bancaria del cliente. Puede no concordar exactamente con este valor.
    - `threeds_data` object, nullable — Parámetros empleados durante el proceso de autenticación de 3D Secure.
      - `version` '1.0' | '2.1' | '2.2', required
      - `flow` 'FRICTIONLESS' | 'FINGERPRINTING_ONLY' | 'CHALLENGE_ONLY' | 'FULL' | 'V1_FALLBACK' | 'V1' | 'EXTERNAL', required
      - `sca_requested` boolean, required — Indica si la autenticación reforzada (SCA) tuvo lugar durante el proceso de pago.
      - `status` TransStatus — unresolved $ref
      - `eci` Eci — unresolved $ref
      - `exemption` 'LV' | 'TRA' | 'MIT' | 'SCP' | 'TB', nullable
    - `urls` object — La orden generada puede contener las urls de pago para la carta de pago, bizum y pago tokenizado. Este campo solo aparecerá si está habilitado en las preferencias del cliente.
      - `payment_card` string — Url para redirigir a la carta de pago.
      - `bizum` string — Url para redirigir al pago por Bizum, solamente si el servicio de pago soporta este método.
      - `3ds_tokenized` string — Url para redirigir al pago tokenizado, solamente si se indican los parámetros para el pago tokenizado por 3DS.
    - `dcc` object — Objeto que sólo se mostrará en pagos que hayan usado DCC, con información acerca del mismo.
      - `fee` string, required — Comisión aplicada sobre el valor del BCE.
      - `change` number, nullable — Cambio aplicado entre la moneda del comercio y la de la tarjeta.
      - `mode` DccMode, required — unresolved $ref
      - `selection` 'CARD' | 'COMMERCE' | 'NONE', required — tipo de DCC aplicado. Esto dependerá de la configuración que tenga el comercio.
      - `card_currency` string, required — Moneda de la tarjeta en formato ISO 4217.
      - `merchant_currency` string, required — Moneda del comercio en formato ISO 4217.
      - `ecb_change` number, nullable — Tipo de cambio indicado por el BCE.
  - `client` Client, required
    - `uuid` string, required — Identificador del cliente.
  - `extra_data` ExtraData
    - `profile` Profile — Configuración del perfil del cliente.
      - `first_name` FirstName, required — unresolved $ref
      - `last_name` LastName, required — unresolved $ref
      - `cardholder_name` Holder — unresolved $ref
      - `document_identification_issuer_type` 'STATE_GOVERNMENT' | 'FEDERAL_GOVERNMENT' | 'MONEY_TRANSMITTER' | 'PROFESSIONAL_ASSOCIATION' — Proveedor del documento de identificación.
      - `document_identification_type` 'ALIEN_REGISTRATION_CARD' | 'ELECTOR_CREDENTIAL' | 'FISCAL_IDENTIFICATION_CODE' | 'ORIGIN_COUNTRY_IDENTIFICATION_CODE' | 'FOREIGN_IDENTIFICATION_DOCUMENT' | 'NATIONAL_IDENTITY_DOCUMENT' | 'OTHER_PHYSICAL_PERSON_DOCUMENTS' | 'DRIVER_LICENSE' | 'CONSULAR_REGISTRATION' | 'UNDER_AGE' | 'RESIDENCE_CARD' | 'TAX_IDENTIFICATION_NUMBER' | 'NON_DRIVER_LICENSE_PHOTO_ID' | 'VALID_PASSPORT' | 'DIPLOMAT_IDENTITY_CARD' | 'US_GOVERNMENT_ISSUER_ID' | 'UNIQUE_ID_ISSUED_BY_MT' — Tipo de documento de identificación del usuario.
      - `document_identification_number` string, nullable — Número de identificación.
      - `email` Email — unresolved $ref
      - `phone` Phone — Número de teléfono del usuario.
        - `number` string, required — Número de teléfono sin el prefijo.
        - `prefix` string — Prefijo de teléfono.
      - `work_phone` Phone — Número de teléfono del usuario.
        - `number` string, required — Número de teléfono sin el prefijo.
        - `prefix` string — Prefijo de teléfono.
      - `home_phone` Phone — Número de teléfono del usuario.
        - `number` string, required — Número de teléfono sin el prefijo.
        - `prefix` string — Prefijo de teléfono.
      - `mobile_phone` Phone — Número de teléfono del usuario.
        - `number` string, required — Número de teléfono sin el prefijo.
        - `prefix` string — Prefijo de teléfono.
      - `birthdate` string, nullable — Fecha de nacimiento del usuario en formato YYYY-MM-DD.
      - `source_of_funds` string, nullable — Origen de los ingresos del usuario.
      - `occupation` string, nullable — Puesto de trabajo del usuario.
      - `social_security_number` string, nullable — Número de seguridad social del usuario.
    - `address` Address — Dirección de cliente
      - `address1` string, required — Línea 1 de Dirección (max. 50 carácteres).
      - `address2` string, nullable — Línea 2 de Dirección (max. 50 carácteres).
      - `address3` string, nullable — Línea 3 de Dirección (max. 50 carácteres).
      - `city` string, required — Ciudad.
      - `country` string, required — Código alfanumérico de tres letras ISO 3166 del país.
      - `default` boolean, required — Configurar como dirección por defecto. Si el usuario tiene una dirección por defecto, se utilizará ésta siempre que no se indique una diferente.
      - `state_code` string, required — Estado o provincia.
      - `type` 'OTHER' | 'BILLING' | 'SHIPPING', required — Tipo de dirección.
      - `zip_code` string, required — Código postal.
    - `billing_address` Address — Dirección de cliente
      - `address1` string, required — Línea 1 de Dirección (max. 50 carácteres).
      - `address2` string, nullable — Línea 2 de Dirección (max. 50 carácteres).
      - `address3` string, nullable — Línea 3 de Dirección (max. 50 carácteres).
      - `city` string, required — Ciudad.
      - `country` string, required — Código alfanumérico de tres letras ISO 3166 del país.
      - `default` boolean, required — Configurar como dirección por defecto. Si el usuario tiene una dirección por defecto, se utilizará ésta siempre que no se indique una diferente.
      - `state_code` string, required — Estado o provincia.
      - `type` 'OTHER' | 'BILLING' | 'SHIPPING', required — Tipo de dirección.
      - `zip_code` string, required — Código postal.
    - `shipping_address` Address — Dirección de cliente
      - `address1` string, required — Línea 1 de Dirección (max. 50 carácteres).
      - `address2` string, nullable — Línea 2 de Dirección (max. 50 carácteres).
      - `address3` string, nullable — Línea 3 de Dirección (max. 50 carácteres).
      - `city` string, required — Ciudad.
      - `country` string, required — Código alfanumérico de tres letras ISO 3166 del país.
      - `default` boolean, required — Configurar como dirección por defecto. Si el usuario tiene una dirección por defecto, se utilizará ésta siempre que no se indique una diferente.
      - `state_code` string, required — Estado o provincia.
      - `type` 'OTHER' | 'BILLING' | 'SHIPPING', required — Tipo de dirección.
      - `zip_code` string, required — Código postal.
    - `cof` CredentialOnFile — Configuración del Credential On File
      - `reason` 'INSTALLMENTS' | 'RECURRING' | 'NO_SHOW' | 'DELAYED' | 'OTHER', required — Motivo para el cual se utilizará el Credential On File más adelante.
      - `txnid` string — Identificador del COF obtenido tras una CIT. Si no se proporciona, se enviará un txnid existente de la tarjeta (si hay).
    - `payment` PaymentObject — Configuración avanzada del pago
      - `installments` number, required — Número de cuotas
    - `halcash` HalCashExtraDataObject — Información adicional sobre HalCash
      - `expiry_date` string, required — Fecha de caducidad
      - `secret_key` string, required — Clave secreta
      - `sender_name` string, required — Nombre de quien envía el dinero
    - `marketplace` MarketplaceObject — Datos de liquidación de los distintos comercios asociados al marketplace. La suma del campo net_amount para todos ellos deberá coindicir con el campo `amount`.
      - `merchant_location_id` number, required — ID del merchant.
      - `amount` number, required — Importe bruto que va destinado a ese merchant.
      - `net_amount` number, required — Cantidad sin la comisión que va destinada a ese merchant.
      - `description` string — Descripción opcional.
    - `checkout` object, nullable — Metódo de pago.
      - `uuid` string, required — UUID del checkout.
      - `payment_methods` PAYMENT_CARD,BIZUM,SOFORT,IDEAL,CRYPTO,PIX,VIACASH,KLARNA,GIROPAY,GOOGLE_PAY,APPLE_PAY,CLICKTOPAY, nullable — Aunque en la configuración del checkout se indican los servicios de pago que se mostrarán, si se envía este campo se mostrarán los que se especifiquen aquí, por lo que este campo tiene preferencia frente a la configuración que se haya establecido en el panel.
        - unknown
      - `customization` object — Customización del checkout.
        - `title` string, nullable — Titulo del checkout.
        - `logo` string, nullable — Logo del checkout, tiene que ser una URL.
        - `theme_type` string, nullable — Tema del checkout.
        - `accent_color` string, nullable — Color complementario del checkout, en formato hexadecimal.
        - `background_color` string, nullable — Color de fondo del checkout, en formato hexadecimal.
        - `text_color` string, nullable — Color del texto del checkout, en formato hexadecimal.
        - `font` string, nullable — Fuente de texto del checkout.
        - `description` string, nullable — Resumen del checkout.
        - `payment_details` object, nullable — Objeto que contiene varias entradas llave - valor.
        - `is_enabled_cancel_button` boolean — Indica si se quiere mostrar el botón para cancelar el pago.
      - `default_payment_method` string — Método de pago por defecto.
    - `aft` AFT — Configuración del envío de fondos (AFT)
      - `type` 'NONE' | 'ACCOUNT_TO_ACCOUNT' | 'PERSON_TO_PERSON', required — Tipo de AFT
      - `receiver` object — Datos del receptor (solo en AFT tipo PERSON_TO_PERSON)
        - `first_name` FirstName, required — unresolved $ref
        - `last_name` LastName, required — unresolved $ref
        - `country` Country, required — unresolved $ref
        - `account_number` string, required — Número de cuenta, tarjeta o teléfono del receptor
        - `account_type` 'CARD_NUMBER' | 'ACCOUNT_NUMBER' | 'MOBILE_PHONE_NUMBER' — Tipo de cuenta del receptor. (CARD_NUMBER, por defecto)
    - `source_holder_verification` SourceHolderVerification — Configuración de verificación del titular del medio de pago (Source Holder Verification - SHV) aplicada durante flujos de almacenamiento o pago.
      - `enabled` boolean, required — Activa la verificación del titular del medio de pago. Cuando se establece en `true`, la plataforma intenta realizar la comprobación SHV antes de continuar con el flujo.
      - `verification_method` 'NAME' | 'IDENTIFICATION_NUMBER' — Método utilizado para verificar la titularidad del medio de pago. Si no se especifica, se utiliza NAME.
      - `accepted_verification_results` string[] — Lista de resultados de verificación considerados aceptables para continuar con la operación. Si se omite o está vacía, el flujo continúa independientemente del resultado SHV.
      - `allow_unavailable` boolean — Permite continuar con el flujo si la verificación no ha sido realizada porque no está soportada por el banco o tipo/marca de tarjeta, o porque el banco no la ha ejecutado.
      - `allow_error` boolean — Determina el comportamiento cuando la verificación no puede completarse debido a errores o fallos transitorios (por ejemplo, timeout o indisponibilidad temporal). Si es `true`, estos errores no bloquean el flujo; si es `false`, la operación se bloquea.
      - `first_name` string — Nombre del titular utilizado para la comparación. Si no se envía, en flujos de pago se obtiene de `extra_data.profile` y, durante la creación de la tarjeta/cuenta bancaria, de `card_holder` o `account_holder`.
      - `last_name` string — Apellidos del titular utilizados para la comparación.
      - `identification_number` string — Identificador legal del titular del medio de pago (por ejemplo, NIF, DNI, pasaporte o número de registro de empresa).

## Other responses

- `303` — Respuesta cuando el pago debe ser finalizado por el usuario de forma segura.

---

[API](https://skmtc.net/paylands/apis/documentacio-n-de-paylands.md) · [All operations](https://skmtc.net/paylands/apis/documentacio-n-de-paylands/llms.txt) · [OpenAPI document](https://skmtc-service-staging.skmtc.workers.dev/v1/apis/paylands/documentacio-n-de-paylands/revisions/6bf9c0ba354b/schema)
