Botón de pago e-Commerce
Módulo de integración del boton de pago e-Commerce
1 Transacción de pago
1.1 Descripción
Una transacción de pago corresponde a la solicitud de autorización de pago con Amipass, en donde quien realiza el pago, ingresa al sitio eCommerce, selecciona uno o mas productos, y el ingreso de los datos de pago, lo realiza de forma segura en el Botón de Pago de Amipass.
El flujo de páginas para la transacción es el siguiente:

1.2 Secuencia de pago
A continuación, se muestra el flujo que corresponde a la secuencia de pago entre el comercio socio de Amipass, comercio electrónico y botón de pago Amipass.
• El comercio inicia una transacción de pago, invocando el método de inicio de transacción.
• Botón de pago Amipass procesa el requerimiento y entrega como resultado de la operación el token de transacción y la url de redireccionamiento.
• Comercio redirecciona al botón de pago, con la URL generada al iniciar la transacción.
• El navegador Web realiza una petición HTTPS a botón de pago Amipass, en base al redireccionamiento generado.
• Botón de pago responde a la solicitud HTTPS desplegando el formulario de pago HTML, previa validación del token de inicio de transacción. Desde este punto, la comunicación es entre botón de pago y el cliente Amipass, sin interferir el comercio. El formulario de pago de Amipass despliega entre otras cosas el monto de la transacción.
• El usuario Amipass ingresa los datos de pago, código QR generado a través de la app amiPass y Rut del usuario, luego presiona el botón pagar en el formulario.
• Botón de pago procesa la solicitud de autorización (Se transfiera la petición al autorizador del BackOffice)
• Una vez resuelta la autorización, Botón de pago despliega la página de éxito o de error según sea el caso, luego retorna el control al comercio, a la url de éxito o de fracaso, realizando un redireccionamiento HTTP/HTTPS hacia la página de transición del comercio, en donde se envía por método POST la información de pago que entrego el autorizador al aceptar la transacción.
2 Método de implementación
A continuación, se detalla por tabla los métodos necesarios para el funcionamiento del botón de pago Amipass.
| Ambiente | URL |
|---|---|
| PRODUCCION | https://ecommerce.amipass.com/ |
| INTEGRACION | https://intecommerce.amipassqa.com/ |
2.1 Api de Integración: Inicio de transacción de pago
{
"usuarioPay": 1028909,
"idLocal": 909,
"idPedido": "14234561234511167",
"monto": 1,
"urlExito": "http://www.tucomercio.cl/success",
"urlFracaso": "http://www.tucomercio.cl/error",
"typePay": "Decrypt",
"rut": "12412878-1",
"email": "alvgutierr@gmail.com"
}
curl --location 'https://intecommerce.amipassqa.com/API_Ecommerce/ServicesInit/toInit' \
--header 'Authorization: Basic 1028901' \
--header 'Content-Type: application/json' \
--data-raw '{
"usuarioPay": 1028909,
"idLocal": 909,
"idPedido": "14234561234511167",
"monto": 1051,
"urlExito": "http://www.tucomercio.cl/success",
"urlFracaso": "http://www.tucomercio.cl/error",
"typePay": "Decrypt",
"rut": "12412878-1",
"email": "alvgutierr@gmail.com"
}'
| URL | https://{AMBIENTE}/API_Ecommerce/ServicesInit/toInit |
| Method | POST |
| Headers HTTP | Content-Type: application/json Authorization: < Dato entregado por Amipass > |
Body HTTP
| Parametros de entrada request | |
|---|---|
| usuarioPay | Dato entregado por Amipass |
| idLocal | Dato entregado por Amipass, (Código Sucursal Pay) |
| idPedido | Numero de pedido del e-commerce (Parámetro comercio) |
| monto | Monto para pagar utilizando Amipass (Parámetro comercio) |
| urlExito | Url donde se debe redirigir luego de un pago exitoso (Parámetro comercio) |
| urlFracaso | Url donde se debe redirigir luego de un pago error (Parámetro comercio) |
| typePay | Si utiliza encriptación para el monto |
| rut | Rut usuario que está realizando la compra en el sitio del comercio (Parámetro comercio, opcional) |
| Email usuario que está realizando la compra en el sitio del comercio (Parámetro comercio, opcional) | |
| sToken | sToken este parametro se usa para diferenciar ventas cuando tienes mas de un canal de pago, amipass lo proporciona si lo necesitas (Parámetro comercio, opcional) |
| Parametros de salida request | |
|---|---|
| url | Url destino aplicación web para realizar pago |
| token | Dato entregado por Amipass al iniciar una transacción |
| idpayment | Dato entregado por Amipass al iniciar una transacción |
| ts | Marca de tiempo que se puede utilizar como referencia interna |
Ejemplo
| Request | |
|---|---|
| { "usuarioPay": 1028909, "idLocal": 909, "idPedido": "14234561234511167", "monto": 1, "urlExito": "http://www.tucomercio.cl/success", "urlFracaso": "http://www.tucomercio.cl/error", "typePay": "Decrypt", "rut": "12412878-1", "email": "alvgutierr@gmail.com" } |
| Response | |
|---|---|
| { "url": "https://intecommerce.amipassqa.com/wButton/?token=02D5F65E6FF8285A2460C3920CECE3767070A6E30A7125637575178C50557D831585582580&idpayment=67&key=dG90dHVzOjEwMjg5MDc=", "token": "02D5F65E6FF8285A2460C3920CECE3767070A6E30A7125637575178C50557D831585582580", "idpayment": 67, "ts": 1585582580 } |
Ejemplo con sToken
| Request | |
|---|---|
| { "usuarioPay": 1028909, "idLocal": 909, "idPedido": "14234561234511167", "monto": 1, "urlExito": "http://www.tucomercio.cl/success", "urlFracaso": "http://www.tucomercio.cl/error", "typePay": "Decrypt", "rut": "12412878-1", "email": "alvgutierr@gmail.com" "sToken": "VND0QRAMIEMP" } |
| Response | |
|---|---|
| { "url": "https://intecommerce.amipassqa.com/wButton/?token=02D5F65E6FF8285A2460C3920CECE3767070A6E30A7125637575178C50557D831585582580&idpayment=67&key=dG90dHVzOjEwMjg5MDc=", "token": "02D5F65E6FF8285A2460C3920CECE3767070A6E30A7125637575178C50557D831585582580", "idpayment": 67, "ts": 1585582580 } |
2.2 Api de Integración: Validación
https://ecommerce.amipass.com/API_Ecommerce/ServicesValid/toValid?token=F78B55625&idpayment=36&idPedido=12345678
| URL | https://{AMBIENTE}/API_Ecommerce/ServicesValid/toValid |
| Method | GET |
| Headers HTTP | Authorization: < Dato entregado por Amipass > |
Parametros URL
| Parametros de entrada request | |
|---|---|
| token | Dato entregado por Amipass al iniciar una transacción |
| idpayment | Dato entregado por Amipass al iniciar una transacción |
| idEstablecimiento | Identificador del comerciode largo 5 entregado por Amipass |
| idLocal | Identificador del local en el cual se realizó la transacción entregado por Amipass, es de largo 3 |
| Parametros de salida request | |
|---|---|
| idComercio | Identificador del comerciode largo 5 entregado por Amipass |
| idAuthz | Numero de autorización de la transacción |
| monto | Monto autorizado por Amipass |
| FechaTrx | Fecha y hora de la transacción |
| Estado | Estados: APROBADA – ANULADA – RECHAZADA - NO_VALID |
Ejemplo
| Request | |
|---|---|
| GET | https://ecommerce.amipass.com/API_Ecommerce/ServicesValid/toValid?token=105EE420B76914E054B26FE2240EB67E3A9962FFBA3C88B06B1DAE676CDB06391681335748&idpayment=120320&idEstablecimiento=10289&idLocal=909 |
| Response | |
|---|---|
| { "idComercio": 10289, "IdAuthz": 167419, "Monto": 34000, "FechaTrx": "2023-04-12T17:45:29.987", "Estado": "APROBADA" } |
2.3 Api de Integración: Servicio de Anulación
{
"NumeroTransaccion": "202711",
"Rut": "124128781",
"UsuarioPay": "1028909",
"codLocal": "909",
"monto": 1047,
"codPromocion": ""
}
curl --location --request PUT 'https://intecommerce.amipassqa.com/API_Ecommerce/ServicesNullify/toNullify' \
--header 'Authorization: Basic 1028901' \
--header 'Content-Type: application/json' \
--data '{
"NumeroTransaccion": "202711",
"Rut": "124128781",
"UsuarioPay": "1028909",
"codLocal": "909",
"monto": 1047,
"codPromocion": ""
}'
| URL | https://{AMBIENTE}/API_Ecommerce/ServicesNullify/toNullify |
| Method | PUT |
| Headers HTTP | Content-Type: application/json Authorization: < Dato entregado por Amipass > |
Body HTTP
| Parametros de entrada request | |
|---|---|
| NumeroTransaccion | Número de autorización de la transacción a anular. (Numérico, largo máximo 20) |
| Rut | Rut del cliente que desea anular la compra. El RUT debe incluir el digito verificador y no incluir puntos ni guion Ej:144860908 (Alfanumérico, largo máximo 10) |
| UsuarioPay | Dato entregado por Amipass |
| codLocal | Código proporcionado por Amipass que hace único para el local. (Alfanumérico, largo máximo 20). En la plataforma Amipass corresponde al campo “CODIGO SUCURSAL PAY” |
| monto | Monto a anular utilizando Amipass (Parámetro comercio) |
| codPromocion | [opcional] Codigo de la promocion aplicada en la compra |
| Parametros de salida request | |
|---|---|
| CodRespuesta | Codigo de estado de anulación |
| DesRespuesta | Texto de descripcion de la ejecucion de la anulacion |
| CodAutorizacion | Codigo de transaccion de anulacion |
| Fecha | fecha de transaccion de anulacion ["DD-MM-YYYY HH:MM:SS"] |
| Monto | Monto de la transaccion |
| Saldo | Saldo del usuario posterior a la anulacion |
Ejemplo
Header:
| Parámetros | Valor |
|---|---|
| Content-type | application/json |
| Authorization | dG90dHVzOjEwMjg5MDc= |
| Request | |
|---|---|
| { "NumeroTransaccion": "202711", "Rut": "124128781", "UsuarioPay": "1028909", "codLocal": "909", "monto": 1047, "codPromocion": "" } |
| Response | |
|---|---|
| { "CodRespuesta": "1", "DesRespuesta": "Aprobada", "CodAutorizacion": "202711", "Fecha": "22-03-2024 10:51:20", "Monto": "1047", "Saldo": null } |
2.4 Api de Integración: Servicio de Reversa
{
"usuarioPay": 1028909,
"idLocal": 909,
"idPedido": "14234561234511167",
"monto": 1051,
"urlExito": "http://www.tucomercio.cl/success",
"urlFracaso": "http://www.tucomercio.cl/error",
"typePay": "Decrypt",
"rut": "12412878-1",
"email": "alvgutierr@gmail.com"
}
curl --location 'https://intecommerce.amipassqa.com/API_Ecommerce/ServicesReverse/toReverse' \
--header 'Authorization: Basic 1028901' \
--header 'Content-Type: application/json' \
--data-raw '{
"usuarioPay": 1028909,
"idLocal": 909,
"idPedido": "14234561234511167",
"monto": 1051,
"urlExito": "http://www.tucomercio.cl/success",
"urlFracaso": "http://www.tucomercio.cl/error",
"typePay": "Decrypt",
"rut": "12412878-1",
"email": "alvgutierr@gmail.com"
}'
| URL | https://{AMBIENTE}/API_Ecommerce/ServicesReverse/toReverse |
| Method | POST |
| Headers HTTP | Content-Type: application/json Authorization: < Dato entregado por Amipass > |
Body HTTP
| Parametros de entrada request | |
|---|---|
| usuarioPay | Dato entregado por Amipass |
| idLocal | Dato entregado por Amipass, (Código Sucursal Pay) |
| idPedido | Numero de pedido del e-commerce (Parámetro comercio) |
| monto | Monto para pagar utilizando Amipass (Parámetro comercio) |
| urlExito | Url donde se debe redirigir luego de un pago exitoso (Parámetro comercio) |
| urlFracaso | Url donde se debe redirigir luego de un pago error (Parámetro comercio) |
| typePay | Si utiliza encriptación para el monto |
| rut | Rut usuario que está realizando la compra en el sitio del comercio (Parámetro comercio, opcional) |
| Email usuario que está realizando la compra en el sitio del comercio (Parámetro comercio, opcional) |
| Parametros de salida request | |
|---|---|
| CodRespuesta | Codigo de estado de anulación |
| DesRespuesta | Texto de descripcion de la ejecucion de la anulacion |
| CodAutorizacion | Codigo de transaccion de anulacion |
| Fecha | fecha de transaccion de anulacion ["DD-MM-YYYY HH:MM:SS"] |
| Monto | Monto de la transaccion |
| Saldo | Saldo del usuario posterior a la anulacion |
Ejemplo
Header:
| Parámetros | Valor |
|---|---|
| Content-type | application/json |
| Authorization | dG90dHVzOjEwMjg5MDc= |
| Request | |
|---|---|
| { "usuarioPay": 1028909, "idLocal": 909, "idPedido": "14234561234511167", "monto": 1051, "urlExito": "http://www.tucomercio.cl/success", "urlFracaso": "http://www.tucomercio.cl/error", "typePay": "Decrypt", "rut": "12412878-1", "email": "alvgutierr@gmail.com" } |
| Response | |
|---|---|
| { "CodRespuesta": "1", "DesRespuesta": "Aprobada", "CodAutorizacion": "", "Fecha": "22-03-2024 10:53:59", "Monto": "1051", "Saldo": "6327552" } |
3 Como generar un código QR
1. Ingrese a: https://intsocios.amipassqa.com/login.aspx
◦ Usuario/RUT: 12412878-1/ clave: 2019
2. En el menú de la izquierda seleccione la opción “Modo móvil”
3. Ingrese a la opción “Pago Smartphone”
4. Ingrese monto (Ej. 100)
5. Ingrese clave: 1674
6. La aplicación mostrará el código QR que necesitamos para realizar el Pago, junto con el usuario (RUT):

