Inscribir un autopago

Para que tu cliente inscriba un autopago, tu servidor solicita un token a PAR con los datos del servicio y del cliente, y luego su navegador presenta ese token a PAR para iniciar la sesión.

Solicitar el token

POST {URL_BASE}/restpatpass/v1/services/patInscription

La petición se autentica con los headers Authorization y Commercecode, como se explica en Autenticación.

Campos obligatorios

  • Name
    commerceCode
    Type
    string
    is Required
    REQUERIDO
    Description

    El código de comercio de tu sitio. Debe ser idéntico al que envías en el header Commercecode.

  • Name
    url
    Type
    string
    is Required
    REQUERIDO
    Description

    URL de retorno. PAR envía al tarjetahabiente a esta dirección al terminar la inscripción. Debe ser una URL pública.

  • Name
    finalUrl
    Type
    string
    is Required
    REQUERIDO
    Description

    URL final. PAR envía al tarjetahabiente a esta dirección cuando sale del comprobante del autopago. Debe ser una URL pública.

  • Name
    correoPersona
    Type
    string
    is Required
    REQUERIDO
    Description

    Correo electrónico del tarjetahabiente. Si ya tiene una cuenta en PAR con ese correo, la sesión se abre con su cuenta.

  • Name
    serviceId
    Type
    string
    is Required
    REQUERIDO
    Description

    Identificador del servicio que se cobrará, por ejemplo el número de contrato o de cliente. Máximo 32 caracteres. La persona no puede tener otro autopago activo con el mismo identificador en tu sitio.

Campos opcionales

Estos campos prellenan el formulario de inscripción, para que el tarjetahabiente no tenga que escribirlos.

  • Name
    rut
    Type
    string
    is optional
    Description

    Documento de identidad del tarjetahabiente. Máximo 10 caracteres.

  • Name
    nombre
    Type
    string
    is optional
    Description

    Nombre del tarjetahabiente. Máximo 60 caracteres.

  • Name
    pApellido
    Type
    string
    is optional
    Description

    Primer apellido del tarjetahabiente. Máximo 60 caracteres.

  • Name
    sApellido
    Type
    string
    is optional
    Description

    Segundo apellido del tarjetahabiente. Máximo 60 caracteres.

  • Name
    montoMaximo
    Type
    number
    is optional
    Description

    Monto máximo que el autopago podrá cobrar. Debe ser mayor o igual a cero.

  • Name
    telefonoCelular
    Type
    string
    is optional
    Description

    Teléfono celular del tarjetahabiente. Máximo 50 caracteres. Si no es un número de teléfono válido, PAR lo ignora.

  • Name
    telefonoFijo
    Type
    string
    is optional
    Description

    Teléfono fijo del tarjetahabiente. Máximo 50 caracteres. Si no es un número de teléfono válido, PAR lo ignora.

  • Name
    nombrePatPass
    Type
    string
    is optional
    Description

    Nombre con el que el tarjetahabiente reconocerá el autopago. Máximo 100 caracteres.

  • Name
    correoComercio
    Type
    string
    is optional
    Description

    Correo de contacto del comercio. Máximo 100 caracteres.

  • Name
    direccion
    Type
    string
    is optional
    Description

    Dirección asociada a la inscripción. Máximo 100 caracteres.

  • Name
    ciudad
    Type
    string
    is optional
    Description

    Ciudad asociada a la inscripción. Máximo 100 caracteres.

Ejemplo

Solicitud

POST
/restpatpass/v1/services/patInscription
curl --request POST \
  --url '{URL_BASE}/restpatpass/v1/services/patInscription' \
  --header 'Accept: application/json' \
  --header 'Content-Type: application/json' \
  --header 'Authorization: {TU_LLAVE_SECRETA}' \
  --header 'Commercecode: 1234567890' \
  --data '{
    "commerceCode": "1234567890",
    "url": "https://www.example.com/par/return",
    "finalUrl": "https://www.example.com/par/final",
    "correoPersona": "[email protected]",
    "serviceId": "CONTRACT-0001",
    "rut": "11111111-1",
    "nombre": "John",
    "pApellido": "Doe",
    "montoMaximo": 50000,
    "telefonoCelular": "+56912345678",
    "nombrePatPass": "Plan mensual"
  }'

Respuesta

Si la solicitud es válida, PAR responde 200 con el token y la URL de inicio de sesión:

Respuesta

{
  "token": "{TOKEN}",
  "url": "{URL_BASE}/restpatpass/login"
}
  • Name
    token
    Type
    string
    is Required
    REQUERIDO
    Description

    Token de un solo uso con el que el tarjetahabiente iniciará la sesión. Consérvalo: lo necesitarás para la consulta de estado y el comprobante.

  • Name
    url
    Type
    string
    is Required
    REQUERIDO
    Description

    URL de inicio de sesión a la que debes enviar el token desde el navegador del tarjetahabiente.

Si algún dato no es válido, PAR responde con un código de error que señala el campo, como se describe en Errores. Cada respuesta informa un solo campo; corrígelo y vuelve a solicitar el token.

Iniciar la sesión

Con el token, envía al tarjetahabiente a la url de la respuesta mediante un formulario POST desde su navegador, con el token en el campo tokenComercio. Puedes hacerlo en una ventana completa o dentro de un iframe, si el origen de tu sitio está autorizado para tu comercio.

Formulario

<form method="post" action="{URL_BASE}/restpatpass/login">
  <input type="hidden" name="tokenComercio" value="{TOKEN}" />
  <button type="submit">Inscribir autopago</button>
</form>

PAR consume el token y lleva al tarjetahabiente a inscribir el autopago, con los datos que enviaste ya cargados. Si la persona ya tiene una cuenta en PAR, inscribe el autopago desde ella; si no, puede inscribirlo sin crear una cuenta.

Si el token no es válido, PAR responde 403. Si el inicio de sesión falla por otra causa, PAR muestra al tarjetahabiente una página de error.

Recibir el retorno

Cuando el tarjetahabiente termina, PAR envía un formulario POST a tu url de retorno con el token en el campo j_token:

POST https://www.example.com/par/return
Content-Type: application/x-www-form-urlencoded

j_token={TOKEN}

El retorno solo indica que el tarjetahabiente volvió a tu sitio. Para saber si el autopago quedó inscrito, consulta el estado con ese token desde tu servidor, como se explica en Consultar el estado.