Este servicio tiene como función permitir realizar una Autorización, tanto con Token como enviando los datos de la Tarjeta.

Ambiente

EndPoint

Método

Desarrollo

https://api.dev.alignet.io/charges

POST

Producción

https://api.alignet.io/charges

POST

Headers

Cabecera

Valor

Requerido

Content-Type

application/json

SI

ALG-API-VERSION

Versión del API a utilizar. Valores disponibles:

1618440906

 

Authorization

Bearer <Access_Token>

SI

"Content-Type":"application/json",
"ALG-API-VERSION":"1618440906",
"Authorization":"Bearer yJhbGciOiJSUzI1NsInR5cCI6IkpXVCIsImt………",
JSON

Request

Parámetro

Tipo

Long.

Descripción

Req.

action

Cadena

(AN)

-

La intención del comercio. En este caso es "authorize"

SI

channel

Cadena

(N)

3

El canal del cual proviene la petición. En este caso:

1 = eCommerce (“Card” o “Token + CVV”)

3 = Card on File (solo “Token”)

SI

payment_method.token.id

Cadena

(AN)

25

El identificador del token que se quiere utilizar.

No es obligatorio en caso se envié el objeto “Card”

SI

payment_method.token.security_code

Cadena

(AN)

4

Código de seguridad de la tarjeta asociada al Token. Solo es Obligatorio en caso que Channel sea 1.

-

payment_method.card.pan

Cadena

(N)

20

Numero de la tarjeta.

No es obligatorio en caso se envié el objeto “Token”.

-

payment_method.card.expiry_date

Cadena

(N)

4

Fecha de expiración de la tarjeta, en formato MMYY.

No es obligatorio en caso se envié el objeto “Token”.

-

payment_method.card.security_code

Cadena

(N)

4

Código de seguridad de la tarjeta. En caso que Channel sea 3 enviar 000.

No es obligatorio en caso se envié el objeto “Token”.

-

transaction.currency

Cadena

(AN)

3

Código numérico de moneda en formato ISO 4217

SI

transaction.amount

Cadena

(N)

15

Monto de la transacción en centavos de moneda, tomando en cuenta que consideramos las 5 últimas posiciones como la parte decimal del monto.

SI

transaction.meta.internal_operation_number

Cadena

(N)

9

El número de operación interno del cliente. Este puede ser el número de pedido u otro que considere el cliente como importante.

SI

transaction.meta.description

Cadena

(AN)

50

Descripción de la transacción.

NO

transaction.meta.additional_fields

Cadena

(AN)

-

En este objeto se insertan campos que el cliente crea importantes. Estos campos son determinados y configurados por el cliente.

NO

transaction.meta.additional_fields.plan

Cadena

(N)

5

Valor correspondiente al plan.

NO

transaction.meta.additional_fields.cuota

Cadena

(N)

5

Valor correspondiente a la cuota

NO

address.shipping.id

Cadena

(AN)

50

El id de un objeto dirección previamente retornado. Se genera un nuevo id de dirección a cada vez que se genera una nueva dirección.

NO

address.shipping.first_name

Cadena

(AN)

50

El nombre asociado a la dirección

NO

address.shipping.last_name

Cadena

(AN)

50

El apellido asociado a la dirección

NO

address.shipping.email

Cadena

(AN)

60

El correo electrónico asociado a la dirección

NO

address.shipping.phone.country_code

Cadena

(AN)

5

El código de país asociado al número de teléfono de la dirección

NO

address.shipping.phone.subscriber

Cadena

(AN)

20

El número de teléfono asociado a la dirección

NO

address.shipping.location.line_1

Cadena

(AN)

50

La parte principal de la dirección, asociado a la dirección

NO

address.shipping.location.line_2

Cadena

(AN)

50

El complemento de información de la dirección, asociado a la dirección

NO

address.shipping.location.city

Cadena

(AN)

30

La ciudad asociada a la dirección

NO

address.shipping.location.state

Cadena

(AN)

30

El estado asociado a la dirección

NO

address.shipping.location.country

Cadena (AN)