Integracion con cajas y totem
La API de Amipass es un conjunto de interfaces HTTP para integrar el punto de venta comercio con AMIPASS. Las API reciben los parámetros de entrada por medio de método GET y la respuesta es en formato JSON.
Vías de Acceso
Ambiente productivo
| Ambiente | URL |
|---|---|
| URL | https://pay.amipass.com/wspay/XXXXXXX |
| Autenticacion | Tipo: Basica |
| token: *Solicitar |
Ambiente Integración
| Ambiente | URL |
|---|---|
| URL | https://intpay.amipassqa.com/wspay/XXXXXXX |
| Autenticacion | Tipo: Basica |
| token: *Solicitar |
- El Token es individual por razón social del comercio
- Cada local debe tener un código identificador
Venta
Permite realizar una venta basada en un monto pre aprobado por el cliente.
El cliente comienza el pago desde su APP de Amipass en su Smartphone:
1. Ingresa a Pago Smartphone
2. Ingresa monto
3. Ingresa su clave de pago
4. La aplicación genera un código y su representación en QR
El código es ingresado al punto de venta (por lectura de QR o digitado) por parte del cajero.
5. El punto de venta se conecta a la API Amipass para solicitar la aprobación de la transacción.

PAYPAP
{
'CodRespuesta':'1',
'DesRespuesta':'APROBADO',
'CodAutorizacionz':'5270496',
'Fecha':'2016-09-06 17:05:04.210',
'Monto':'1000',
'TokenAN':'465464'
}
Llamada
| URL | https://{AMBIENTE}/wspay/PAYPAP |
| Method | POST |
| Headers HTTP | Content-Type: application/json Authorization: < Dato entregado por Amipass > |
Parametros de entrada
| Parametro | Descripción |
|---|---|
| NumeroTransaccion | Corresponde a un código entregado por el cliente con el cual está autorizando el pago de un monto, debe ser un numero unico. (Numérico, largo máximo 20) |
| Monto | Monto que está cobrando el comercio. (Numérico, largo máximo 7) |
| CodLocal | Código proporcionado por Amipass que hace único para el comercio (Alfanumérico, largo máximo 20) |
| CodPromociom | Código de la promoción asociada a la venta. En el caso de no tener una promoción asociada enviar el valor en blanco |
| CodCupon | Código de cupón personalizado o masivo que aplica a la venta. En el caso de no tener un cupón asociado enviar el valor en blanco |
| Npos | Numero de identificación de caja |
| Ntransaccionswitch | numero id de transaccion en el origen, es el numero que identifica la transacción en el sistema origen, (Numerico, largo max 26) |
| Slocalsw | Indificador unico de la sucursal en amipass, corresponde a un valor entregado por Amipass (Alfanumérico, largo máximo 100) Opcional |
| Sku | Arreglo de productos, precio y cantidad que cliente tiene asociados a la venta. En el caso de no enviar dejar el valor en blanco. codigo: codigo sku del producto precio: valor unitario del producto cantidad: total de unidades del producto vendidas |
Ejemplo
| https://intpay.amipassqa.com/wspay/PAYPAP |
| Request | |
|---|---|
| { "NumeroTransaccion": "48477720", "Monto": 90, "CodLocal": "700", "codPromocion": "", "codCupon": "", "npos": "2404", "ntransaccionswitch": "659245835424135247", "Slocalsw": "500825001", "Sku": [ { "codigo": "ELP1001", "precio": 10, "cantidad": 5 }, { "codigo": "APP2001", "precio": 5, "cantidad": 8 } ] } |
Parametros de salida
| Parametro | Descripción |
|---|---|
| CodRespuesta | Código de respuesta de autorización (Alfanumérico, largo máximo 2) ◦ Si el CodRespuesta tiene valor 1 implica aprobado ◦ Si el CodRespuesta tiene valor distinto de 1 implica rechazado |
| DesRespuesta | Descripción de la respuesta (Alfanumérico, largo máximo 50) |
| CodAutorizacion | Número identificador de la autorización (Numérico, largo máximo 18) |
| Fecha | Fecha de la autorización (Fecha Hora, yyyy-MM-dd hh:mm:ss.fff) |
| Monto | Monto de la transacción autorizada. (Numérico, largo máximo 7) |
| Saldo | Saldo despues de la venta en el bolsillo Amipass del usuario |
| Ejemplo |
|---|
| { "CodRespuesta": "1", "DesRespuesta": "APROBADO", "CodAutorizacion": "38636765", "Fecha": "2024-05-08 10:11:54.324", "Monto": "90", "Saldo": "97873" } |
Codigos de Respuesta
Los códigos de respuesta de una transacción de venta son los siguientes. Los códigos que sean iguales o mayores a 10 son restricciones propias de la empresa para un empleado. Solamente las transacciones que respondan con código 1 son las transacciones aprobadas.
| Codigo | Descripion |
|---|---|
| 1 | APROBADA |
| 2 | No Soportado |
| 3 | No Existe Establecimiento |
| 4 | Saldo Insuficiente |
| 5 | Error En Transaccion |
| 6 | TimeOut |
| 7 | Maximo Consumo |
| 8 | Pin Invalido |
| 9 | Tarjeta Invalida |
| 10 | RESTRICCION MONTO |
| 11 | RESTRICCION TIPO LOCAL |
| 12 | RESTRICCION HORA |
| 13 | RESTRICCION DIA |
| 14 | COMERCIO NO AUTORIZADO |
| 15 | RESTRICCION MONTO (AUTORIZADOR) |
| 16 | RESTRICCION EMPLEADO BLOQUEO TX |
| 17 | RESTRICCION REGIONAL |
| 18 | RESTRICCION CLASIFICACION |
| 19 | RESTRICCION TECNOLOGIA |
Generar Código QR
Private Sub btnTestPay_Click(sender As Object, e As EventArgs)
Dim sCodigoQR = "78411803"
Dim sMonto = "0"
Dim sCodLocal = "6665590"
CallAmipassPay(sCodigoQR, sMonto, sCodLocal)
End Sub
Private Sub CallAmipassPay(sCodigoQR As String, sMonto As String, sCodLocal As String, sPromo as string)
Dim TokenAutenticacion = "1028938"
Dim respuesta = ""
Dim sParametros As String = String.Format("?NumeroTransaccion={0}&Monto={1}&CodLocal={2}&CodPromocion={3}", sCodigoQR, sMonto, sCodLocal, sPromo)
Dim url As String = Convert.ToString("https://intpay.amipassqa.com/wspay/PayPAP") & sParametros
Dim request As HttpWebRequest = DirectCast(HttpWebRequest.Create(New Uri(url)), HttpWebRequest)
request.ContentType = "application/json"
request.Headers("Authorization") = String.Format("Basic {0}", TokenAutenticacion)
Using response As WebResponse = request.GetResponse()
Using stream As New StreamReader(response.GetResponseStream())
Dim content = stream.ReadToEnd()
respuesta = JsonConvert.DeserializeObject(Of String)(content)
End Using
End Using
Dim resp As RespuestaTransaccionPA = JsonConvert.DeserializeObject(Of RespuestaTransaccionPA)(respuesta)
If resp.CodRespuesta = "1" Then
'Venta Aprobada
Else
'Venta Rechazada
End If
End Sub
Public Class RespuestaTransaccionPA
Public CodRespuesta As String
Public DesRespuesta As String
Public CodAutorizacion As String
Public Fecha As String
Public Monto As String
End Class
void btnTestPay_Click(object sender, EventArgs e)
{
var sCodigoQR = "78411803";
var sMonto = "0";
var sCodLocal = "6665590";
CallAmipassPay(sCodigoQR, sMonto, sCodLocal);
}
private void CallAmipassPay(string sCodigoQR, string sMonto, string sCodLocal, string sPromo)
{
var TokenAutenticacion = "1028938";
var respuesta = "";
string sParametros = string.Format("?NumeroTransaccion={0}&Monto={1}&CodLocal={2}&CodPromocion={3}", sCodigoQR, sMonto, sCodLocal, sPromo);
string url = "https://intpay.amipassqa.com/wspay/PAYPAP" + sParametros;
HttpWebRequest request = (HttpWebRequest)HttpWebRequest.Create(new Uri(url));
request.ContentType = "application/json";
request.Headers["Authorization"] = string.Format("Basic {0}", TokenAutenticacion);
using (WebResponse response = request.GetResponse())
{
using (StreamReader stream = new StreamReader(response.GetResponseStream()))
{
var content = stream.ReadToEnd();
respuesta = JsonConvert.DeserializeObject<string>(content);
}
}
RespuestaTransaccionPA resp = JsonConvert.DeserializeObject<RespuestaTransaccionPA>(respuesta);
if (resp.CodRespuesta == "1")
{
//Venta Aprobada
}
else
{
//Venta Rechazada
}
}
public class RespuestaTransaccionPA
{
public string CodRespuesta;
public string DesRespuesta;
public string CodAutorizacion;
public string Fecha;
public string Monto;
}
Datos ambiente de prueba
- Ingrese a: https://intsocios.amipassqa.com/login.aspx
Usuario: NNXXXXXX / clave: xxxxxxxxxx (por solicitar) - En el menú de la izquierda seleccione la opción “Modo móvil”
- Ingrese a la opción “Pago Smartphone”
- Ingrese monto (Ej. 100)
- Ingrese clave: 7603
- La aplicación mostrará el código QR que necesitamos para realizar la venta:

