@clinpays/paygate v1.0.65
PAYGATE PAYMENTS 🚀
Cómo instalarlo
npm
npm i @clinpays/paygate
Métodos principales
- Paygate.debug(true)
Visualizar en la consola los registros de log de todos los procesos.
Parámetro | Tipo | Descripción |
---|---|---|
true/false | Boolean | Activa/desactiva el modo debugger |
const Paygate = require('@clinpays/paygate');
Paygate.debug(true/false);
- Paygate.dataCollector(account, safeIdentifier, currency)
Ejecutar el data collector para el servicio de antifraude. Este método debe ser llamado en el frontend
, es decir en el navegador del cliente, ya que recolectará información relacionada a este. Este método devuelve una promesa que resuelve con un objeto con los ID de sesiones que deben ser enviados en el payload del método payOrder
.
Parámetro | Requerido | Tipo | Especificación | Formato | Descripción |
---|---|---|---|---|---|
account | Sí | String | - | 66107b9c1318da5f6c995357 | ID del comercio |
safeIdentifier | Sí | String | - | 1234567891234567 | PAN de la tarjeta sin guiones ni espacios |
currency | No | String | ISO 4217 code | HNL | Moneda de la transacción. Valor por defecto HNL |
const Paygate = require('@clinpays/paygate');
async function collector() {
const result = await Paygate.dataCollector(
'66107b9c1318da5f6c995357',
'HNL',
'1234567891234567'
);
console.log(result);
}
Output:
{
sess: 'ID de 32 caracteres' | null,
bankSess: 'ID de 32 caracteres' | null
}
- Paygate.show3dsValidation(redirectData)
Mostrar la pantalla de validación 3DS a través de un modal. Este método recibe un parámetro de tipo string y mostrará una pantalla modal en caso de que el banco emisor de la tarjeta requiera validación adicional de parte del tarjetahabiente.
Parámetro | Requerido | Tipo | Formato | Descripción |
---|---|---|---|---|
redirectData | Sí | String | HTML a insertar en iframe | HTML con javascript embebido que se inyectará en un iframe |
const Paygate = require('@clinpays/paygate');
await Paygate.show3dsValidation('[HTML FORM DATA TRUNCATED FOR BREVITY]');
- Paygate.configure_ecommerce(id, token)
Configurar la cuenta con las credenciales correspondientes para poder realizar cobros. Este método debe ser llamado únicamente en el backend
para evitar exponer el token de autenticación.
Parámetro | Requerido | Tipo | Formato | Descripción |
---|---|---|---|---|
id | Sí | String | 6610421453866e074b4be7b3 | ID del comercio |
token | Sí | String | JWT (eyJhbGciOiJIUzI1NiIs...) | Token del comercio |
const Paygate = require('@clinpays/paygate');
Paygate.configure_ecommerce('6610421453866e074b4be7b3', 'eyJhbGciOiJIUzI1NiIs...');
- Paygate.payOrder(payload)
Realizar el cobo a la tarjeta. Este método devuelve una promesa que resuelve con el resultado del pago o con un mensaje de error.
Contenido del objeto payload:
Datos personales
Parámetro | Requerido | Tipo | Formato | Descripción |
---|---|---|---|---|
C | String | jorge@gmail.com | Correo electrónico del cliente | |
mobilePhone | C | String | +5049999999 | Número telefónico del cliente con código de área y sin guiones ni espacios |
customerName | C | String | Jorge Santos | Nombre completo del cliente |
Datos de la tarjeta
Parámetro | Requerido | Tipo | Formato | Descripción |
---|---|---|---|---|
firstName | Sí | String | Jorge | Nombre del tarjetahabiente |
lastName | Sí | String | Santos | Apellido del tarjetahabiente |
safeIdentifier | Sí | String | 1234567891234567 | PAN de la tarjeta sin guiones ni espacios |
validThru | Sí | String | MMYY (1226) | Fecha de expiración de la tarjeta |
cvv | Sí | String | 999 | Código de seguridad de la tarjeta |
Detalle del pago
Parámetro | Requerido | Tipo | Especificación | Formato | Descripción |
---|---|---|---|---|---|
amount | Sí | Number | - | 20.50 | Total a cobrar |
currency | No | String | ISO 4217 code | HNL | Moneda de la transacción. Valor por defecto HNL |
referenceId | Sí | String | ABCDFG-1010 | Referencia única del la orden | |
description | Sí | String | Pago Paygate | Descripción de la orden | |
orderNumber | Sí | String | 100000000 | Número único de orden |
Facturación
Parámetro | Requerido | Tipo | Especificación | Formato | Descripción |
---|---|---|---|---|---|
b2cc | C | String | ISO 3166-1 alpha-2 | HN | País de factuación en código de dos letras |
billingCountryCode | C | String | ISO 3166-1 Numeric code | 340 | País de factuación en código numérico |
billingState | C | String | ISO 3166-2 | FM | Estado de factuación |
billingCity | C | String | - | Tegucigalpa | Estado o provincia de facturación |
billingAddress1 | C | String | - | Barrio Los Hermanos | Dirección de facturación |
billingPostalCode | C | String | Código ZIP | 11101 | Código postal de facturación |
Servicio de antifraude
Parámetro | Requerido | Tipo | Formato | Descripción |
---|---|---|---|---|
sess | C | String | ID de 32 caracteres | ID de sesión obtenido en el método dataCollector |
bankSess | C | String | ID de 32 caracteres | ID de sesión obtenido en el método dataCollector |
const Paygate = require('@clinpays/paygate');
const = payload = {
// Datos personales del cliente
email: "jorge@gmail.com",
mobilePhone: "+5049999999",
customerName: "Jorge Santos",
// Datos de la tarjeta
firstName: "Jorge",
lastName: "Santos",
safeIdentifier: "4000000000000000",
validThru: "1226",
cvv: "999",
// Detalle del pago
amount: 20.50,
currency: "HNL",
referenceId: "ABCDFG-1010",
description: "Pago Paygate",
orderNumber: "100000000",
// Facturación
b2cc: "HN",
billingCountryCode: "340",
billingState: "FM",
billingCity: "Tegucigalpa",
billingAddress1: "Barrio Los Hermanos",
billingPostalCode: "11101"
// Servicio de antifraude
sess: "f45478b8495e4f7098c07bac0b26c3b1",
bankSess: ""
};
Con async/await
async function pagar() {
const result = await Paygate.payOrder(payload);
console.log(result);
}
Con then/catch
function pagar() {
Paygate.payOrder(payload)
.then(result => {
console.log(result);
})
.catch(err => {
console.log(err);
});
}
Output:
{
_id: "661077d38494c40a4318fb31",
status: "APPOVED" | "DENIED",
amount: 20.50,
tax: 0,
subtotal: 20.50,
firstName: "Jorge",
lastName: "Santos",
safeIdentifier: "4000-00**-****-0000",
paymentType: "VISA" | "MASTERCARD",
sequence: 12345,
transactionID: "AUTH-123",
createdAt: 2024-01-01T00:00:00.000
}
Utilidades
- Paygate.getCountriesAndStates()
Obtener listado de países y estados/departamentos disponibles
const Paygate = require('@clinpays/paygate');
const countriesAndStates = await Paygate.getCountriesAndStates();
3 months ago
3 months ago
4 months ago
4 months ago
3 months ago
4 months ago
4 months ago
4 months ago
9 months ago
9 months ago
10 months ago
10 months ago
10 months ago
1 year ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
3 years ago
2 years ago
2 years ago
3 years ago
2 years ago
2 years ago
3 years ago
3 years ago
3 years ago
3 years ago
3 years ago
3 years ago
3 years ago
3 years ago
3 years ago
3 years ago
3 years ago