Certified SMS and Contract SMS Sending API (7.0)

Download OpenAPI specification:Download

INTRODUCTION

API for integrating the sending of CERTIFIED SMS and CONTRACT SMS messages from applications through https requests.

AUTHENTICATION

In your user account you will find the API User and the API Token, both are required to make the REST API requests to the API functions. For security, requests must be made using POST and with the secure HTTPS protocol.



To use Basic Authentication you must include a header in the requests of the type: Authorization: Basic Base64StringAPI where Base64StringAPI is the Base64 encoding of the string APIUser:APIToken, you can find your API User and API Token in your user account under Your Data -> Configure Account.



To generate the Base64-encoded string, simply build the string APIUser:APIToken and encode it in base64 using any base64encode function.

COMPATIBILITY AND VERSIONS

Version 7 is compatible with previous versions of the API starting from version 3.3 with changes in the authentication method.
Version 1.0 – 1.5: Last updated 2004. Upgrading to version 3.3 or higher is recommended. Versions currently not supported. Contact support for migration assistance.
Version 2.0 – 2.3: last updated: 2009. Upgrading to versions 3.3 or higher is recommended. Versions currently not supported. Contact support for migration assistance.
Version 3.0 – 3.7: last updated: 2012. Versions supported and compatible with higher versions. Switching to the latest version is recommended. Direct migration (v5 compatible with these versions). Contact support for information about the version change.
Version 4.0 to 4.4: Last updated 2014. Versions supported and 100% compatible with higher versions. We recommend upgrading to version 5 as it has more functions and possibilities. New features will be added to version 5.
Version 5.0: Release and last update: 2015. Version compatible with previous versions of the API starting from 3.3 (inclusive).
Version 5.1: Last updated: 2016. Version compatible with previous versions of the API starting from 3.3 (inclusive). This revision also adds some utilities at the majority request of customers.
Version 5.2 to 5.7: Last updated: 2017. New features already present in the panel. Ability to upload PDF and office files to send them in SMS and Certified SMS.
Version 5.8: Last updated: 2018. The possibility to send variables per recipient is added. These variables are used to personalize both the sent message and the links and Landing Pages.
Version 5.8.1: Last revision 2018. The possibility to send contracts in the Certified SMS through acceptance and biometric handwritten signature is included.
Version 5.8.2: Last revision 2019. The reception of statuses in contracts is added.
Version 5.8.2.2: Last revision 2020. The reception of CSV in the final statuses of the Contract SMS is added to facilitate its distribution among signers.
Version 6: Last revision 2021. New features. Certification of access to the attachments of the PDF.
Version 7: Last revision 2023. Authentication through API User and API Token. New features. Possibility of identifying the recipient and requesting acceptance/rejection of the Notification. Possibility of sending the PDF within the request, both for the contract, in the Contract SMS, and as an attachment to the Certified SMS.

IMPORTANT NOTES

Empty connections: It is important to keep in mind that a repeatedly erroneous connection will be treated by the system as spam and may temporarily block the connection.

It is advisable to avoid making repeated connections with erroneous data or fast 'empty' connections (without sending) with the same data to obtain the number of credits or the same report.

To obtain reports optimally in real time, it is recommended to configure the API in the panel to receive them in a script on your website.


Response of the requests: Most of the functions have a parameter called 'Resp'. This parameter defines the format of the response that will be returned. It can be TXT, JSON, XML or undefined.

It is always recommended to define this parameter since all functions, for compatibility with previous versions of the API, respond by default (if this parameter is not defined) as they did in old versions. In these results from previous API versions, some of the variables included in this version of the API are omitted, and we consider them important to facilitate integration and account information.

In the included examples it is always assumed that you have defined the parameter. If you are working directly with API version >= 5, we will assume that you have defined the parameter in all requests.