Codigo de local
Para realizar las pruebas los códigos de local son los siguientes:
• *Solicitar
| Código CSharp y VB |
|---|
| • Requiere librería Json.NET: http://www.newtonsoft.com/json |
Transacciones
Listado de transacciones del comercio para un día dado.
TX
Llamada
Ejemplo: https://intpay.amipassqa.com/wspay/TX
Parametros de entrada
| Parametro | Descripción |
|---|---|
| Fecha | Fecha de las transacciones a descargar. (yyyy-MM-dd) |
| CodLocal | Código proporcionado por Amipass que hace único para el local (Alfanumérico, largo máximo 20) |
| Slocalsw | Indificador unico de la sucursal en amipass, corresponde a un valor entregado por Amipass (Alfanumérico, largo máximo 100) |
| Ejemplo |
|---|
| https://intpay.amipassqa.com/wspay/TX?Fecha=2016-11-08&CodLocal=1028741&Slocalsw=500825001 |
Parametros de salida
| Parametro | Descripción |
|---|---|
| sTurno | Nombre del turno. Este dato es administrable solo desde la APP AmipassPay |
| sTipoTransaccion | Tipo de transacción |
| ◦ Valores: | |
| ▪ Anulación | |
| ▪ Venta | |
| dTransaccion | Fecha de la autorización. (Fecha Hora, yyyy-MM-dd hh:mm:ss.fff) |
| idTransaccion | Número de autorización (Numérico, largo máximo 20) |
| nMonto | Monto de la transacción autorizada. (Numérico, largo máximo 7) |
| sRutCliente | últimos 4 dígitos del rut del cliente Ejemplo: *****239-1 |
| Ejemplo |
|---|
| [{“sTurno”:”Turno1 08:00:57 / 16:16:52”, ”sTipoTransaccion”:”Venta”,”dTransaccion”:”21-10-2016 8:52:28”,”idTransaccion”:”5247882”,”nMonto”:”1350”,”sRutEmpleado”:”***** 239-1”},{“sTurno”:”Turno1 08:00:57 / 16:16:52”,”sTipoTransaccion”:”Venta”,”dTransaccion”:”21-10-2016 8:36:15”,”idTransaccion”:”5247744”,”nMonto”:”4400”,” sRutCliente”:”*****951-K”}] |
Verifica Transacciones
Retorna los datos de venta de un número de autorización.
VTX
Llamada
Ejemplo: https://intpay.amipassqa.com/wspay/VTX
Parametros de entrada
| Parametro | Descripción |
|---|---|
| nTransaccion | Número identificador de la autorización. (Numérico, largo máximo 20) |
| CodLocal | Código proporcionado por Amipass que hace único para el comercio (Alfanumérico, largo máximo 20) |
| Ejemplo |
|---|
| https://intpay.amipassqa.com/wspay/VTX?nTransaccion=5247744&CodLocal=1028741 |
Parametros de salida
| Parametro | Descripción |
|---|---|
| sTurno | Nombre del turno. Este dato es administrable solo desde la APP AmipassPay (Alfanumérico, largo máximo 50) |
| sTipoTransaccion | Tipo de transacción |
| ◦ Valores | |
| ▪ Anulación | |
| ▪ Venta | |
| dTransaccion | Fecha de la autorización. (Fecha Hora, yyyy-MM-dd hh:mm:ss.fff) |
| idTransaccion | Número de autorización (Numérico, largo máximo 20) |
| nMonto | Monto de la transacción autorizada. (Numérico, largo máximo 7) |
| sRutCliente | últimos 4 dígitos del rut del cliente Ejemplo: *****239-1 (Alfanumérico, largo máximo 10) |
| Ejemplo |
|---|
| {“sTurno”:”Turno1 08:00:57 / 16:16:52”,”sTipoTransaccion”:”Venta”,”dTransaccion”:”21-10-2016 8:36:15”,”idTransaccion”:”5247744”,”nMonto”:”4400”,” sRutCliente”:”*****951-K”} |
Anulación
Anula una transacción autorizada.
ANPAP
Llamada
| URL | https://{AMBIENTE}/wspay/ANPAP |
| Method | POST |
| Headers HTTP | Content-Type: application/json Authorization: < Dato entregado por Amipass > |
Parametros de entrada
| Parametro | Descripción |
|---|---|
| nTransaccion | Número de autorización de la transacción a anular. (Numérico, largo máximo 20) |
| sCodigoQR | Token generado por el usuario en el momento de la venta a anular o un nuevo token generado especialmente para esta transacción de anulación. (Numérico, largo máximo 30) |
| sCodLocal | Código proporcionado por Amipass que hace único para el local. (Alfanumérico, largo máximo 20). En la plataforma Amipass corresponde al campo “CODIGO SUCURSAL PAY” |
| nMonto | Monto a anular. La anulación puede ser por un monto parcial o total de la transición original. |
| Slocalsw | Indificador unico de la sucursal en amipass, corresponde a un valor entregado por Amipass (Alfanumérico, largo máximo 100) |
Ejemplo
| https://intpay.amipassqa.com/wspay/ANPAP |
| Request | |
|---|---|
| { "nTransaccion": "5247744", "sCodigoQR": "46546", "sCodLocal": "1028741", "nMonto": 1, "Slocalsw": "500825001" } |
Parametros de salida
| Parametro | Descripción |
|---|---|
| CodRespuesta | Código de respuesta de autorización (Alfanumérico, largo máximo 2) |
| ◦ Si el CodRespuesta tiene valor 1 implica aprobado | |
| ◦ Si el CodRespuesta tiene valor distinto de 1 implica rechazado | |
| DesRespuesta | Descripción de la respuesta (Alfanumérico, largo máximo 50) |
| CodAutorizacion | Número identificador de la autorización (Numérico, largo máximo 20) |
| Fecha | Fecha de la autorización (Fecha Hora, yyyy-MM-dd hh:mm:ss.fff) |
| Monto | Monto de la transacción autorizada. (Numérico, largo máximo 7) |
| Ejemplo |
|---|
{
"CodRespuesta": "1",
"DesRespuesta": "APROBADO",
"CodAutorizacion": "5270496",
"Fecha": "2016-09-06 17:05:04.210",
"Monto": "1000"
}
Reversa
Reversa una transacción autorizada.
RVPAP
Llamada
| URL | https://{AMBIENTE}/wspay/RVPAP |
| Method | POST |
| Headers HTTP | Content-Type: application/json Authorization: < Dato entregado por Amipass > |
Parametros de entrada
| Parametro | Descripción |
|---|---|
| sCodigoQR | Código QR generado por el cliente con el que se autorizó la transacción a reversar. (Numérico, largo máximo 30). Cuando no hay Codigo QR asociado se puede usar el nTransaccionSW utilizado en la venta (Numérico, largo máximo 26) |
| sCodLocal | Código proporcionado por Amipass que hace único para el local. (Alfanumérico, largo máximo 20). En la plataforma Amipass corresponde al campo “CODIGO SUCURSAL PAY” |
| nMonto | Monto transacción a reversar |
| Slocalsw | Indificador unico de la sucursal en amipass, corresponde a un valor entregado por Amipass (Alfanumérico, largo máximo 100) |
Ejemplo
| https://intpay.amipassqa.com/wspay/RVPAP |
| Request | |
|---|---|
| { "sCodigoQR": "465464", "sCodLocal": "1028741", "nMonto": 1, "Slocalsw": "500825001" } |
Parametros de salida
| Parametro | Descripción |
|---|---|
| CodRespuesta | Código de respuesta de autorización (Alfanumérico, largo máximo 2) |
| ◦ Si el CodRespuesta tiene valor 1 implica aprobado | |
| ◦ Si el CodRespuesta tiene valor distinto de 1 implica rechazado | |
| DesRespuesta | Descripción de la respuesta (Alfanumérico, largo máximo 50) |
| CodAutorizacion | Número identificador de la autorización (Numérico, largo máximo 20) |
| Fecha | Fecha de la autorización (Fecha Hora, yyyy-MM-dd hh:mm:ss.fff) |
| Monto | Monto de la transacción autorizada. (Numérico, largo máximo 7) |
| Ejemplo |
|---|
{
"CodRespuesta": "1",
"DesRespuesta": "APROBADO",
"CodAutorizacion": "5270496",
"Fecha": "2016-09-06 17:05:04.210",
"Monto": "1000"
}
Verifica Transacciones QR
Retorna los datos de venta de un número de autorización.
cTXQR
Llamada
Ejemplo: https://intpay.amipassqa.com/wspay/cTXQR
Parametros de entrada
| Parametro | Descripción |
|---|---|
| NumeroTransaccion | Numero QR con el cual se solicito el pago |
| Monto | Valor por el cual se curso la transaccion |
| CodLocal | Código proporcionado por Amipass que hace único para el comercio (Alfanumérico, largo máximo 20) |
| codPromocion | [opcional] Codigo de la promocion aplicada en la compra |
| codCupon | [opcional] Codigo del cupon aplicado en la compra |
| sku | [opcional] Listado de detalles de SKUs de en la compra en formato sku:valor:cantidad separados por ";" |
| Ejemplo |
|---|
| https://intpay.amipassqa.com/wspay/cTXQR?NumeroTransaccion=99391277&Monto=1000&CodLocal=76449 |
Parametros de salida
| Parametro | Descripción |
|---|---|
| sTurno | Nombre del turno. Este dato es administrable solo desde la APP AmipassPay (Alfanumérico, largo máximo 50) |
| sTipoTransaccion | Tipo de transacción |
| ◦ Valores | |
| ▪ Anulación | |
| ▪ Venta | |
| sEstadoTransaccion | |
| ◦ Valores | |
| ▪ ANULADA | |
| ▪ APROBADA | |
| ▪ RECHAZADA | |
| ▪ REVERSADA | |
| dTransaccion | Fecha de la autorización. (Fecha Hora, yyyy-MM-dd hh:mm:ss.fff) |
| idTransaccion | Número de autorización (Numérico, largo máximo 20) |
| nQR | Numero de QR con el cual se opero |
| nMonto | Monto de la transacción autorizada. (Numérico, largo máximo 7) |
| sRutCliente | últimos 4 dígitos del rut del cliente Ejemplo: *****239-1 (Alfanumérico, largo máximo 10) |
| sRutCompleto | Rut sin ofuscar del cliente |
| dFechaConsulta | Fecha en que se realiza la consulta |
| Ejemplo |
|---|
| [{"sTurno":"","sTipoTransaccion":"Venta","sEstadoTransaccion":"APROBADA","dTransaccion":"06-09-2022 10:31:45","idTransaccion":"38631469","nQR":"57681692","nMonto":"1234","sRutCliente":"***107-9","sRutCompleto":null,"dFechaConsulta":"07-11-2022 21:31"}] |
Integracion con eCommerce
Las API de Amipass es un conjunto de interfaces HTTP para integrar el eCommerce del comercio con AMIPASS. Estas API reciben los parámetros de entrada por medio de método GET y la respuesta es en formato JSON.
Vías de Acceso eCommerce
Ambiente productivo
| Ambiente | URL |
|---|---|
| URL | https://servicesextecommerce.amipass.cl/APIExtEcommerce/v1/ |
| Autenticacion | Tipo: Basica |
| token: *Solicitar |
Ambiente Integración
| Ambiente | URL |
|---|---|
| URL | • URL: https://servicesextecommerce.amipassqa.com/APIExtEcommerce/v1/ |
| Autenticacion | Tipo: Basica |
| token: *Solicitar |
- El Token es individual por cada local o vitrina
- Cada local debe tener un código identificador y ya debe ser parte como comercio Amipass
- Todos los llamados (a excepción de los GET) tendrán como respuesta 200 (OK), 400 (Error) o 500 (Error interno) con un mensaje estándar indicando un código y un mensaje
Producto
Permite agregar o actualizar la informacion base de un producto
Producto
Llamada
URl : PATH: /product TIPO : POST
Parametros de entrada
| Parametro | Tipo | Descripción |
|---|---|---|
| ean | Varchar 13 | Código de barra del producto |
| externalProductId | Varchar 10 | ID del producto de origen |
| productName | Varchar 30 | Nombre del producto |
| fullDescription | Varchar 50 | descripción del producto |
| shortDescription | Varchar 30 | Descripción corta del producto |
| photoURL | Varchar 100 | URL de la imagen del producto |
| measureUnit | Varchar 3 | Unidad de medida, estas pueden ser Un (unidad), Kg (kilo), Lt (litro), Ml (mililitros), G (gramos) |
| food | boolean | Indica si el producto es comestible o es otro tipo de producto |
| category | Varchar | 3 Categoría del producto (Ver servicio de categorías) |
| brand | Varchar | 3 Marca del producto (ver servicio de marcas) |
| Ejemplo |
|---|
| { “ean“: “897666555“, “externalProductId“: “1“, “productName“: “Coca Cola“, “fullDescription“: “Coca Cola 2 L Desechable“, “shortDescription“: “Coca Cola 2 L“, “photoURL“: “https://i.ebayimg.com/images/g/rlUAAOSw9X9iofH6/s-l500.jpg“, “measureUnit“: “l“, “food“: true, “category“: “20“, “brand“: “105“ } |
Parametros de salida
| Parametro | Descripción |
|---|---|
| Status 200 | Inscripción de producto aprobada |
| Status 400 | Inscripción de producto rechazada |
Stock
Permite asignar un nuevo stock a un producto
Stock
Llamada
URl : PATH: /product/stock TIPO : PUT
Parametros de entrada
| Parametro | Tipo | Descripción |
|---|---|---|
| externalProductId | Varchar 10 | ID del producto de origen |
| newStock | Integer | Nuevo stock del producto |
| Ejemplo |
|---|
| { “externalProductId“:“1“, “newStock“:100 } |
Parametros de salida
| Parametro | Descripción |
|---|---|
| Status 200 | Inscripción de producto aprobada |
| Status 400 | Inscripción de producto rechazada |
Precio
Permite asignar un nuevo precio a un producto
Precio
Llamada
URl : PATH: /product/price TIPO : PUT
Parametros de entrada
| Parametro | Tipo | Descripción |
|---|---|---|
| externalProductId | Varchar 10 | ID del producto de origen |
| price | numeric | Nuevo precio del producto |
| Ejemplo |
|---|
| { “externalProductId“:“1“, “price“:1500 } |
Parametros de salida
| Parametro | Descripción |
|---|---|
| Status 200 | Inscripción de producto aprobada |
| Status 400 | Inscripción de producto rechazada |
Marca
Marca - Actualizar
Llamada
URl : PATH: : /product/brands TIPO : PUT
Permite actualizar el ID de las marcas
Parametros de entrada
| Parametro | Tipo | Descripción |
|---|---|---|
| externalBrandId | Varchar 10 | Nuevo ID de la marca de origen |
| description | Varchar 30 | Marca a la cual se le actualizara el ID |
| Ejemplo |
|---|
| { “externalBrandId“:“105“, “description“:“coca-cola“ } |
Parametros de salida
| Parametro | Descripción |
|---|---|
| Status 200 | Actualizacion de marca aprobada |
| Status 400 | Actualizacion de marca rechazada |
Marca - Obtener
Llamada
URl : PATH: : /product/brands TIPO : GET
Permite actualizar el ID de las marcas
Parametros de entrada
| Parametro | Tipo | Descripción |
|---|---|---|
| Ejemplo |
|---|
Parametros de salida (arreglo)
| Parametro | Tipo | Descripción |
|---|---|---|
| externalBrandId | Varchar 10 | Nuevo ID de la marca de origen |
| description | Varchar 30 | Marca a la cual se le actualizara el ID |
| Ejemplo |
|---|
| [ { “externalBrandId“:“2“, “description“:“kellogg's“ }, { “externalBrandId“:“3“, “description“:“corn flakes“ }, { “externalBrandId“:“4“, “description“:“estrellitas“ } ] |
Categoria
Categorias - Actualizar
Llamada
URl : PATH: : /product/categories TIPO : PUT
Permite actualizar el ID de las categorías, es requerido el match entre la categoría padre e hija
Parametros de entrada
| Parametro | Tipo | Descripción |
|---|---|---|
| externalCategoryId | Varchar 10 | Nuevo ID de la categoría de origen |
| description | Varchar 30 | categoría hija a la cual se le actualizara el ID |
| parent | Varchar 30 | categoría padre de la categoría a la cual se le actualizará el ID |
| Ejemplo |
|---|
{ “externalCategoryId“:“12“, “parent“:“Alimentación Infantil“, “description“:“Cereales Infantiles“ } |
Parametros de salida
| Parametro | Descripción |
|---|---|
| Status 200 | Actualizacion de categotia aprobada |
| Status 400 | Actualizacion de categotia rechazada |
Categorias - Obtener
Llamada
URl : PATH: : /product/categories TIPO : GET
Permite traer todas las categorías asociadas a un token
Parametros de entrada
| Parametro | Tipo | Descripción |
|---|---|---|
| Ejemplo |
|---|
Parametros de salida (arreglo)
| Parametro | Tipo | Descripción |
|---|---|---|
| externalCategoryId | Varchar 10 | Nuevo ID de la categoría de origen |
| description | Varchar 30 | categoría hija a la cual se le actualizara el ID |
| parent | Varchar 30 | categoría padre de la categoría a la cual se le actualizará el ID |
| Ejemplo |
|---|
[ { “externalCategoryId“:“12“, “parent“:“Alimentación Infantil“, “description“:“Cereales Infantiles“ }, { “externalCategoryId“:“13“, “parent“:“Alimentación Infantil“, “description“:“Colados y Picados“ }, { “externalCategoryId“:“14“, “parent“:“Alimentación Infantil“, “description“:“Leche Infantil“ }, { “externalCategoryId“:“15“, “parent“:“Bebidas Aguas y Jugos“, “description“:“Aguas con Gas“ }, { “externalCategoryId“:“16“, “parent“:“Bebidas Aguas y Jugos“, “description“:“Aguas Saborizadas“ } ] |