2

El código ISO 3166-1 alfa-2 de país asociado a la dirección

NO

address.shipping.location.zip_code

Cadena

(AN)

10

El código postal asociado a la dirección

NO

address.billing.id

Cadena

(AN)

50

El id de un objeto dirección previamente retornado. Se genera un nuevo id de dirección a cada vez que se genera una nueva dirección.

NO

address.billing.first_name

Cadena

(AN)

50

El nombre asociado a la dirección

SI

address.billing.last_name

Cadena

(AN)

50

El apellido asociado a la dirección

SI

address.billing.email

Cadena

(AN)

60

El correo electrónico asociado a la dirección

SI

address.billing.phone.country_code

Cadena

(AN)

5

El código de país asociado al número de teléfono de la dirección

SI

address.billing.phone.subscriber

Cadena

(AN)

20

El número de teléfono asociado a la dirección

SI

address.billing.location.line_1

Cadena

(AN)

50

La parte principal de la dirección, asociado a la dirección

SI

address.billing.location.line_2

Cadena

(AN)

50

El complemento de información de la dirección, asociado a la dirección

SI

address.billing.location.city

Cadena

(AN)

30

La ciudad asociada a la dirección

SI

address.billing.location.state

Cadena

(AN)

30

El estado asociado a la dirección

SI

address.billing.location.country

Cadena (AN)

2

El código ISO 3166-1 alfa-2 de país asociado a la dirección

SI

address.billing.location.zip_code

Cadena

(AN)

10

El código postal asociado a la dirección

SI

card_holder.first_name

Cadena

(AN)

50

Nombre del tarjetahabiente

Si

card_holder.last_name

Cadena

(AN)

50

Apellido del tarjetahabiente

Si

card_holder.email_address

Cadena

(AN)

60

Correo del tarjetahabiente

Si

card_holder.identity_document_country

Cadena

(AN)

50

País del documento de identidad del tarjetahabiente

Si

card_holder.identity_document_type

Cadena

(AN)

30

Tipo de documento de identidad del tarjetahabiente

Si

card_holder.identity_document_identifier

Cadena

(AN)

20

Numero de documento de identidad del tarjetahabiente

Si

1️⃣ Ejemplo: Autorización con Channel 3 enviando solo Token (Card on File)

{
    "action": "authorize",
    "channel": "3",
    "payment_method": {
        "token": [ { "id": "822a-748e-3z9h-0051" } ]
    },
    "transaction": {
        "currency": "604",
        "amount": "1000000",
        "meta": {
            "internal_operation_number": "123456",
            "description": "Descripcion de la transaccion",
            "additional_fields": {
                "reserved1": "Ejemplo valor reservado 1",
                "2": "Ejemplo valor reservado 2",
                "plan": "00",
                "cuota": "005"
            }
        }
    },
    "address": {
        "billing": {
            "first_name": "Juan Diego",
            "last_name": "Perez Sanchez",
            "email": "juan.perez@gmail.com",
            "phone": { "country_code": "51", "subscriber": "987654321" },
            "location": {
                "line_1": "Mi casa",
                "line_2": "Mi casa",
                "city": "LIMA",
                "state": "LIMA",
                "country": "PE",
                "zip_code": "18"
            }
        }
    },
    "card_holder": [
        {
            "first_name": "Juan Diego",
            "last_name": "Perez Sanchez",
            "email_address": "juan.perez@email.com",
            "identity_document_country": "PER",
            "identity_document_type": "DNI",
            "identity_document_identifier": "87654321"
        }
    ]
}
JSON

2️⃣ Ejemplo: Autorización con Channel 1 enviando Token más CVV (eCommerce)

