Cobro con varios métodos de pago
POST /moto/api/v1/mail_order
Pay By Link permite realizar cobros con varios métodos de pago.
Petición
Payload (object)
-
operation_type (enum[string]): Define el tipo de operación. Para realizar un cobro el valor del campo debe ser
sell
. -
operation_properties:
-
backend (string): Indica que se quieren mostrar varios métodos de pago. El valor del campo debe ser
pwall
. -
checkmode (enum[string]): DEFAULT = "3ds"
Parámetro Descripción 3ds Venta con autenticación. none Venta sin autenticación. -
expiration (integer): DEFAULT = 2592000 (30 días). Validez (en segundos) del enlace, desde que se envía al usuario.
-
result_interactive (boolean): DEFAULT = true.
True
si se usa una página intermedia de resultados. -
url_callback (string, required): URL para la captura de las respuestas de la API interna de Sipay Plus.
-
payment_details_template (object, required): Definición de los campos para la renderización del formulario.
- title (string, required): Título de la página web que contiene el formulario.
- description (string, required): Descripción que verá el usuario encima del formulario.
- logo_url (string, required): Enlace a imagen con el logo deseado.
-
-
notification_templates (array, required): Contiene las plantillas de correo y SMS.
-
type (enum[string], required): Tipo de mensaje a definir.
Parámetro Descripción data_request Para la plantilla que se enviará informando que hay una operación pendiente. -
transaport (enum[string], required): Canal de comunicación.
Parámetro Descripción mail Enviar la notificación solo por email. sms Enviar la notificación solo por SMS. -
data (object, required): Contiene los campos para el asunto de email(
subject
) y cuerpo de email(body
) y SMS(text
).- subject (string, required): Para
transaport
mail, asunto del email que se enviará al cliente. - body (string, required): Para
transport
mail, cuerpo del email que se enviará al cliente. - text (string, required) Para
transport
sms, cuerpo del SMS que se enviará al cliente
- subject (string, required): Para
-
-
message_recipients (array, required): Contenedor de usuarios y parámetros que definen una petición. Estos parámetros pueden ser utilizados en los mensajes de petición o en las pantallas de pago.
-
full_name (string, required): Nombre del usuario.
-
email (string, required): Correo electrónico del usuario.
-
phone_number (string, required): Teléfono móvil del usuario, siempre con la extensión incluida.
-
order (string, required): Ticket de la operación.
-
amount (string, required): Importe fijo de la operación en centimos.
-
currency (string, required): Moneda utilizada en la operación. Código ISO 4217 de tres letras.
-
datetime (string, required): Fecha y hora de la operación.
-
client (string, required): Nombre del comercio que efectúa la operación.
-
reconciliation (string): Identificador para la conciliación bancaria. Restricciones: puede contener hasta 255 caracteres alfanuméricos. Ejemplo: "1234-sipay".
-
preferred_transport (enum[string]): Indica el canal de envío por defecto para un usuario concreto. Los valores posibles son:
Parámetro Descripción SMS Enviar la notificación solo por sms. mail Enviar la notificación solo por email. -
notify_on_creation (boolean):
false
para generar un link sin enviar la notificación. -
notification_datetime (string): Fecha y hora en la que se desea enviar la notificación. Formato de ejemplo: ""2021-06-11T10:14:00Z" Si se manda una fecha anterior a la actual la notificación se mandará inmediatamente.
-
notification_templates (array): Volviendo a especificar el type, transport y los campos de la data, es posible personalizar los mensajes a enviar para un usuario concreto.
-
product_description (string, optional): descripción del producto que aparecerá en la plantilla de cobro.
-
product_title (string, optional): nombre del producto que aparecerá en la plantilla de cobro.
-
Respuesta
La respuesta tendrá dos posibles formatos. Dependiendo el valor de notify_on_creation
definido en la petición. En los ejemplos se añade una respuesta de cada uno.
Petición con notify_on_creation
=true
Payload (object)
- order_uuid_map (object): Objecto que contendrá el enlace para procesar el cobro.
- order_operacion
- real_uuid_map (object): Objecto que contendrá el identificador de la operación para futuras operaciones.
- order_operacion
- errors (object):
Petición con notify_on_creation
=false
Payload (object)
- order_uuid_map (object):
- order_operacion(array) Array que contendrá el enlace para procesar el cobro y el identificador de la operación para futuras operaciones.
- real_uuid_map (object): Vacio.
- errors (object):
Ejemplos
Ejemplo cobro con varios métodos de pago
- Petición
{
"key": "{{key}}",
"nonce": "{{nonce}}",
"mode": "sha256",
"resource": "{{resource}}",
"payload": {
"operation_type": "sell",
"operation_properties":
{
"backend": "pwall",
"expiration": 121313123123,
"ko_redirect": true,
"url_callback": "https://endqq52hn9wkxzt.m.pipedream.net",
"url_ko": "https://endqq52hn9wkxzt.m.pipedream.net/ko",
"url_result": "https://endqq52hn9wkxzt.m.pipedream.net/ok",
"payment_details_template":{
"title": "Pwall_Test",
"description": "Descripcion personalizable",
"logo_url": "https://www.sipay.es/wp-content/uploads/Recurso-2@2x.png"
}
},
"notification_templates": [
{
"type": "data_request",
"transport": "mail",
"data": {
"body": "<html><head><b>Apreciado {{full_name}}</b>,</head><br><br>Te informamos que el pago se realizará a través de la plataforma de Sipay.\nPara ello, se ha generado a día {{datetime}} un enlace de pago con ticket {{ticket_number}} que te permite pagar {{amount}} {{currency}} de modo seguro (cumpliendo la Normativa Internacional PCI-DSS) a través de varios métodos de pago. Al abrirlo deberás seleccionar el método de pago y continuar con el proceso.\nEste enlace estará activo durante 24 horas.\nPara gestionar tu pago, haz click en el siguiente enlace:\nUna vez confirmado el pago por nuestra entidad bancaria, recibirás el justificante en tu dirección de correo electrónico.\nNo respondas a este correo electrónico. Si precisas más información, encuentras el enlace caducado o tienes algún problema con el mismo, contacta a través de soporte@cliente.es o en www.cliente-web.es.\nTe agradecemos tu confianza en {{client}}.\nDirección de Contabilidad y Circulante.\n\n{{link}}<html>",
"subject": "Plantilla de pago"
}
},
{
"type": "data_request",
"transport": "sms",
"data": {
"text": "Apreciado {{full_name}},\nTe informamos que el pago se realizará {{link}}"
}
}
],
"message_recipients": [
{
"full_name": "Nombre Cliente",
"email": "correo_cliente@mail.es",
"notify_on_creation": true,
"phone_number": "",
"order": "ejemplo_documentacion_varios_metodos_de_pago",
"amount": 1000,
"currency": "EUR",
"datetime": "31/01/2022 09:00",
"client": "Sipay",
"preferred_transport": "mail"
}
]
}
}
- Respuesta con envío de notificación
{
"type": "app.status",
"code": "0",
"detail": "Success",
"payload": {
"order_uuid_map": {
"ejemplo_documentacion_varios_metodos_de_pago": "https://sandbox.sipay.es/s/mm2at4"
},
"real_uuid_map": {
"ejemplo_documentacion_varios_metodos_de_pago": "1a283efc-e0d6-11ec-b3ab-0242ac110024"
},
"errors": {}
},
"request_id": "6295fe0efca3a4d8081e6478",
"uuid": "6295fe0efca3a4d8081e6478"
}
- Respuesta generando solo el enlace
{
"type": "app.status",
"code": "0",
"detail": "Success",
"payload": {
"order_uuid_map": {
"ejemplo_documentacion_varios_metodos_de_pago": [
"e61fa602-e1b3-11ec-b3ab-0242ac110024",
"https://sandbox.sipay.es/s/m4djt2"
]
},
"real_uuid_map": {},
"errors": {}
},
"request_id": "6297722bfca3a4d8081e6618",
"uuid": "6297722bfca3a4d8081e6618"
}
- Ejemplo respuesta callback
"body": {
"amount": "0",
"approval": "516587",
"authorizator": "CAIXABANK, S.A.",
"card_brand": "VISA",
"card_country": "undefined",
"card_mask": "4548 81** **** 0004",
"card_trade": "undefined",
"card_type": "undefined",
"code": "0",
"cof_id": "792022152040232",
"currency": "EUR",
"expiration": "null",
"expired_at": "2023-10-31",
"masked_card": "4548 81** ****0004",
"order": "ejemplo_documentacion_varios_metodos_de_pago",
"reconciliation": "",
"request_id": "920f6934-e1a5-11ec-b3ab-0242ac110024",
"transaction_id": "000027346264324827822",
"type": "success"
}
Cobro con tarjeta + tokenizacion
POST /moto/api/v1/mail_order
Pay By Link permite realizar cobros con tarjeta y su tokenización .
Petición
Payload (object)
-
operation_type (enum[string]): Define el tipo de operación. Para una venta debe ser
sell
. -
operation_properties:
-
tokenize (boolean, required):
True
si se debe tokenizar la tarjeta. -
checkmode (enum[string]): DEFAULT = "3ds"
Parámetro Descripción 3ds Venta con autenticación. none Venta sin autenticación. -
expiration (integer): DEFAULT = 2592000 (30 días). Validez (en segundos) del enlace, desde que se envía al usuario.
-
result_interactive (boolean): DEFAULT = true.
True
si se usa una página intermedia de resultados. -
ko_redirect (boolean):
True
para activar redirección específica en caso de ko, mediante url_ko. -
url_callback (string, required): URL para la captura de las respuestas de la API interna de Sipay Plus.
-
url_ko (): URL de redirección tras la finalización errónea del proceso.
-
url_result (): URL de redirección tras la finalización del proceso.
-
payment_details_template (object, required): Definición de los campos para la renderización del formulario.
- title (string, required): Título de la página web que contiene el formulario.
- description (string, required): Descripción que verá el usuario encima del formulario.
- logo_url (string, required): Enlace a imagen con el logo deseado.
- button (string, required): Texto del botón que hay que pulsar al enviar el formulario.
- msg_result_ok (string): Mensaje a mostrar en la pantalla intermedia de resultados si la operación fue satisfactoria.
- msg_result_ko (string): Mensaje a mostrar en la pantalla intermedia de resultados si la operación falló.
-
-
notification_templates (array, required): Contiene las plantillas de correo y SMS.
-
type (enum[string], required): Tipo de mensaje a definir.
Parámetro Descripción data_request Para la plantilla que se enviará informando que hay una operación pendiente. data_result_ok Para la plantilla a enviar si si la operación fue satisfactoria. data_result_ko Para la plantilla a enviar si la operación falló. -
transaport (enum[string], required): Canal de comunicación.
Parámetro Descripción mail Enviar la notificación solo por email. sms Enviar la notificación solo por SMS. -
data (object, required): Contiene los campos para el asunto de email(
subject
) y cuerpo de email(body
) y SMS(text
).- subject (string, required): Para
transaport
mail, asunto del email que se enviará al cliente. - body (string, required): Para
transport
mail, cuerpo del email que se enviará al cliente. - text (string, required) Para
transport
sms, cuerpo del SMS que se enviará al cliente.
- subject (string, required): Para
-
-
message_recipients (array, required): Contenedor de usuarios y parámetros que definen una petición. Estos parámetros pueden ser utilizados en los mensajes de petición o en las pantallas de pago.
-
full_name (string, required): Nombre del usuario.
-
email (string, required): Correo electrónico del usuario.
-
phone_number (string, required): Teléfono móvil del usuario, siempre con la extensión incluida.
-
order (string, required): Ticket de la operación.
-
amount (string, required): Importe fijo de la operación en centimos.
-
currency (string, required): Moneda utilizada en la operación. Código ISO 4217 de tres letras.
-
datetime (string, required): Fecha y hora de la operación.
-
client (string, required): Nombre del comercio que efectúa la operación.
-
token (string): Obligatorio si
tokenize
estrue
. Nombre del token a crear. -
reconciliation (string): Identificador para la conciliación bancaria. Restricciones: puede contener hasta 255 caracteres alfanuméricos. Ejemplo: "1234-sipay".
-
custom (object): Campos personalizables. Este campo se renderizará en el formulario y además puede ser utilizado en los mensajes a enviar. Se dispone de hasta 5 campos de este tipo.
- custom1 (string):
- custom2 (string):
- custom3 (string):
- custom4 (string):
- custom5 (string):
-
preferred_transport (enum[string]): Indica el canal de envío por defecto para un usuario concreto. Los valores posibles son:
Parámetro Descripción SMS Enviar la notificación solo por sms. mail Enviar la notificación solo por email. -
notify_on_creation (boolean):
false
para generar un link sin enviar la notificación. -
notification_datetime (string): Fecha y hora en la que se desea enviar la notificación. Formato de ejemplo: ""2021-06-11T10:14:00Z" Si se manda una fecha anterior a la actual la notificación se mandará inmediatamente.
-
notification_templates (array): Volviendo a especificar el type, transport y los campos de la data, es posible personalizar los mensajes a enviar para un usuario concreto.
-
Respuesta
La respuesta tendrá dos posibles formatos. Dependiendo el valor de notify_on_creation
definido en la petición. En los ejemplos se añade una respuesta de cada uno.
Petición con notify_on_creation
=true
Payload (object)
- order_uuid_map (object): Objecto que contendrá el enlace para procesar el cobro.
- order_operacion
- real_uuid_map (object): Objecto que contendrá el identificador de la operación para futuras operaciones.
- order_operacion
- errors (object):
Petición con notify_on_creation
=true
Payload (object)
- order_uuid_map (object):
- order_operacion(array) Array que contendrá el enlace para procesar el cobro y el identificador de la operación para futuras operaciones.
- real_uuid_map (object): Vacio.
- errors (object):
Ejemplos
Ejemplo cobro + tokenización
- Petición
{
"key": "{{key}}",
"nonce": "{{nonce}}",
"mode": "sha256",
"resource": "{{resource}}",
"payload": {
"operation_type": "sell",
"operation_properties":
{
"tokenize": true ,
"checkmode": "3ds",
"expiration": 3999999,
"result_interactive": true,
"url_callback": "https://en9a2kjo69pp7r6.m.pipedream.net",
"url_result": "http://httpbin.org/get?type=ok",
"url_ko":"http://httpbin.org/get?type=ko",
"payment_details_template": {
"title": "Realizar cobro testeo",
"description": "Complete los datos de su tarjeta",
"logo_url": "https://sipay.es/wp-content/uploads/logo@0.75x.png",
"button": "Pagar testeo",
"msg_result_ok": "Todo ha ido bien :)",
"msg_result_ko": "Algo no fue bien :("
}
},
"notification_templates": [
{
"type": "data_request",
"transport": "mail",
"data": {
"body": "<html><head><b>Apreciado/a {{full_name}}</b>,</head><br><br>Le informamos que el pago del recibo de tu compra se realizará a través de la plataforma de Sipay.<br><br>Para ello, se ha generado a día {{datetime}} un enlace de pago con ticket {{ticket_number}} que le permite pagar {{amount}} {{currency}} de forma segura (cumpliendo la Normativa Internacional PCI-DSS) a través de su tarjeta de débito / crédito. Al abrirlo deberá teclear los datos referentes al número de tarjeta, caducidad y CVV.<br><br>Este enlace estará activo durante 24 horas.<br><br>Para gestionar tu pago, haz click en el siguiente enlace:<br><br>{{link}}<br><br>Una vez confirmado el pago por nuestra entidad bancaria, recibirás el justificante en tu dirección de correo electrónico.<br><br>No respondas a este correo electrónico. Si precisas más información, encuentras el enlace caducado o tienes algún problema con el mismo, contacta a través de soporte@cliente.es o en www.cliente-web.es.<br><br>Le agradecemos su confianza.<br><br>Un saludo.<br><br><html>",
"subject": "Plantilla de pago"
}
},
{
"type": "data_result_ok",
"transport": "mail",
"data": {
"body": "Apreciado {{full_name}},<br><br>Le informamos que el cobro se ha realizado con exito.<br><br>Le agradecemos su confianza en {{client}}.",
"subject": "Resultado de pago"
}
},
{
"type": "data_result_ko",
"transport": "mail",
"data": {
"body": "Apreciado {{full_name}},<br><br>Le informamos que el cobro ha fallado.<br><br>Le agradecemos su confianza en {{client}}.",
"subject": "Resultado de pago"
}
},
{
"type": "data_request",
"transport": "sms",
"data": {
"text": "Apreciado/a {{full_name}},\nLe informamos que el pago del recibo de tu compra se realizará a través del siguiente enlace: {{link}}"
}
},
{
"type": "data_result_ok",
"transport": "sms",
"data": {
"text": "Apreciado/a {{full_name}},\nLe informamos que el cobro se ha realizado con exito.\nAgradecemos su confianza en {{client}}."
}
},
{
"type": "data_result_ko",
"transport": "sms",
"data": {
"text": "Apreciado {{full_name}},\nLe informamos que el cobro ha fallado."
}
}
],
"message_recipients": [
{
"full_name": "Nombre Cliente",
"email": "correo_cliente@mail.es",
"phone_number": "XXXXXXXXXXX",
"notify_on_creation":true,
"notification_datetime":"2022-06-01T00:00:00Z",
"order": "ejemplo_documentacion_tarjeta_tokenizacion",
"amount": 1,
"currency": "EUR",
"reconciliation": "SipayQA",
"datetime": "31/01/2022 08:00",
"client": "Sipay Plus",
"token" : "token_ejemplo_documentacion"
"custom": {
"custom1":"<b>Poliza</b>: prueba",
"custom5":"<b>Poliza</b>: prueba"
},
"preferred_transport": "mail",
"notification_templates": [
{
"type": "data_request",
"transport": "mail",
"data": {
"subject": "replacement request. Enlace de cobro: {{link}}",
"body": "replacement body.Enlace de cobro: {{link}}"
}
},
{
"type": "data_result_ok",
"transport": "mail",
"data": {
"subject": "replacement subject OK",
"body": "replacement body OK"
}
},
{
"type": "data_result_ko",
"transport": "mail",
"data": {
"subject": "replacement subject KO",
"body": "replacement body KO"
}
}]
}
]
}
}
- Respuesta con envío de notificación
{
"type": "app.status",
"code": "0",
"detail": "Success",
"payload": {
"order_uuid_map": {
"ejemplo_documentacion_tarjeta_tokenizacion": "https://sandbox.sipay.es/s/mm2at4"
},
"real_uuid_map": {
"ejemplo_documentacion_tarjeta_tokenizacion": "1a283efc-e0d6-11ec-b3ab-0242ac110024"
},
"errors": {}
},
"request_id": "6295fe0efca3a4d8081e6478",
"uuid": "6295fe0efca3a4d8081e6478"
}
- Respuesta generando solo el enlace
{
"type": "app.status",
"code": "0",
"detail": "Success",
"payload": {
"order_uuid_map": {
"ejemplo_documentacion_tarjeta_tokenizacion": [
"e61fa602-e1b3-11ec-b3ab-0242ac110024",
"https://sandbox.sipay.es/s/m4djt2"
]
},
"real_uuid_map": {},
"errors": {}
},
"request_id": "6297722bfca3a4d8081e6618",
"uuid": "6297722bfca3a4d8081e6618"
}
- Ejemplo respuesta callback
"body": {
"amount": "0",
"approval": "516587",
"authorizator": "CAIXABANK, S.A.",
"card_brand": "VISA",
"card_country": "undefined",
"card_mask": "4548 81** **** 0004",
"card_trade": "undefined",
"card_type": "undefined",
"code": "0",
"cof_id": "792022152040232",
"currency": "EUR",
"expiration": "null",
"expired_at": "2023-10-31",
"masked_card": "4548 81** ****0004",
"order": "ejemplo_documentacion_tarjeta_tokenizacion",
"reconciliation": "",
"request_id": "920f6934-e1a5-11ec-b3ab-0242ac110024",
"token": "token_ejemplo_documentacion",
"transaction_id": "000027346264324827822",
"type": "success"
}
Cobro con token
POST /moto/api/v1/mail_order
Pay By Link permite realizar cobros con tarjeta y su tokenización.
Petición
Payload (object) Será igual al payload de cobro con tarjeta, pero con las siguietes modificaciones:
- operation_type: Para hacer una venta a través de un token debe ser
sell_stored_token
. - No es necesario incluir el atributo tokenize.
- El valor de token debe ser de un token existente.
Respuesta
Payload (object)
- order_uuid_map (object): Objecto que contendrá el enlace para procesar el cobro.
- order_operacion
- real_uuid_map (object): Objecto que contendrá el identificador de la operación para futuras operaciones.
- order_operacion
- errors (object):
Ejemplo
Venta a través de un token
- Petición
{
"key": "{{key}}",
"nonce": "{{nonce}}",
"mode": "sha256",
"resource": "{{resource}}",
"payload": {
"operation_type": "sell_stored_token",
"operation_properties":
{
"tokenize": false,
"checkmode": "3ds",
"expiration": 2592000,
"result_interactive": true,
"url_callback": "https://en9a2kjo69pp7r6.m.pipedream.net",
"url_result": "http://httpbin.org/get?type=ok",
"url_ko":"http://httpbin.org/get?type=ko",
"payment_details_template": {
"title": "Pagar con token_testeo",
"description": "Comprueba los datos de tu tarjeta",
"logo_url": "https://sipay.es/wp-content/uploads/logo@0.75x.png",
"button": "Pagar con token_testeo",
"msg_result_ok": "Todo ha ido bien :)",
"msg_result_ko": "Algo no fue bien :("
}
},
"notification_templates": [
{
"type": "data_request",
"transport": "mail",
"data": {
"body": "<html><head><b>Apreciado/a {{full_name}}</b>,</head><br><br>Le informamos que el pago del recibo de tu compra se realizará a través de la plataforma de Sipay.<br><br>Para ello, se ha generado a día {{datetime}} un enlace de pago con ticket {{ticket_number}} que le permite pagar {{amount}} {{currency}} de forma segura (cumpliendo la Normativa Internacional PCI-DSS) a través de su tarjeta de débito / crédito. Al abrirlo deberá confirmar su compra.<br><br>Este enlace estará activo durante 24 horas.<br><br>Para gestionar tu pago, haz click en el siguiente enlace:<br><br>{{link}}<br><br>Una vez confirmado el pago por nuestra entidad bancaria, recibirás el justificante en tu dirección de correo electrónico.<br><br>No respondas a este correo electrónico. Si precisas más información, encuentras el enlace caducado o tienes algún problema con el mismo, contacta a través de soporte@cliente.es o en www.cliente-web.es.<br><br>Le agradecemos su confianza.<br><br>Un saludo.<br><br><html>",
"subject": "Plantilla de pago"
}
},
{
"type": "data_result_ok",
"transport": "mail",
"data": {
"body": "Apreciado {{full_name}},<br><br>Le informamos que el cobro se ha realizado con exito.<br><br>Le agradecemos su confianza en {{client}}.",
"subject": "Resultado de pago"
}
},
{
"type": "data_result_ko",
"transport": "mail",
"data": {
"body": "Apreciado {{full_name}},<br><br>Le informamos que el cobro ha fallado.<br><br>Le agradecemos su confianza en {{client}}.",
"subject": "Resultado de pago"
}
},
{
"type": "data_request",
"transport": "sms",
"data": {
"text": "Apreciado/a {{full_name}},\nLe informamos que el pago del recibo de tu compra se realizará a través del siguiente enlace: {{link}}"
}
},
{
"type": "data_result_ok",
"transport": "sms",
"data": {
"text": "Apreciado/a {{full_name}},\nLe informamos que el cobro se ha realizado con exito.\nAgradecemos su confianza en {{client}}."
}
},
{
"type": "data_result_ko",
"transport": "sms",
"data": {
"text": "Apreciado {{full_name}},\nLe informamos que el cobro ha fallado."
}
}
],
"message_recipients": [
{
"full_name": "Nombre cliente",
"email": "correo@mail.es",
"phone_number": "XXXXXXXXXXX",
"order": "ejemplo_documentacion_token",
"amount": 20,
"currency": "EUR",
"notify_on_creation":true,
"notification_datetime":"2022-01-31T09:00:00Z",
"token": "token_ejemplo_documentacion",
"datetime": "29/02/2021 19:12",
"client": "Sipay Plus",
"reconciliation" : "SipayQA",
"custom": {
"custom1":"<b>Poliza</b>: prueba",
"custom5":"<b>Poliza</b>: prueba"
},
"preferred_transport": "mail",
"notification_templates": [{
"type": "data_result_ok",
"transport": "mail",
"data": {
"subject": "replacement subject OK",
"body": "replacement body"
}
},
{
"type": "data_result_ko",
"transport": "mail",
"data": {
"subject": "replacement subject KO",
"body": "replacement body"
}
}]
}
]
}
}
- Respuesta
{
"type": "app.status",
"code": "0",
"detail": "Success",
"payload": {
"order_uuid_map": {
"ejemplo_documentacion_token": "https://sandbox.sipay.es/s/mr55j3"
},
"real_uuid_map": {
"ejemplo_documentacion_token": "9fdf03de-e183-11ec-b3ab-0242ac110024"
},
"errors": {}
},
"request_id": "6297212dfca3a4d8081e6588",
"uuid": "6297212dfca3a4d8081e6588"
}
Actualizar un token
POST /moto/api/v1/mail_order
Petición
Payload (object)
-
operation_type (enum[string]): Define el tipo de operación. Para actualizar un token debe ser
store_token
. -
operation_properties (onject): Definición de los campos para la lógica de la llamada.
-
checkmode (enum[string]): DEFAULT = "3ds".
Parámetro Descripción 3ds Venta con autenticación. none Venta sin autenticación. -
expiration (integer): DEFAULT = 2592000 (30 días). Validez (en segundos) del enlace, desde que se envía al usuario.
-
result_interactive (boolean): DEFAULT = true.
True
si se usa una página intermedia de resultados. -
ko_redirect (boolean):
True
para activar redirección específica en caso de ko, mediante url_ko. -
url_callback (string, required): URL para la captura de las respuestas de la API interna de Sipay Plus.
-
url_ko (string): URL de redirección tras la finalización errónea del proceso.
-
url_result (string): URL de redirección tras la finalización del proceso.
-
payment_details_template (object, required): Definición de los campos para la renderización del formulario.
- title (string, required): Título de la página web que contiene el formulario.
- description (string, required): Descripción que verá el usuario encima del formulario.
- logo_url (string, required): Enlace a imagen con el logo deseado.
- button (string, required): Texto del botón que hay que pulsar al enviar el formulario.
- msg_result_ok (): Mensaje a mostrar en la pantalla intermedia de resultados si la operación fue satisfactoria.
- msg_result_ko (): Mensaje a mostrar en la pantalla intermedia de resultados si la operación falló.
-
-
notification_templates (array, required): contiene las plantillas de correo y SMS.
-
type (enum[string], required): Tipo de mensaje a definir.
Parámetro Descripción data_request Para la plantilla que se enviará informando que hay una operación pendiente. data_result_ok Para la plantilla a enviar si si la operación fue satisfactoria. data_result_ko Para la plantilla a enviar si la operación falló. -
transaport (enum[string], required): Canal de comunicación.
Parámetro Descripción mail Enviar la notificación solo por email. sms Enviar la notificación solo por SMS. -
data (object): Contiene los campos para el asunto de email(
subject
) y cuerpo de email(body
) y SMS(text
).- subject (string, required): Para
transaport
mail, asunto del email que se enviará al cliente. - body (string, required): Para
transport
mail, cuerpo del email que se enviará al cliente. - text (string, required) Para
transport
sms, cuerpo del SMS que se enviará al cliente.
- subject (string, required): Para
-
-
message_recipients (array): Contenedor de usuarios y parámetros que definen una petición. Estos parámetros pueden ser utilizados en los mensajes de petición o en las pantallas de pago.
-
full_name (string, required): Nombre del usuario.
-
email (string, required): Correo electrónico del usuario.
-
phone_number (string, required): Teléfono móvil del usuario, siempre con la extensión incluida.
-
order (string, required): Ticket de la operación.
-
amount (string, required): Debe ser igual a "0".
-
currency (string): DEFAULT = EUR. Moneda utilizada en la operación. Código ISO 4217 de tres letras.
-
datetime (string): Fecha y hora de la operación.
-
client (string, required): Nombre del comercio que efectúa la operación.
-
token (string, required): Nombre del token a actualizar.
-
reconciliation (string): Identificador para la conciliación bancaria. Restricciones: puede contener hasta 255 caracteres alfanuméricos. Ejemplo: "1234-sipay".
-
custom (object): Campos personalizables. Este campo se renderizará en el formulario y además puede ser utilizado en los mensajes a enviar. Se dispone de hasta 5 campos de este tipo.
- custom1 (string):
- custom2 (string):
- custom3 (string):
- custom4 (string):
- custom5 (string):
-
preferred_transport (enum[string]): Indica el canal de envío por defecto para un usuario concreto. Los valores posibles son:
Parámetro Descripción SMS Enviar la notificación solo por sms. mail Enviar la notificación solo por email. -
notify_on_creation (boolean):
false
para generar un link sin enviar la notificación. -
notification_datetime (string): Fecha y hora en la que se desea enviar la notificación. Formato de ejemplo: ""2021-06-11T10:14:00Z" Si se manda una fecha anterior a la actual la notificación se mandará inmediatamente.
-
notification_templates (array): Volviendo a especificar el type, transport y los campos de la data, es posible personalizar los mensajes a enviar para un usuario concreto.
-
Respuesta
Payload (object)
- order_uuid_map (object): Objecto que contendrá el enlace para procesar el cobro.
- order_operacion
- real_uuid_map (object): Objecto que contendrá el identificador de la operación para futuras operaciones.
- order_operacion
- errors (object):
Ejemplos
Actualizar un token
- Petición:
{
"key": "{{key}}",
"nonce": "1578911858712",
"mode": "sha256",
"resource": "{{resource}}",
"payload": {
"operation_type": "store_token",
"operation_properties":
{
"checkmode": "3ds",
"expiration": 2592000,
"result_interactive": true,
"url_callback": "https://en9a2kjo69pp7r6.m.pipedream.net",
"url_result": "http://httpbin.org/get?type=ok",
"url_ko":"http://httpbin.org/get?type=ko",
"payment_details_template": {
"title": "Renueva la tarjeta_testeo",
"description": "Escribe los datos de tu tarjeta",
"logo_url": "https://sipay.es/wp-content/uploads/logo@0.75x.png",
"button": "Renovar_testeo",
"msg_result_ok": "Todo ha ido bien :)",
"msg_result_ko": "Algo no fue bien :("
}
},
"notification_templates": [
{
"type": "data_request",
"transport": "mail",
"data": {
"body": "<html><head><b>Apreciado/a {{full_name}}</b>,</head><br><br>Le informamos que la actualización del método de pago se realizará a través de la plataforma de Sipay.<br><br>Para ello, se ha generado a día {{datetime}} un enlace con ticket {{ticket_number}} que le permite actualizar su método de pago de forma segura (cumpliendo la Normativa Internacional PCI-DSS). Al abrirlo deberá teclear los datos referentes al nuevo número de tarjeta, caducidad y CVV.<br><br>Este enlace estará activo durante 24 horas.<br><br>Para su gestión, haz click en el siguiente enlace:<br><br>{{link}}<br><br>Una vez confirmado el pago por nuestra entidad bancaria, recibirás el justificante en tu dirección de correo electrónico.<br><br>No respondas a este correo electrónico. Si precisas más información, encuentras el enlace caducado o tienes algún problema con el mismo, contacta a través de soporte@cliente.es o en www.cliente-web.es.<br><br>Le agradecemos su confianza.<br><br>Un saludo.<br><br><html>",
"subject": "Plantilla de pago"
}
},
{
"type": "data_result_ok",
"transport": "mail",
"data": {
"body": "Apreciado {{full_name}},<br><br>Le informamos que el cobro se ha realizado con exito.<br><br>Le agradecemos su confianza en {{client}}.",
"subject": "Resultado de pago"
}
},
{
"type": "data_result_ko",
"transport": "mail",
"data": {
"body": "Apreciado {{full_name}},<br><br>Le informamos que la actualización del método de pago ha fallado.<br><br>Le agradecemos su confianza en {{client}}.",
"subject": "Resultado de pago"
}
},
{
"type": "data_request",
"transport": "sms",
"data": {
"text": "Apreciado/a {{full_name}},\nLe informamos que la actualización de su método de pago se realizará a través del siguiente enlace: {{link}}"
}
},
{
"type": "data_result_ok",
"transport": "sms",
"data": {
"text": "Apreciado/a {{full_name}},\nLe informamos que que la actualización de su método de pago se ha realizado con exito.\nAgradecemos su confianza en {{client}}."
}
},
{
"type": "data_result_ko",
"transport": "sms",
"data": {
"text": "Apreciado {{full_name}},\nLe informamos que que la actualización de su método de pago ha fallado."
}
}
],
"message_recipients": [
{
"full_name": "Nombre Cliente",
"email": "correo_cliente@mail.es",
"phone_number": "XXXXXXXXXXX",
"amount": 0,
"currency": "EUR",
"order": "ejemplo_documentacion_actualizar_token",
"token": "token_ejemplo_documentacion",
"datetime": "29/02/2021 09:12",
"client": "Sipay Plus",
"custom": {
"custom1":"<b>Personalizable1</b>: prueba",
"custom5":"<b>Personalizable2</b>: prueba"
},
"preferred_transport": "mail"
}
]
}
}
- Respuesta:
{
"type": "app.status",
"code": "0",
"detail": "Success",
"payload": {
"order_uuid_map": {
"ejemplo_documentacion_actualizar_token": "https://sandbox.sipay.es/s/myq3ck"
},
"real_uuid_map": {
"ejemplo_documentacion_actualizar_token": "b830f426-e262-11ec-b3ab-0242ac110024"
},
"errors": {}
},
"request_id": "62989778fca3a4d8081e67b0",
"uuid": "62989778fca3a4d8081e67b0"
}