---
title: "Envío de enlaces de pago (JSON)"
method: POST
path: "/payment/moto/json"
tags: ["Campañas MoTo", "MoTo campaigns"]
---

# Envío de enlaces de pago (JSON)

`POST /payment/moto/json`

Para generar un envío de enlaces de pago mediante JSON será necesario enviar los campos que se detallan a continuación.

## Parameters

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

## Request body

- object
  - `description` string, required — Nombre interno identificativo del envío.
  - `expires_at` ExpiresAt, required — unresolved $ref
  - `service_uuid` ServiceUuid, required — unresolved $ref
  - `signature` Signature, required — unresolved $ref
  - `subject` string, nullable, required — Asunto de la campaña, que será enviado si se indica email como método de envío. En el caso de SMS se indicará el nombre del comercio con un máximo de 11 caracteres.
  - `type` 'PHONE' | 'MAIL' | 'CUSTOM_DELIVERY', required — Método de envío de los pagos MoTo.
  - `payments` object[]
    - `amount` Amount, required — unresolved $ref
    - `operative` Operative, required — unresolved $ref
    - `secure` Safe, required — unresolved $ref
    - `destination` string, required — Teléfono/email de la persona que recibirá el enlace de pago.
    - `source_uuid` Uuid — unresolved $ref
    - `customer_ext_id` ExternalId — unresolved $ref
    - `additional` string — Campo de texto libre enviado por el comercio. Puede utilizarse para almacenar cualquier dato.
    - `url_post` string — URL que recibirá una notificación HTTP indicando el estado final del pago.
    - `url_ok` string — URL a la cual se redirigirá el usuario tras el pago si pudo ser cobrado con éxito.
    - `url_ko` string — URL a la cual se redirigirá el usuario tras el pago si no pudo ser cobrado.
    - `card_template` DccTemplate — unresolved $ref
    - `moto_template` DccTemplate — unresolved $ref
    - `dcc_template` string — Plantilla de la carta de pago que se le mostrará al cliente. Si el valor es "null" se utilizara la plantilla por defecto.
    - `certified` boolean — `true` si el envío será certificado. `false` en caso contrario.
    - `language` string — El idioma usado durante el proceso de pago en formato `ISO 639-1`.
    - `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.
  - `detail` Detail, required — unresolved $ref
  - `payments` MoToPayment[], required
    - `uuid` string, required — Identificador único de la entidad.
    - `line` number, required — Número de linea del pago en el fichero .csv.
    - `status` 'PENDING' | 'COMPLETED' | 'ERROR_CREATING' | 'ERROR_SENDING', required — El estado del pago MoTo.
    - `amount` Amount, required — unresolved $ref
    - `operative` 'AUTHORIZATION' | 'PARTIAL_AUTHORIZATION' | 'DEFERRED' | 'PAYOUT' | 'TRANSFER', required — Operativa de la orden que se usará en el pago.
    - `secure` Safe, required — unresolved $ref
    - `destination` string, required — Destino del enlace de pago. Puede ser un email o un número de teléfono. Si el tipo de la campaña es `CUSTOM_DELIVERY`, puede tener cualquier valor.
    - `createdAt` Created, required — unresolved $ref
    - `certified` string — Indica si el envío del enlace del pago está certificado o no.
    - `sourceUUID` Uuid — unresolved $ref
    - `externalID` ExternalId — unresolved $ref
    - `additional` Additional — unresolved $ref
    - `urlPost` UrlPost — unresolved $ref
    - `urlOk` UrlOk — unresolved $ref
    - `urlKo` UrlKo — unresolved $ref
    - `cardTemplate` DccTemplate — unresolved $ref
    - `dccTemplate` string, nullable — Plantilla del DCC que se le mostrará al cliente. Si el valor es `null` se utilizara la plantilla por defecto.
    - `moToTemplate` string, nullable — Plantilla que se le mostrará al cliente al recibir la notificación del pago por email o sms. Si el valor es `null` se utilizara la plantilla por defecto.
    - `language` Language — unresolved $ref
    - `extra_data` string, nullable — El campo `extra_data` en forma de string.

---

[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)