{
   "action":"authorize",
   "channel":"1",
   "payment_method":{
      "token":[
         {
            "id":"822a-748e-3z9h-0051",
            "security_code":"123"
         }
      ]
   },
   "transaction":{
      "currency":"604",
      "amount":"1000000",
      "meta":{
         "internal_operation_number":"123456",
         "description":"Descripcion de la transaccion"
      }
   },
   "address":{
      "billing":{
         "first_name":"Juan Diego",
         "last_name":"Perez Sanchez",
         "email":"juan.perez@gmail.com",
         "phone":{ "country_code":"51", "subscriber":"987654321" },
         "location":{
            "line_1":"Mi casa",
            "line_2":"Mi casa",
            "city":"LIMA",
            "state":"LIMA",
            "country":"PE",
            "zip_code":"18"
         }
      }
   },
   "card_holder":[
      {
         "first_name":"Juan Diego",
         "last_name":"Perez Sanchez",
         "email_address":"juan.perez@email.com",
         "identity_document_country":"PER",
         "identity_document_type":"DNI",
         "identity_document_identifier":"87654321"
      }
   ]
}
JSON

3️⃣ Ejemplo: Autorización con Channel 1 enviando datos de la Tarjeta (eCommerce)

{ 
   "action":"authorize",
   "channel":"1",
   "payment_method":{ 
      "card":[ { 
            "pan":"4859510000000051",
            "expiry_date":"1220",
            "security_code":"365"
         } ]
   },
   "transaction":{ 
      "currency":"604",
      "amount":"1000000",
      "meta":{ 
         "internal_operation_number":"123456",
         "description":"Descripcion de la transaccion",
         "additional_fields":{ 
            "reserved1":"Ejemplo valor reservado 1",
            "2":"Ejemplo valor reservado 2",
            "plan":"00",
            "cuota":"005"
         }
      }
   },
   "address":{ 
      "billing":{ 
         "first_name":"Juan Diego",
         "last_name":"Perez Sanchez",
         "email":"juan.perez@gmail.com",
         "phone":{ "country_code":"51", "subscriber":"987654321" },
         "location":{ 
            "line_1":"Mi casa",
            "line_2":"Mi casa",
            "city":"LIMA",
            "state":"LIMA",
            "country":"PE",
            "zip_code":"18"
         }
      }
   },
   "card_holder":[ 
      { 
         "first_name":"Juan Diego",
         "last_name":"Perez Sanchez",
         "email_address":"juan.perez@email.com",
         "identity_document_country":"PER",
         "identity_document_type":"DNI",
         "identity_document_identifier":"87654321"
      }
JSON

Response

Parámetro

Descripción

action

Proceso realizado, en este caso es " authorize "

id

Identificador de la transacción asignado por Alignet.

success

True en caso que la petición sea satisfactoria o False en caso contrario.

transaction.currency

Código numérico de moneda en formato ISO 4217

transaction.amount

Monto de la transacción en centavos de moneda, tomando en cuenta que consideramos las 5 últimas posiciones como la parte decimal del monto.

transaction.meta.internal_operation_number

El número de operación interno del cliente. Este puede ser el número de pedido u otro que considere el cliente como importante.

transaction.meta.description

Descripción de la transacción.

transaction.meta.processor.authorization.code

Código de autorización de la procesadora

transaction.meta.additional_fields

En este objeto se devuelven los campos que el cliente definió. Estos campos son determinados y configurados por el cliente.

transaction.meta.status.code

Código asociado al estado de la operación

transaction.meta.status.message_ilgn.locale

Locale en la cual está escrito el mensaje.

transaction.meta.status.message_ilgn.value

Valor del mensaje textual

validations

En este objeto se devuelven los resultados de las validaciones realizadas.

{
    "action": "authorize",
    "id": "500114",
    "success": "true",
    "transaction": {
        "currency": "604",
        "amount": "1000000",
        "meta": {
            "internal_operation_number": "500114",
            "description": "Descripcion de la transaccion",
            "processor": {
                "authorization": {
                    "code": "191046"
                }
            },
            "additional_fields": {
                "2": "Ejemplo valor reservado 2",
                "reserved1": "Ejemplo valor reservado 1"
            },
            "status": {
                "code": "00",
                "message_ilgn": [
                    {
                        "locale": "es_PE",
                        "value": "Operacion Autorizada"
                    }
                ]
            }
        }
    },
    "validations": null,
    "token": null
}
JSON