Recommended operation: The recommended operation, being the simplest and at the same time the most professional, is the following:
- PROCESS 1: Sending Certified SMS or Contract SMS: Described in the EnviarSMSCERTIFICADO function of this document.
- PROCESS 2: Automatic reception of reports on your website (process described in the 'Reception of delivery reports' section.

basicAuth

HTTP Basic authentication. Use your API User as the username and your API Token as the password (you will find them in your panel, under Your Data → Configure Account). The resulting header is Authorization: Basic base64(APIUser:APIToken). Most HTTP libraries build it automatically (curl -u, requests auth=, Ruby's basic_auth, etc.) without needing to encode the base64 by hand.

Security Scheme Type: HTTP
HTTP Authorization Scheme: basic

Send Certified SMS and Contract SMS

/EnviarSMSCERTIFICADO

Function for sending Certified SMS and Contract SMS messages from applications. Definition of the required parameters.

ATTENTION: Check the real-time report reception section if you want to receive the status of the certified and contract messages sent in real time in a script on your website and be able to download the certificates interactively.

Authorizations:
basicAuth
query Parameters
Remitente
required
string
Example: Remitente=MIEMPRESA

The phone number, company name or name of the person sending. If left blank, the default mobile phone or sender registered by the sending user in Mensatek will be sent as the sender. ATTENTION If it is alphanumeric, the Maximum is 11 characters.

Destinatarios
required
Array of arrays
Example: Destinatarios=[{"Movil":"34600000000","Variable_1":"Pedro"},{"Movil":"34600000001","Variable_1":"Ana"}]

JSON array with the recipients of the certified sms. You can add variables if you want to personalize the Message per recipient. For example:


                  [
                    {
                        "Movil": "34600000001",
                         "Variable_1": "Variable 1 (up to variable_10) for each recipient "
                     },
                     {
                         "Movil": "34600000002",
                         "Variable_1": "Variable_1 to personalize the message of the second recipient. Only the Mobile is required in the array and, if variables are used, from Variable_1 to Variable_10"
                     }
                  ]
Mensaje
required
string
Example: Mensaje=To the attention of Ana, We send you this notification ....., click on the following link to see the full notification (FILE:2:notifica.pdf)

Message that will be sent to the recipient(s). It can include Files, shortened Links, images, QRCODE, etc... To include attachments/files or any of these elements, check the documentation in Appendix 1. In Appendix 1 you will see how to incorporate PDF files, for example, in support of the notification or, in the case of Contract SMS, for signing.

Tipocontrato
integer
Example: Tipocontrato=0

It is the Contract Type to be used in case of Contract SMS: the options are:
0 - (Default). The message is a Certified SMS. The Contract SMS option is disabled.
1 - Contract SMS by Reply
18 - Contract SMS through explicit acceptance (the recipient must view the attached PDF -a PDF must be included in the message- and click ACCEPT)
50 - Contract SMS through acceptance and biometric signature. The signer must view the attached PDF document (see the cargarCocumento function to upload it), click the accept button and sign on the mobile screen (handwritten/biometric signature)
16434 - Same as the handwritten signature option (option 50) but, additionally, the signer will be asked for an identity verification via video and ID document.

Fecha
string
Example: Fecha=2022-10-01 15:10

Date on which the sending is scheduled, the certified message will be sent on that date. Empty by default, which means send immediately. Format Year-Month-Day hour:minute. The time reference is CET/CEST (Spain time zone).

Referenciausuario
string
Example: Referenciausuario=Your reference

Parameter used as a reference for the user. If you choose to receive the report at a URL, you will receive this parameter in the result of the sending.

Report
integer
Example: Report=0

If you want to receive reports by email or in a script on your website (by enabling the API configuration in the user panel).

Idmensaje
integer
Example: Idmensaje=1765987

Optional parameter. It is used to unify sendings within the same message code (idMensaje). This way, you will be able to consult in the panels the delivery statistics of several grouped messages. This parameter corresponds to the Msgid/idMensaje obtained in a previous request. If you use this parameter, the sender will be forced to that of the first message sent (the one that returned the Msgid/idMensaje). Additionally, two messages with the same idMensaje code will not be allowed to be sent to the same mobile.

Contacto
required
string
Example: Contacto=EMPRESA S.L.

Contact details of the sending person or company.

Telcontacto
required
string
Example: Telcontacto=900000000

Contact phone of the sending person or company.

Cifcontacto
required
string
Example: Cifcontacto=B00000000

CIF or NIF of the sending person or company.

Vpd
integer
Example: Vpd=3

Validity period in days (1 to 20), delivery will be attempted for VPD days VPH hours and VPM minutes even if the recipient's phone remains off, after which the message will expire and delivery will no longer be attempted.

Vph
integer
Example: Vph=0

Hours in the validity period (0 to 23), delivery will be attempted for VPD days VPH hours and VPM minutes even if the recipient's phone remains off, after which the message will expire and delivery will no longer be attempted.

Vpm
integer
Example: Vpm=0

Minutes of the validity period (0 to 59), delivery will be attempted for VPD days VPH hours and VPM minutes even if the recipient's phone remains off, after which the message will expire and delivery will no longer be attempted.

Identificar
string
Example: Identificar=CERTIFICADO-12345678E

Only for Certified SMS: If you want to protect the notification/identify the recipient before they can access the attachments. The recipient identification options are:
LIBRE - The recipient will be able to access the notification without identifying themselves (do not use when sending sensitive information).
MOVIL - The recipient must indicate their Mobile (the one that received the Certified SMS) to be able to access the attachments/notification.
OTP - The recipient, when trying to access the notification, will receive a single-use PIN that they must enter to access the content.
DNI-NumDni - The recipient must indicate their ID document (indicated in this parameter as DNI-00000000T) to be able to access the notification.
CERTIFICADO-NumDni - The recipient must access the communication with a certificate assigned to the indicated ID document or with their electronic ID document. It is indicated as CERTIFICADO-00000000T where 00000000T is the recipient's ID document.

Aceptacion
integer
Example: Aceptacion=10

Only for Certified SMS: If a number greater than 0 is indicated, the recipient will be asked to accept or reject the notification before accessing its content (they will only be able to access if they have previously accepted it). The number, a value between 0 to disable and 15, is the number of days after which the notification will expire if the recipient has not yet accepted or rejected it.

Unicode
integer
Example: Unicode=0

Enable Unicode to be able to send any character outside the GSM standard.
0 - Send in GSM 3.38 standard - Default - (see the list of characters in appendix 1)
1 - Send in Unicode (supports any character)

Fixutf8
integer
Example: Fixutf8=0

Sometimes, when developers use an encoding that is not UTF8, special characters may be interpreted incorrectly. If this happens, enable (set to 1) this parameter to fix it.
0 - 'I am sending in UTF8, no need to fix the encoding'
1 - fix special characters

Emailreport
string
Resp
string
Enum: "TXT" "JSON" "XML"
Example: Resp=JSON

Type of response to return as the result of the call.
ANT - (Deprecated). Kept for backward compatibility with previous versions
JSON - The response will be returned in JSON
XML - The response will be returned in XML
TXT - The response will be returned in Text format

Request Body schema:

Parameters are sent in the body of the POST request, either as a JSON object (Content-Type application/json, RECOMMENDED) or as an application/x-www-form-urlencoded form. In the form format, array or object parameters are sent as a JSON-encoded string. Parameter names are case-insensitive. The detailed description of each parameter is in the parameters section of this operation.

Remitente
required
string
Destinatarios
required
Array of any
Mensaje
required
string
Tipocontrato
integer
Fecha
string
Referenciausuario
string
Report
integer
Idmensaje
integer
Contacto
required
string
Telcontacto
required
string
Cifcontacto
required
string
Vpd
integer
Vph
integer
Vpm
integer
Identificar
string
Aceptacion
integer
Unicode
integer
Fixutf8
integer
Emailreport
string
Resp
string

Responses

Response Schema:
Array
Res
required
integer <int32>

Response of the requested function


>0 Number of messages sent.
-1 Authentication error.
-2 Not enough credits.
-3 Error in the call data. Required parameters are missing. In this case, you will get an additional parameter called Error with the description of the error.
-4 Attachment file not allowed.
-5 Not enough credits.
-15 If you use a Contract SMS with PDF you must include the PDF file in the message in the form (FILE:2:Filename.pdf). First you must upload the file with the corresponding function and then add this tag inside the Message parameter.
-16 The specified PDF name is not in your library, you must upload it with the file upload function..

Error
string

In case of Res -3, you will get a descriptive error of the problem in this parameter.

Destinatarios
Array of arrays

Number of recipients. Only obtained if the 'Resp' parameter (response type) is specified and the result is positive (messages are sent)

Msgid
integer

(For compatibility with previous versions, duplicate of idMensaje). Identifier of the message or group of messages sent. It serves, for example, as identification to obtain the report of the message sent (if the phone has been deactivated, delivery times, etc…). It will be received in the requests if you enable the real-time report reception in a script on your website/server.

idMensaje
integer

Identifier of the message or group of messages sent. It serves, for example, as identification to obtain the report of the message sent (if the phone has been deactivated, delivery times, etc…). It will be received in the requests if you enable the real-time report reception in a script on your website/server.

Cred
double

Credits remaining in the user account after the sending.

Mensajes
integer

Number of SMS messages sent. Only obtained if the 'Resp' parameter (response type) is specified and the result is positive (messages are sent)

NoEnviados
integer

Number of messages not sent. Normally because the recipient is duplicated or because the mobile is not correct. Only obtained if the 'Resp' parameter (response type) is specified and the result is positive (messages are sent)

CreditosUsados
integer

Number of credits used in the sending. Only obtained if the 'Resp' parameter (response type) is specified and the result is positive (messages are sent).

CreditosNecesarios
integer

Number of credits needed to send the message. Only if the message cannot be sent due to lack of credits.

Request samples

Content type
{
  • "Remitente": "MIEMPRESA",
  • "Destinatarios": "[{\"Movil\":\"34600000000\",\"Variable_1\":\"Pedro\"},{\"Movil\":\"34600000001\",\"Variable_1\":\"Ana\"}]",
  • "Mensaje": "To the attention of Ana, We send you this notification ....., click on the following link to see the full notification (FILE:2:notifica.pdf)",
  • "Tipocontrato": "0",
  • "Fecha": "2022-10-01 15:10",
  • "Referenciausuario": "Your reference",
  • "Report": "0",
  • "Idmensaje": "1765987",
  • "Contacto": "EMPRESA S.L.",
  • "Telcontacto": "900000000",
  • "Cifcontacto": "B00000000",
  • "Vpd": "3",
  • "Vph": "0",
  • "Vpm": "0",
  • "Identificar": "CERTIFICADO-12345678E",
  • "Aceptacion": "10",
  • "Unicode": "0",
  • "Fixutf8": "0",
  • "Emailreport": "string",
  • "Resp": "JSON"
}

Response samples

Content type
[
  • {
    }
]

Reception of delivery reports and status changes of sent messages

https://{SuDominio}/path/de/su/script/de/recepción/de/reports

REAL-TIME RECEPTION OF DELIVERY STATUSES IN A SCRIPT ON YOUR SERVER.

By enabling the option to receive reports in real time in a script on your server from your user panel, you will receive a POST request with the indicated format each time each message sent changes status.

You can configure receiving the requests with basic authentication and in JSON or FORM-DATA format

Authorizations:
basicAuth
Request Body schema:

Parámetros recibidos en su script en petición POST con la configuración especificada en su panel de usuario/configuración API.

Servicio
required
string

Type of report you are receiving (the objective is to distinguish between the reports of the different services). The services referred to in this specification may receive SMSCERTIFICADO If the service refers to a report of a Certified SMS SMSCONTRATO The report refers to a Contract SMS

Resultado
required
integer

Status of the notification sent. The possible statuses are:

STATUS DESCRIPTION MEANING
`0` Waiting for delivery Meaning: The carrier is waiting to receive the delivery confirmation from the mobile. If this status remains for more than 5-10 seconds, it usually indicates that the destination phone is off or out of coverage. The carrier will attempt delivery as soon as the mobile is operational again.
`1` Scheduled Meaning: The message is scheduled. It will be sent at the moment indicated in the [Date] section
`2` Waiting for delivery Meaning: The carrier is waiting to receive the delivery confirmation from the mobile. If this status remains for more than 5-10 seconds, it usually indicates that the destination phone is off or out of coverage. The carrier will attempt delivery as soon as the mobile is operational again.
`10` Waiting for delivery Meaning: The carrier is waiting to receive the delivery confirmation from the mobile. If this status remains for more than 5-10 seconds, it usually indicates that the destination phone is off or out of coverage. The carrier will attempt delivery as soon as the mobile is operational again.
`13` Delivered to the phone Meaning: The message has been delivered to the destination phone. In case the service is a Certified SMS, the system is certifying the delivery and content. You can verify the delivery time in seconds and the date/time it was delivered. If the delivery time exceeds 5-10 seconds, the phone was probably off or out of coverage.
`14` Certified SMS Delivered and Certified Meaning: The Certified SMS has been delivered and Certified. You have a certificate in PDF format with Timestamp.
`15` Waiting for reply in Contract SMS by YES/I Accept reply Meaning: In a Contract SMS, one of the contracting options is the YES/I Accept reply to the Certified SMS, closing a contract; the system has delivered the Certified SMS and is waiting for the recipient's reply.
`16` Reply received. Certifying Meaning: The reply to the Certified SMS has been received, closing a Contract SMS. The result is being certified.
`17` Contract SMS by certified reply Meaning: The reply has been received and the contract is available for download.
`50` The Network responds that the phone does not exist Meaning: The carrier that served the mobile has indicated that the phone no longer exists or has been deactivated. It is advisable to contact the recipient to obtain their new mobile number.
`51` Delivery to the phone failed Meaning: There has been a repeated failure in the delivery to this phone. As a quality measure, exclusively at MENSATEK, we retry deliveries several times at no additional cost to you, in this case to avoid temporary phone problems. In all probability this phone no longer exists.
`52` Delivery to the network failed Meaning: Error of the carrier that serves the mobile. Contact Support to check it.
`53` The message has expired. (The phone remains non-operational) Meaning: The mobile has been off for a prolonged period (16-72 hours depending on the carrier). As a quality measure exclusive to MENSATEK, we retry delivery several periods at no cost to you; if, after the carrier repeatedly tells us the phone is still off, this message appears. The Date data is the last delivery attempt.
`54` Number on Blacklist Meaning: The number is on the carrier's blacklist or on your account's.
`55` Number Blocked Meaning: The number is blocked.
`70` Delivered to the phone. Delivery time not available Meaning: The message has been delivered by the carrier that serves the mobile but there is no specific data of the delivery moment due to a failure in mobile->Carrier communication.
`101` The message has expired. (The phone remains non-operational) Meaning: The mobile has been off for a prolonged period (16-72 hours depending on the carrier). As a quality measure exclusive to MENSATEK, we retry delivery several periods at no cost to you; if, after the carrier repeatedly tells us the phone is still off, this message appears. The Date data is the last delivery attempt.
`102` Deactivated user Meaning: The user is deactivated.
`103` The message has expired. (The phone remains non-operational) Meaning: The mobile has been off for a prolonged period (16-72 hours depending on the carrier). As a quality measure exclusive to MENSATEK, we retry delivery several periods at no cost to you; if, after the carrier repeatedly tells us the phone is still off, this message appears. The Date data is the last delivery attempt.
`104` The phone is not correct Meaning: The number is not correct, check the number and correct it.
`106` Delivered to the phone. Delivery time not available Meaning: The message has been delivered by the carrier that serves the mobile but there is no specific data of the delivery moment due to a failure in mobile->Carrier communication.
`110` The phone does not exist Meaning: The carrier that served the mobile has indicated that the phone no longer exists or has been deactivated. It is advisable to contact the recipient to obtain their new mobile number.
`111` Phone deactivated Meaning: The carrier that served the mobile has indicated that the phone no longer exists or has been deactivated. It is advisable to contact the recipient to obtain their new mobile number.
`112` Phone without service Meaning: The carrier that served the mobile has indicated that the phone no longer has service. It is advisable to contact the recipient to obtain their new mobile number.
`113` The message has expired. (The phone remains non-operational) Meaning: The mobile has been off for a prolonged period (16-72 hours depending on the carrier). As a quality measure exclusive to MENSATEK, we retry delivery several periods at no cost to you; if, after the carrier repeatedly tells us the phone is still off, this message appears. The Date data is the last delivery attempt.
`120` Failure in the destination SMSC Meaning: The SMSC of the destination carrier has given a serious error. It is probably a serious incident at the carrier; the message is held to ensure deliveries.
`121` Congestion in the destination SMSC Meaning: The destination carrier is congested. Mensatek (exclusive service) is retrying delivery through priority channels (this error is temporary and should be resolved quickly). 
`122` Failure in the destination SMSC Meaning: The SMSC of the destination carrier has given a serious error. It is probably a serious incident at the carrier; the message is held to ensure deliveries.
`123` Phone off or out of coverage Meaning: The carrier that serves the mobile indicates that the phone is off or out of coverage.
`124` Phone without SMS service Meaning: The carrier that serves the mobile indicates that the phone does not have an active SMS service.
`125` Phone Blocked or restricted Meaning: The carrier that serves the mobile indicates that this mobile has its services blocked or restricted.
`126` Phone busy Meaning: The carrier that serves the mobile indicates that this mobile cannot receive the message because the subscriber is busy.
`130` Error in the destination Phone Meaning: The carrier that served the mobile has indicated that the phone no longer exists or has been deactivated. It is advisable to contact the recipient to obtain their new mobile number.
`131` The Mobile has exceeded the memory capacity (the message does not fit) Meaning: There has been a repeated failure in the delivery to this phone. As a quality measure, exclusively at MENSATEK, we retry deliveries several times at no additional cost to you, in this case to avoid temporary phone problems. 
`132` The Mobile cannot receive messages Meaning: There has been a repeated failure in the delivery to this phone. As a quality measure, exclusively at MENSATEK, we retry deliveries several times at no additional cost to you, in this case to avoid temporary phone problems. If this error persists, in all probability this phone no longer exists.
`133` Failure in destination mobile (deactivated). Meaning: The carrier that served the mobile has indicated that the phone no longer exists or has been deactivated. It is advisable to contact the recipient to obtain their new mobile number.
`134` Problem in the destination mobile. Retrying... Meaning: The mobile could not receive the message. The carrier has indicated a temporary error of the device. As a quality measure exclusive to Mensatek, we will retry delivery several times at 15-minute intervals. We will only mark the message as failed if all delivery attempts are finally erroneous, in which case we will indicate the reason (normally a mobile with coverage problems or being deactivated).
`135` Problem in the destination network. Retrying... Meaning: The mobile could not receive the message. The carrier has indicated an error. As a quality measure exclusive to Mensatek, we will retry delivery several times at 15-minute intervals. We will only mark the message as failed if all delivery attempts are finally erroneous, in which case we will indicate the reason (normally a mobile with problems or deactivated).
`136` Phone without service Meaning: The carrier that served the mobile has indicated that the phone no longer has service or has been recently deactivated. It is advisable to contact the recipient to obtain their new mobile number.
`137` Phone deactivated Meaning: The carrier that served the mobile has indicated that the phone no longer exists or has been deactivated. It is advisable to contact the recipient to obtain their new mobile number.
`140` Destination error, contact support Meaning: Contact support. There is a problem sending your messages to the destination carrier/country.
`141` Destination error, contact support Meaning: Contact support. There is a problem sending your messages to the destination carrier/country.
`150` The destination network has temporarily closed message delivery Meaning: Contact support. There is a problem sending your messages to the destination carrier/country.
`160` Contract SMS. The user has accessed the Contract/PDF Meaning: In a Contract SMS in which a PDF is attached for signing, this status indicates that the recipient has accessed the document. 'Variables' is sent as a JSON string.
`161` Contract SMS. Contract Read Meaning: The recipient has read the document (has viewed it to the end).
`162` Contract SMS. Contract Accepted Meaning: The recipient/signer has accepted the contract.
`163` Contract SMS. Contract signed Meaning: The recipient has signed the contract.
`180` Contract SMS. Final Status. Contract Accepted by basic acceptance Meaning: The recipient has completed the signing through explicit acceptance of the contract. The contract is available for download. 'Variables' is sent as a JSON string.
`181` Contract SMS. Final Status. Contract Accepted and signed with biometric signature Meaning: The recipient has accepted the contract and signed it with a biometric signature. The certified contract is available for download. 'Variables' is sent as a JSON string.
`190` Contract SMS. Contract rejected Meaning: The recipient has rejected the contract. 'Variables' is sent as a JSON string.
`195` Contract SMS. Contract expired Meaning: The contract has expired without completing the signing. 'Variables' is sent as a JSON string.
`1000` Waiting for delivery Meaning: The carrier is waiting to receive the delivery confirmation from the mobile. If this status remains for more than 5-10 seconds, it usually indicates that the destination phone is off or out of coverage. The carrier will attempt delivery as soon as the mobile is operational again.
`1001` Scheduled Meaning: The message is scheduled. It will be sent at the moment indicated in the [Date] section
`1002` Sending Meaning: Delivering to destination carrier/Waiting for the destination carrier to confirm receipt of the message to proceed to deliver it to the mobile.
`1003` Problem in the destination mobile. Retrying... Meaning: There has been a repeated failure in the delivery to this phone. As a quality measure, exclusively at MENSATEK, we retry deliveries several times at no additional cost to you, in this case to avoid temporary phone problems. In all probability this phone no longer exists.
`5000` Contract SMS. GPS location of the signer. Meaning: Sent only in case the signer accepts the GPS location.
Remitente
required
string

Sender used in the sending.

Movil
required
string

Recipient's mobile that the report refers to.

Fecha
required
string

Date of the report (date on which the carrier that serves the destination mobile communicates the new status)

Segundos
required
string

Time elapsed until the status change (normally delivery time to the mobile)

idMensaje
required
integer

Unique identifier received as a response in the sending function (idMensaje received in the sending function)

Referencia
required
string

User reference that was sent during the sending request.

idReport
integer

Unique identifier of the message.

Request samples

Content type
{
  • "Servicio": "SMSCERTIFICADO",
  • "Resultado": "11",
  • "Remitente": "TUEMPRESA",
  • "Movil": "34600123456",
  • "Fecha": "2020-12-03 11:14:24",
  • "Segundos": "3",
  • "idMensaje": "10573758",
  • "Referencia": "Your reference if you indicated it",
  • "idReport": "1234567890"
}

Real-time reception of the access events to the PDF Attachments of the Certified SMS.

https://{SuDominio}/path/de/su/script/de/recepción/de/reports/eventos/adjuntos

REAL-TIME RECEPTION OF THE ACCESS EVENTS TO THE PDF ATTACHMENTS OF THE CERTIFIED SMS.

By enabling the option to receive reports in real time in a script on your server from your user panel, you will receive a POST request with the indicated format each time the recipient performs an event on the attachment included in the Certified SMS.

You can configure the requests to be received with basic authentication and in JSON or FORM format

Authorizations:
basicAuth
Request Body schema:

Parámetros recibidos en su script en petición POST con la configuración especificada en su panel de usuario/configuración API.

Servicio
required
string

Type of report you are receiving (the objective is to distinguish between the reports of the different services). In this case you will receive EVENTOSSMSCERTIFICADO

Fichero
required
string

Name of the document that the event refers to.

TipoAdjunto
required
string

Type of protection of the attachment that the event refers to. It can be:


1 Free access; simply by clicking on the link, the recipient has access to the content of the file


100 Protection through OTP (single-use PIN); to be able to read the content, the recipient has to enter a PIN


101 Protection through Mobile; to be able to read the content, the recipient has to enter the mobile that received the Certified SMS


102 Protection through ID document; to be able to read the content, the recipient has to enter the recipient's ID document


103 Protection through digital certificate. The recipient must access with their ID document or a valid certificate.

Fecha
required
string

Date of the report (date on which the event occurs)

Telefono
required
string

Recipient's mobile that the report refers to

TipoEvento
required
string

Type of event being notified. The options are:


1 : Access to the content (Value is the User Agent of access)


2: Sending of PIN for access by OTP (Value is the PIN)


3: PIN Validation Correct (Value is the PIN entered)


4: PIN Validation Incorrect (Value is the PIN entered)


5: 3 or more incorrect validations (PIN invalidated) (Value is the number of times the PIN was entered incorrectly)


6: Access by mobile indicated incorrectly.


7: Access by mobile indicated correctly.


8: Access by ID document indicated correctly.


9: Access by ID document indicated incorrectly.


10: Access with correct certificate.


11: Access with incorrect certificate / not valid / does not match recipient ID document / expired / not suitable for identification / etc…


12: Notification Accepted.


13: Notification Rejected.

idEnvio
required
integer

Unique identifier received as a response in the sending function (MsgId received in the sending function), it is equal to idMensaje and is used for compatibility with previous versions.

idMensaje
required
integer

Unique identifier received as a response in the sending function (MsgId received in the sending function)

Valor
string

Value related to the type of event.

Referencia
string

User reference that was sent during the sending request.

IP
string

The IP from which the event occurred (for example the connection IP from which the document was accessed).

Puerto
integer

Port from which the recipient accessed which, together with the IP, defines the connection.

Request samples

Content type
{
  • "Servicio": "EVENTOSSMSCERTIFICADO",
  • "Fichero": "Nombrefichero.pdf",
  • "TipoAdjunto": "1",
  • "Fecha": "2020-12-03 11:14:24",
  • "Telefono": "34600000000",
  • "TipoEvento": "1",
  • "idEnvio": "123433379",
  • "idMensaje": "123433379",
  • "Valor": "00000000T",
  • "Referencia": "19927743TR",
  • "IP": "127.0.0.1",
  • "Puerto": "56678"
}

Reception of replies to Simple Contract SMS - with a 'Yes'/'I Accept' reply

https://{SuDominio}//path/de/su/script/de/recepción/de/sms

RECEPTION OF THE SMS MESSAGES RECEIVED ON YOUR CONTRACTED NUMBER OR AS A REPLY TO YOUR BASIC CONTRACT SMS

The configuration of the address of the script (endpoint) where you want to receive a request for each message received on your number is done from the user panel. The contracting of the SMS message reception numbers is done through your sales representative and requires an identity verification. You can contract as many phone numbers as you wish. To know the coverage and the possibility of international reception, consult your sales representative.

In the sending of Contract SMS it is not necessary to contract a number; the system will take care of assigning a generic one from the pool of carrier numbers. To receive messages as a reply to normal SMS it is necessary to contract a number.

You can configure the requests to be received with basic authentication and in JSON or FORM format

Authorizations:
basicAuth
Request Body schema:

Parámetros recibidos en su script en petición POST con la configuración especificada en su panel de usuario/configuración API.

Servicio
required
string

Type of service the request is being received from. In this case it is always SMSRECIBIDO regardless of whether it is a reply to an SMS, Certified SMS, Contract SMS or a message originated from the client.

timestamp
required
integer

Unix TimeStamp of the moment the SMS message is received on the number.

Fecha
required
string

Date of reception sent by the carrier).

Movil
required
string

Mobile number that receives the message.

Remitente
required
string

Sender of the message, normally the mobile that sends the message.

Mensaje
required
string

Message received

idR
required
integer

identification of the original message if this is a reply to a sent one (internal identification);

idM
required
integer

Identification of the original message if this is a reply to a previously sent one. The idM matches the MsgId returned in the sending function.

EsCert
required
boolean

In case of being a reply to a previously sent message, it indicates whether the original message was certified (it would be a Contract SMS) or not.

Referencia
string

In case this message is a reply to a previously sent one, here you will receive the user reference of the message sent through the sending function

Request samples

Content type
{
  • "Servicio": "SMSRECIBIDO",
  • "timestamp": "1664795529",
  • "Fecha": "2020-12-03 11:14:24",
  • "Movil": "34600000000",
  • "Remitente": "MIEMPRESA",
  • "Mensaje": "MIEMPRESA",
  • "idR": "56399876",
  • "idM": "78334454",
  • "EsCert": "true",
  • "Referencia": "667887TR"
}

Cancel Certified SMS or Contract SMS

/CancelarSMSCERTIFICADO

Function to cancel a Certified SMS or Contract SMS previously scheduled through the sending function.

Authorizations:
basicAuth
query Parameters
Idmensaje
required
integer
Example: Idmensaje=1283876988

Identifier returned in the sending function.

Resp
string
Enum: "TXT" "JSON" "XML"
Example: Resp=JSON

Type of response to return as the result of the call.
ANT - (Deprecated). Kept for backward compatibility with previous versions
JSON - The response will be returned in JSON
XML - The response will be returned in XML
TXT - The response will be returned in Text format

Request Body schema:

Parameters are sent in the body of the POST request, either as a JSON object (Content-Type application/json, RECOMMENDED) or as an application/x-www-form-urlencoded form. In the form format, array or object parameters are sent as a JSON-encoded string. Parameter names are case-insensitive. The detailed description of each parameter is in the parameters section of this operation.

Idmensaje
required
integer
Resp
string

Responses

Response Schema:
Array
Res
required
integer <int32>

Response of the requested function


>0 Number of cancelled recipients.
-1 Authentication error.
-2 Incorrect data (You can only cancel your own identifiers; if you try to cancel message identifiers of another user, it could be considered an attack and limit the access of your connection).
-3 Error in the call data. Required parameters are missing. In this case, you will get an additional parameter called Error with the description of the error.
-4 The message is already sent/cannot be cancelled.
-5 The message is already cancelled/cannot be cancelled.

IDMENSAJE
integer

Number of the identifier of the message that was effectively cancelled.

CRED
required
double

Credits remaining in the user account after the cancellation.

CREDR
double

Credits recovered in the cancellation.

Request samples

Content type
{
  • "Idmensaje": "1283876988",
  • "Resp": "JSON"
}

Response samples

Content type
[
  • {
    }
]

Reschedule Certified SMS or Contract SMS when it was sent scheduled

/ReprogramarSMSCERTIFICADO

Function to reschedule a Certified SMS or a Contract SMS previously scheduled through the sending function to be processed in the future..

Authorizations:
basicAuth
query Parameters
Idmensaje
required
integer
Example: Idmensaje=1283876988

Identifier returned in the sending function.

Fecha
required
string
Example: Fecha=2022-12-03 11:15

New sending date. It is the date on which the message will be scheduled for sending. It must be after the current date/time. The format must be YYYY-MM-DD HH:mm

Resp
string
Enum: "TXT" "JSON" "XML"
Example: Resp=JSON

Type of response to return as the result of the call.
ANT - (Deprecated). Kept for backward compatibility with previous versions
JSON - The response will be returned in JSON
XML - The response will be returned in XML
TXT - The response will be returned in Text format

Request Body schema:

Parameters are sent in the body of the POST request, either as a JSON object (Content-Type application/json, RECOMMENDED) or as an application/x-www-form-urlencoded form. In the form format, array or object parameters are sent as a JSON-encoded string. Parameter names are case-insensitive. The detailed description of each parameter is in the parameters section of this operation.

Idmensaje
required
integer
Fecha
required
string
Resp
string

Responses

Response Schema:
Array
Res
required
integer <int32>

Response of the requested function


>0 Number of rescheduled messages.
-1 Authentication error.
-2 Incorrect data (You can only modify scheduled messages with identifiers sent from your account; if you try to modify message identifiers of another user, it could be considered an attack and limit the access of your connection).
-3 Error in the call data. Required parameters are missing. In this case, you will get an additional parameter called Error with the description of the error.
-4 The message is already sent/cannot be rescheduled.
-5 The message is cancelled/cannot be rescheduled.
-6 The new date is not correct.
-7 The new date has already passed.

Cred
required
double

Credits remaining in the user account.

Request samples

Content type
{
  • "Idmensaje": "1283876988",
  • "Fecha": "2022-12-03 11:15",
  • "Resp": "JSON"
}

Response samples

Content type
[
  • {
    }
]

Query and download Certified SMS or Contract SMS

/GetSMSCERTIFICADO

Function with multiple utilities:
1.- If the parameters idMensaje and Telefono are sent, the PDF file with the certificate of the message sent to a mobile through the API is obtained. This function is usually executed with these parameters as a response to a report reception with a certified status (example result 14 -delivered and certified- in Certified SMS and 17, 160 or 181 -contract signed/perfected and certified- in case of Contract SMS). A report and PDF are downloaded if the Telefono is specified
If only the idMensaje parameter is sent, the report of all recipients (certified PDF) is obtained.
3.- Finally, if neither idMensaje nor Telefono is sent but FechaInicio and FechaFin are sent, the PDFs of all the Certified SMS and Contract SMS sent between those two dates are obtained.

Authorizations:
basicAuth
query Parameters
Idmensaje
integer
Example: Idmensaje=1283876988

Identifier returned in the sending function.

Telefono
string
Example: Telefono=34601234567

Recipient mobile for which the certified PDF is to be obtained. If not specified, a list will be obtained with all the recipients of the message and their respective Certified PDFs.

Resp
string
Enum: "TXT" "JSON" "XML"
Example: Resp=JSON

Type of response to return as the result of the call.
ANT - (Deprecated). Kept for backward compatibility with previous versions
JSON - The response will be returned in JSON
XML - The response will be returned in XML
TXT - The response will be returned in Text format

Fechainicio
string
Example: Fechainicio=2023-01-01 00:00

If the Start and End dates are included, the certificates generated between those two dates will be obtained. ATTENTION: This function is designed to be used very sporadically, so the system will block continuous requests. It is recommended to download the PDF individually as a response to the status change callback.

Fechafin
string
Example: Fechafin=2023-01-02 00:00

If the Start and End dates are included, the certificates generated between those two dates will be obtained. ATTENTION: This function is designed to be used very sporadically, so the system will block continuous requests. It is recommended to download the PDF individually as a response to the status change callback.

Request Body schema:

Parameters are sent in the body of the POST request, either as a JSON object (Content-Type application/json, RECOMMENDED) or as an application/x-www-form-urlencoded form. In the form format, array or object parameters are sent as a JSON-encoded string. Parameter names are case-insensitive. The detailed description of each parameter is in the parameters section of this operation.

Idmensaje
integer
Telefono
string
Resp
string
Fechainicio
string
Fechafin
string

Responses

Response Schema:
string

Request samples

Content type
{
  • "Idmensaje": "1283876988",
  • "Telefono": "34601234567",
  • "Resp": "JSON",
  • "Fechainicio": "2023-01-01 00:00",
  • "Fechafin": "2023-01-02 00:00"
}

Response samples

Content type
In case of success, a zip file is downloaded. Content of the ZIP:
-  Certificates in PDF format
-  CSV file with the result of the certified message to each recipient.

Simple Query of Certified SMS Report

/GetReportSMSCERTIFICADO

Obtaining the report / status of a Certified SMS or Contract SMS identified by the idMensaje (message identifier) obtained in the sending function. It is recommended to use the report reception on your website since you will receive the status changes of the sent messages in real time. As you can send to more than one recipient, the result is received as an array of results depending on the chosen response.

Authorizations:
basicAuth
query Parameters
Idmensaje
required
integer
Example: Idmensaje=1283876988

Identifier returned in the sending function.

Resp
string
Enum: "TXT" "JSON" "XML"
Example: Resp=JSON

Type of response to return as the result of the call.
ANT - (Deprecated). Kept for backward compatibility with previous versions
JSON - The response will be returned in JSON
XML - The response will be returned in XML
TXT - The response will be returned in Text format

Request Body schema:

Parameters are sent in the body of the POST request, either as a JSON object (Content-Type application/json, RECOMMENDED) or as an application/x-www-form-urlencoded form. In the form format, array or object parameters are sent as a JSON-encoded string. Parameter names are case-insensitive. The detailed description of each parameter is in the parameters section of this operation.

Idmensaje
required
integer
Resp
string

Responses

Response Schema:
Array
Res
required
integer <int32>

Response of the requested function


1 Successful operation.
-1 Authentication error.
-2 You do not have permission to consult this message.
-3 Error in the call data. Required parameters are missing. In this case, you will get an additional parameter called Error with the description of the error.
-4 Error in response/You do not have permission to consult this message.

Destinatarios
required
integer

Number of recipients in the message.

Cred
double

Credits remaining in the user account.

Informe
required
Array of arrays

Array per recipient with the message data. The following parameters will be received:
Fecha Date of the report
Tiempo : Delivery time to recipient
Telefono : Phone that the report refers to
Resultado : Numeric result (see statuses in the report reception callback)
Estado : Text of the Result

Example: [{'Fecha':'2021-09-04 19:37:21','Tiempo':3,'Telefono':'34601234567','Resultado':14,'Estado':'Entregado y Certificado'},{'Fecha':'2021-09-04 19:37:27','Tiempo':3,'Telefono':'34656789012','Resultado':14,'Estado':'Entregado y Certificado'}]

Request samples

Content type
{
  • "Idmensaje": "1283876988",
  • "Resp": "JSON"
}

Response samples

Content type
[
  • {
    }
]

Upload a file to the library

/CargarFichero

Function for uploading to the user's file Library so that files can be attached in a later sending of Certified SMS or Contract SMS. ATTENTION There is a limit on the number of files and on the space used per customer. You can contact Support to increase it. In any case it is good practice to delete the file once it is no longer needed. The files are no longer necessary once the Certified PDF with the delivery or contracting result is generated, since they are kept in secure storage that does not affect the indicated quota and, therefore, can be safely deleted from the library from that moment on.
Likewise, the sendings of Contract SMS including the PDF as base 64 within the sending request, that is, including `(BASE64:2:base64contentofthePDF) within the text to be sent, do not affect this quota either since the system automatically deletes them from the library once the certified PDF is generated, remaining, as in the previous case, kept in each customer's individual secure space.

Authorizations:
basicAuth
query Parameters
Nombre
any
Example: Nombre=mifichero.pdf

Required only in case of Tipo=BASE64. Name, including the extension, with which the file will be renamed once uploaded. The names must include the extension and have a maximum of 15 characters (only letters and numbers).

Tipo
required
any
Example: Tipo=mifichero.pdf

How the file is sent. The possible values are FILES or BASE64.
FILES (Recommended), it is assumed that the file is sent as a normal xwww-form-urlencoded POST
BASE64 It expects to receive the content of the file in the Contenido variable encoded in Base64.

Contenido
any
Example: Contenido=JVBERi000000.............

Content of the file in Base64 if the Tipo is BASE64.

Autoborrado
any
Example: Autoborrado=Si

The user's file library has a storage and file number limit. A File is only necessary until the message is certified. Once the message is certified, the file is copied to a secure location for safekeeping so it is accessible by the recipient without needing to keep it in the user's library. If you want the system to automatically delete the file when certifying the message, enable this option. Do it only if the file is going to be used in a single Certified SMS/Contract.

Resp
string
Enum: "TXT" "JSON" "XML"
Example: Resp=JSON

Type of response to return as the result of the call.
ANT - (Deprecated). Kept for backward compatibility with previous versions
JSON - The response will be returned in JSON
XML - The response will be returned in XML
TXT - The response will be returned in Text format

Request Body schema:

Parameters are sent in the body of the POST request, either as a JSON object (Content-Type application/json, RECOMMENDED) or as an application/x-www-form-urlencoded form. In the form format, array or object parameters are sent as a JSON-encoded string. Parameter names are case-insensitive. The detailed description of each parameter is in the parameters section of this operation.

Nombre
string
Tipo
required
string
Contenido
string
Autoborrado
string
Resp
string

Responses

Response Schema:
Array
Res
required
integer <int32>

Response of the requested function.
1 Correct
-1 Authentication error.
-3 Error in the call data. Required parameters are missing. In this case, you will get an additional parameter called Error with the description of the error.
-10 You have exceeded your file storage capacity, contact support to request more space.
-11 File format not supported; PDF, Excel, Word and VCF are supported. In case of documents, PDF is recommended for maximum compatibility on phones.
-12 You indicated that you would send a file in BASE64 mode but you have not sent the content.
-13 You indicated that you would send a file in FILES mode and the content has not arrived.
-15 You must specify Tipo FILES or BASE64.
-16 File too large, consult support to increase limits.
-17 An error occurred while uploading the file.
-18 Trial accounts do not have file sending capability, contact support.

Nombre
string

The new name of the file is included. Only if Res=1.

Error
string

In case of Res -3, you will get a descriptive error of the problem in this parameter.

Cred
double

Credits remaining in the user account after the sending.

Request samples

Content type
{
  • "Nombre": "mifichero.pdf",
  • "Tipo": "mifichero.pdf",
  • "Contenido": "JVBERi000000.............",
  • "Autoborrado": "Si",
  • "Resp": "JSON"
}

Response samples

Content type
[
  • {
    }
]

List Files in Library

/ListarFicheros

Function to list the files in the user's library. It returns an array/list with the files within the user account.

Authorizations:
basicAuth
query Parameters
Resp
string
Enum: "TXT" "JSON" "XML"
Example: Resp=JSON

Type of response to return as the result of the call.
ANT - (Deprecated). Kept for backward compatibility with previous versions
JSON - The response will be returned in JSON
XML - The response will be returned in XML
TXT - The response will be returned in Text format

Request Body schema:

Parameters are sent in the body of the POST request, either as a JSON object (Content-Type application/json, RECOMMENDED) or as an application/x-www-form-urlencoded form. In the form format, array or object parameters are sent as a JSON-encoded string. Parameter names are case-insensitive. The detailed description of each parameter is in the parameters section of this operation.

Resp
string

Responses

Response Schema:
Array
Res
required
integer <int32>

Response of the requested function.
1 Correct
-1 Authentication error.
-3 Error in the call data. Required parameters are missing. In this case, you will get an additional parameter called Error with the description of the error.
-10 You have exceeded your file storage capacity, contact support to request more space.
-11 File format not supported; PDF, Excel, Word and VCF are supported. In case of documents, PDF is recommended for maximum compatibility on phones.
-12 You indicated that you would send a file in BASE64 mode but you have not sent the content.
-13 You indicated that you would send a file in FILES mode and the content has not arrived.
-15 You must specify Tipo FILES or BASE64.
-16 File too large, consult support to increase limits.
-17 An error occurred while uploading the file.
-18 Trial accounts do not have file sending capability, contact support.

Error
string

In case of Res -3, you will get a descriptive error of the problem in this parameter.

Ficheros
required
Array of arrays

Array with the list of documents. The following parameters will be received:
Fecha Date the file was uploaded to the library
Nombre : Name of the file
Ext : Extension of the file

Cred
double

Credits remaining in the user account after the sending.

Request samples

Content type
{
  • "Resp": "JSON"
}

Response samples

Content type
[
  • {
    }
]

Delete a file from the Library

/BorrarFichero

Function to delete a file from the user's Library. ATTENTION you should only delete a file when the service has already finished/the certificate has been created, in which case a copy will already have been saved in secure custody. Until that moment (creation of the Certified PDF with the result of the sending or contract) the file must be available in the user's library.

Authorizations:
basicAuth
query Parameters
Nombre
required
any
Example: Nombre=mifichero.pdf

Name of the file to delete.

Resp
string
Enum: "TXT" "JSON" "XML"
Example: Resp=JSON

Type of response to return as the result of the call.
ANT - (Deprecated). Kept for backward compatibility with previous versions
JSON - The response will be returned in JSON
XML - The response will be returned in XML
TXT - The response will be returned in Text format

Request Body schema:

Parameters are sent in the body of the POST request, either as a JSON object (Content-Type application/json, RECOMMENDED) or as an application/x-www-form-urlencoded form. In the form format, array or object parameters are sent as a JSON-encoded string. Parameter names are case-insensitive. The detailed description of each parameter is in the parameters section of this operation.

Nombre
required
string
Resp
string

Responses

Response Schema:
Array
Res
required
integer <int32>

Response of the requested function.
1 Correct
-1 Authentication error.
-2 The file does not exist.

Error
string

In case of Res -3, you will get a descriptive error of the problem in this parameter.

Cred
double

Credits remaining in the user account after the sending.

Request samples

Content type
{
  • "Nombre": "mifichero.pdf",
  • "Resp": "JSON"
}

Response samples

Content type
[
  • {
    }
]

Credits Query

/GetCreditos

Function that returns the number of credits in the account. It is a function of very sporadic use since most functions return in their responses the number of Credits remaining in the user. Therefore, it is usually used simply as a functionality test or to obtain the number of credits occasionally

Authorizations:
basicAuth
query Parameters
Resp
string
Enum: "TXT" "JSON" "XML"
Example: Resp=JSON

Type of response to return as the result of the call.
ANT - (Deprecated). Kept for backward compatibility with previous versions
JSON - The response will be returned in JSON
XML - The response will be returned in XML
TXT - The response will be returned in Text format

Request Body schema:

Parameters are sent in the body of the POST request, either as a JSON object (Content-Type application/json, RECOMMENDED) or as an application/x-www-form-urlencoded form. In the form format, array or object parameters are sent as a JSON-encoded string. Parameter names are case-insensitive. The detailed description of each parameter is in the parameters section of this operation.

Resp
string

Responses

Response Schema:
Array
Res
required
integer <int32>

Response of the requested function


1 The function concluded successfully.
-1 Authentication error.

Cred
required
double

Credits remaining in the user account after the sending.

Request samples

Content type
{
  • "Resp": "JSON"
}

Response samples

Content type
[
  • {
    }
]

Appendix 2 - Character Sets

You can use the standard GSM 3.38 alphabet (default) or the Unicode character set by sending Unicode=1 in the request

Unicode

It supports any character and even emojis can be added. You must enable Unicode=1 in the request. Carriers charge one SMS for up to 70 characters; if 70 characters are exceeded, one SMS is charged for every 67 characters.

GSM 3.38

The characters allowed in the message, if Unicode is not chosen, are those included in the GSM 3.38 standard (standard SMS alphabet). You must keep in mind that the € takes up two characters (it is sent as a combination of two) and that the closed accents (tildes) are not in the standard (except for the é), so if they are included, they will be changed to the most similar character.

The characters allowed in the standard are included in the table below; those in the extension table (further to the right) take up two characters and those in the first one (Basic on the left) take up 1 character.

For the sender we advise you:

1.- Only numbers (a mobile or landline in international format, e.g. +34600000000) up to 15 digits

2.- Only letters, numbers, & and underscore character up to 11 characters. E.g. MiRemitente