El formato general de solicitud es: Bloco de código |
---|
| {
"companyId": "myCompanyId",
"params":[
{"param1":"param1value", "paramN":"paramNvalue", ...}
],
"items": [
{.... primer item .......},
{.... otro item .......},
{.... otro item .......},
{.... otro item .......},
{.... otro item .......},
]
} |
donde Campo | Descripción | Tipo de Dato |
---|
companyId | | alfanumérico. Requerido | params | Parámetros extra | Requerido detailedErrors: indica si se desea el detalle de errores en la respuesta. Default: true detailedSuccess: indica si se desea el detalle de registros correctos en la respuesta. Default: true validateCard: Realiza todas las validaciones del elemento de fidelidad. Por ej: el uso de cvv. Default: false. oneActiveCardByCustomer: Valida si un cliente posee un elemento de fidelidad activo. Default: true | items | Registros a importar | Colección de elementos y su operación asociada. Requerido |
El formato de los ítems es el siguiente: Campo | Descripción |
---|
operation | Operación a realizar sobre el registro. Ver tabla siguiente Requerido | code | código de elemento. En este caso si se solicita crear un elemento, el mismo será creado con este código. Si se deja por defecto genera un número automáticamente. Valor por defecto: '' | type | Tipo de Elemento en cuestión. Obligatorio, debe existir previamente. | validFrom | Valida desde. Opcional, si se deja vacío se generara acorde al tipo de elemento. El formato es "YYYY-MM-DD" | validTo | Valida Hasta. Opcional, ídem anterior. El formato es "YYYY-MM-DD" | amount | Monto asociado a la operación. Requerido | customerId | Código de cliente asociado. Valor por defecto: ''". Opcional | cvv | CVV asociado. Valor por defecto: ''". Opcional | reason | Motivo de la operación. Generalmente se utiliza en los cambios de saldo. Opcional. | stroreCode | Tienda donde se realizó la transacción. Opcional (A partir de 7.2.6). Opcional. | terminalCode | Terminal donde se realizó la transacción. Opcional (A partir de 7.2.6). Opcional. |
Aviso |
---|
| A partir de Promo 7.2.6 se puede agregar a la mensajeria el storeCode y el terminalCode Bloco de código |
---|
language | xml |
---|
theme | Emacs |
---|
title | Request |
---|
| {
"companyId": "2",
"params": [],
"items": [
{ "operation": "ACTIVATION", "code": "6000000010", "type": "15", "validFrom":"2023-08-11", "validTo":"2023-08-11", "amount":"100", "customerId":"12", "cvv":"", "reason":"", storeCode:"3", terminalCode:"1" }
]
} |
Los cuales se detallarán en la consola en: Gestión de Elementos de Fidelidad, en el botón "acciones" /"ver" |
Los valores posibles del campo operation son: Valor | Descripción |
---|
ACTIVATION | Activación del elemento con código "code". | AMOUNT_UPDATE | Actualización de saldo. Sumará o restará el valor según lo enviado en el Json de la operación. | RECHARGE | Recarga | CHARGE | Carga Inicial. Esta operación se utiliza exclusivamente cuando se activa una tarjeta con saldo, porque realiza la carga inicial activándola y cargándole el saldo. Nota: si activa la tarjeta sin saldo inicial, al realizar la primer carga esa operación es recharge. | CONSUME | Consumo | CANCEL | Desactivar el elemento en cuestión |
Informações |
---|
| Este servicio no permite crear mas de una tarjeta activa para un mismo cliente (sin importar si está o no asociada a un convenio). Esto se controla con la variable: "oneActiveCardByCustomer", que por default es TRUE. Bloco de código |
---|
language | xml |
---|
theme | Emacs |
---|
title | Request |
---|
| {
"companyId": "2",
"params": [],
"items": [
{ "operation": "ACTIVATION", "code": "4100000003", "type": "12", "validFrom":"2023-08-11", "validTo":"2023-08-11", "amount":"100", "customerId":"3", "cvv":"", "reason":"" }
]
} |
Bloco de código |
---|
language | xml |
---|
theme | Emacs |
---|
title | Response |
---|
| {
"status": "400",
"description": "rest::cardAdmin",
"detail": {
"result": "error",
"detail": "El cliente ya posee un elemento de fidelidad activo"
}
} |
|
Expandir |
---|
| Ejemplo de Envío de registro. En este caso se envían las siguientes tarjetas: - solicitar crear una tarjeta "3000000002", de tipo 8, con saldo de 100.
- solicitar crear una tarjeta "3200000002", de tipo 9, con saldo de 700.
- solicitar crear una tarjeta "3500000002", de tipo 10, con saldo de 50.
- solicitar crear una tarjeta "3700000002", de tipo 11, con saldo de 700.
- solicitar crear una tarjeta "4100000002", de tipo 12, con saldo de 3500.
- solicitar crear una tarjeta "4200000002", de tipo 13, con saldo de 150.
- solicitar crear una tarjeta "4200000002", de tipo 14, con saldo de 150.
Bloco de código |
---|
language | xml |
---|
theme | Emacs |
---|
title | Request |
---|
| {
"companyId": "2",
"params": [{"oneActiveCardByCustomer":"false", "validatedCard":"true"}],
"items": [
{ "operation": "ACTIVATION", "code": "3000000002", "type": "8", "validFrom":"-", "validTo":"-", "amount":"100", "customerId":"", "cvv":"", "reason":"" },
{ "operation": "ACTIVATION", "code": "3200000002", "type": "9", "validFrom":"-", "validTo":"-", "amount":"700", "customerId":"", "cvv":"", "reason":"" },
{ "operation": "ACTIVATION", "code": "3500000002", "type": "10", "validFrom":"-", "validTo":"-", "amount":"50", "customerId":"", "cvv":"", "reason":"" },
{ "operation": "ACTIVATION", "code": "3700000002", "type": "11", "validFrom":"-", "validTo":"-", "amount":"700", "customerId":"", "cvv":"", "reason":"" },
{ "operation": "ACTIVATION", "code": "4100000002", "type": "12", "validFrom":"-", "validTo":"-", "amount":"3500", "customerId":"", "cvv":"", "reason":"" },
{ "operation": "ACTIVATION", "code": "4200000002", "type": "13", "validFrom":"-", "validTo":"-", "amount":"150", "customerId":"", "cvv":"", "reason":"" },
{ "operation": "ACTIVATION", "code": "4200000002", "type": "14", "validFrom":"-", "validTo":"-", "amount":"150", "customerId":"", "cvv":"", "reason":"" }
]
} |
Bloco de código |
---|
language | xml |
---|
theme | Emacs |
---|
title | Response |
---|
| {
"status": 200,
"description": "rest::cardAdmin",
"transactionId": "SVC_CRD_20230814115340",
"detail": {
"result": "ok",
"detail": "",
"updated": 0,
"ignored": 0,
"inserted": 5,
"removed": 0,
"errors": 2,
"processed": 7,
"errorDetails": [
{
"rec": 5,
"code": "9504",
"info": null
},
{
"rec": 7,
"code": "9503",
"info": null
}
],
"successDetails": [
{
"rec": 1,
"code": "3000000002",
"amount": "100.0"
},
{
"rec": 2,
"code": "3200000002",
"amount": "700.0"
},
{
"rec": 3,
"code": "3500000002",
"amount": "50.0"
},
{
"rec": 4,
"code": "3700000002",
"amount": "700.0"
},
{
"rec": 6,
"code": "4200000002",
"amount": "150.0"
}
]
}
} |
A partir de Promo 7.2.6 la respuesta informa sobre el Id de la transaction
y el amount del elemento de fidelidad.
8. Se solicita modificar la carga de la tarjeta 450000000 con 1000. Inicialmente no tenia carga Bloco de código |
---|
language | xml |
---|
theme | Emacs |
---|
title | Request |
---|
| {
"companyId": "2",
"params": [{"oneActiveCardByCustomer":"false", "validatedCard":"true"}],
"items": [
{ "operation": "AMOUNT_UPDATE", "code": "4500000000", "type": "14", "validFrom":"2023-08-14", "validTo":"2023-12-31", "amount":"1000.00", "customerId":"", "cvv":"", "reason":"" }
]
} |
Bloco de código |
---|
language | xml |
---|
theme | Emacs |
---|
title | Response |
---|
| {
"status": 200,
"description": "rest::cardAdmin",
"transactionId": "SVC_CRD_20230814151200",
"detail": {
"result": "ok",
"detail": "",
"updated": 1,
"ignored": 0,
"inserted": 0,
"removed": 0,
"errors": 0,
"processed": 1,
"errorDetails": [],
"successDetails": [
{
"rec": 1,
"code": "4500000000",
"amount": "1000.0"
}
]
}
} |
9. Se solicita consumir 30 de la tarjeta "3000000002" Bloco de código |
---|
language | xml |
---|
theme | Emacs |
---|
title | Request |
---|
| {
"companyId": "2",
"params": [{"oneActiveCardByCustomer":"false", "validatedCard":"true"}],
"items": [
{ "operation": "CONSUME", "code": "3000000002", "type": "14", "validFrom":"2023-08-14", "validTo":"2023-12-31", "amount":"30.00", "customerId":"", "cvv":"", "reason":"" }
]
} |
Bloco de código |
---|
language | xml |
---|
theme | Emacs |
---|
title | Response |
---|
| {
"status": 200,
"description": "rest::cardAdmin",
"transactionId": "SVC_CRD_20230814151751",
"detail": {
"result": "ok",
"detail": "",
"updated": 1,
"ignored": 0,
"inserted": 0,
"removed": 0,
"errors": 0,
"processed": 1,
"errorDetails": [],
"successDetails": [
{
"rec": 1,
"code": "3000000002",
"amount": "70.0"
}
]
}
} |
Se observa que ahora la tarjeta tiene un saldo de 70; cuando inicialmente era de 100 10. Se solicita recargar 1000 a la tarjeta "3000000003" Bloco de código |
---|
language | xml |
---|
theme | Emacs |
---|
title | Request |
---|
| {
"companyId": "2",
"params": [{"oneActiveCardByCustomer":"false", "validatedCard":"true"}],
"items": [
{ "operation": "RECHARGE", "code": "3000000003", "type": "14", "validFrom":"2023-08-14", "validTo":"2023-12-31", "amount":"1000.00", "customerId":"", "cvv":"", "reason":"" }
]
} |
Bloco de código |
---|
language | xml |
---|
theme | Emacs |
---|
title | Response |
---|
| {
"status": 200,
"description": "rest::cardAdmin",
"transactionId": "SVC_CRD_20230814152100",
"detail": {
"result": "ok",
"detail": "",
"updated": 1,
"ignored": 0,
"inserted": 0,
"removed": 0,
"errors": 0,
"processed": 1,
"errorDetails": [],
"successDetails": [
{
"rec": 1,
"code": "3000000003",
"amount": "1000.0"
}
]
}
} |
11. Se solicita cargar 1000 a la tarjeta "3000000003" Bloco de código |
---|
language | xml |
---|
theme | Emacs |
---|
title | Request |
---|
| {
"companyId": "2",
"params": [{"oneActiveCardByCustomer":"false", "validatedCard":"true"}],
"items": [
{ "operation": "CHARGE", "code": "4200000002", "type": "14", "validFrom":"2023-08-14", "validTo":"2023-12-31", "amount":"1000.00", "customerId":"", "cvv":"", "reason":"" }
]
} |
Bloco de código |
---|
language | xml |
---|
theme | Emacs |
---|
title | Response |
---|
| {
"status": 200,
"description": "rest::cardAdmin",
"transactionId": "SVC_CRD_20230814152636",
"detail": {
"result": "ok",
"detail": "",
"updated": 1,
"ignored": 0,
"inserted": 0,
"removed": 0,
"errors": 0,
"processed": 1,
"errorDetails": [],
"successDetails": [
{
"rec": 1,
"code": "4200000002",
"amount": "1150.0"
}
]
}
} |
12. Se solicita cancelar la tarjeta "3000000003" Bloco de código |
---|
language | xml |
---|
theme | Emacs |
---|
title | Request |
---|
| {
"companyId": "2",
"params": [{"oneActiveCardByCustomer":"false", "validatedCard":"true"}],
"items": [
{ "operation": "CANCEL", "code": "4200000002", "type": "14", "validFrom":"2023-08-14", "validTo":"2023-12-31", "amount":"1000.00", "customerId":"", "cvv":"", "reason":"" }
]
} |
Bloco de código |
---|
language | xml |
---|
theme | Emacs |
---|
title | Response |
---|
| {
"status": 200,
"description": "rest::cardAdmin",
"transactionId": "SVC_CRD_20230814152954",
"detail": {
"result": "ok",
"detail": "",
"updated": 1,
"ignored": 0,
"inserted": 0,
"removed": 0,
"errors": 0,
"processed": 1,
"errorDetails": [],
"successDetails": [
{
"rec": 1,
"code": "4200000002",
"amount": "1150.0"
}
]
}
} |
Los resultados de estas operaciones se verán reflejados en la Consola/Módulo de Fidelidad/Elementos de Fidelidad |
donde Campo | Descripción | Tipo de Dato |
---|
status | código de respuesta | 200 indica que ha sido procesada correctamente. | description | Descripción general | Fijo "rest::cardAdmin' | transaction Id | Id de la transaccion | string. A partir de 7.2.6 | detail | Detalle del proceso | array | detail.result | Resultado general del proceso | ok indicando proceso realizado | detail.detail | Mensaje detallado respecto al proceso | vacío en el caso de ok | detail.updated | cantidad de ítems actualizados | integer | detail.ignored | cantidad de ítems ignorados | integer | detail.inserted | cantidad de ítems agregados | integer | detail.removed | cantidad de ítems removidos | integer | detail.errors | cantidad de ítems erróneos | integer | detail.processed | cantidad de ítems procesados | integer | detail.errorDetails | Detalle de cada registro con error. | rec: numero de registro en la solicitud code: código de error. Ver lista de errores en el Manual de Integración - Motor 7.2, info: mensaje informativo del error, puede devolver NULL. | detail.successDetails | Detalle de cada registro procesado correctamente | rec: Numero de registro en la solicitud code: código del elemento. amount: carga del elemento de fidelidad |
|