Perú
Integración de múltiples métodos de pago
IEn Perú, ofrecemos productos de pago como transferencias bancarias (Transfer), pagos en efectivo (Cash), billeteras electrónicas (Wallet) y todos los medios de ntegración de múltiples métodos de pago

Productos de pago actualmente soportados:
Efectivo
Transfer
Proceso de pago

1、El usuario realiza un pedido en el sitio/app del comerciante, abre la pasarela de pago agregada y elige el método de pago deseado para pagar;
2、El comerciante envía una solicitud de pago a Supefina;
3、Supefina devuelve la dirección de pago correspondiente;
4、El comerciante abre esa dirección del lado del usuario;
5、El usuario verifica y paga según las indicaciones de la página;
6、El usuario realiza el pago con éxito;
7、Supefina notifica al comerciante sobre la información de éxito del pago.
Dirección de solicitud
SandBox
POST
https://api.supefina.tech/api/supefina/transactions/payin
Producción
POST
https://api.supefina.net/api/supefina/transactions/payin
Parámetros de solicitud
Encabezado de solicitud
Content-Type
application/json
Cuerpo de solicitud
orderAmount
String
Sí
Monto del pedido
payProduct
String
No
Tipo de pago Si no se especifica, se mostrará la caja de cobro con todos los métodos de pago configurados por el comerciante. Si se especifican métodos de pago particulares, la caja de cobro solo mostrará esos métodos. Nota: Si se especifica un método de pago que no está configurado, se devolverá un mensaje de error.
customerIdentificationType
String
Sí
Tipo de identificación del usuario
00
:Cédula de Ciudadanía (CC)
01
:Carnet de extranjería (CE)
02
: Número de identificación fiscal,
03
:Pasaporte (PAS)
04
:Permiso de salida (PAR)
05
:Identificación de oficial militar (LMI)
customerIdentification
String
Sí
Número de identificación del usuario
00
: Cédula de Ciudadanía (CC), 8 dígitos
01
: Carnet de extranjería (CE), más de 9 dígitos
02
: Número de identificación fiscal, 11 dígitos
03
: Pasaporte, más de 9 dígitos
04
: Permiso de salida (PAR) 05
: Libreta militar (LMI)
El mismo número de identificación del cliente (customerIdentification
) se puede usar para realizar payin un máximo de 20 veces al día.
customerName
String
Sí
Nombre del usuario
lastName
String
Sí
Apellido del usuario
customerPhone
String
Sí
Teléfono del usuario, 9 dígitos Ejemplo:975728895
customerEmail
String
Sí
Correo electrónico del usuario
expireTimeL
Long
No
Tiempo de expiración de la caja registradora (en segundos)
Si no se especifica, el valor predeterminado es 12 horas.
Si el tiempo especificado es inferior a 3 minutos o superior a 7 días, también se considerará como 12 horas por defecto.
merld
String
Sí
ID del comerciante
Ruta para obtener el ID del comerciante: Panel de comerciante Supefina - Gestión de comerciantes - Información básica - ID del comerciante
merorderNo
String
Sí
Número de pedido del comerciante
description
String
Sí
Descripción de pago
No puede contener símbolos especiales, y la longitud no debe exceder los 200 caracteres.
checkOut
Boolean
Sí
Condición para mostrar la caja de cobro agregada
En este modo, solo se admite pasar el valor como verdadero true
nonceStr
String
Sí
Cadena aleatoria
La longitud no puede exceder 32 caracteres
Ejemplo de solicitud
1 , Habilitar todos los métodos de pago — No envíes el parámetro payProduct
.
{
"customerIdentificationType": "00",
"lastName": "xxxx",
"merOrderNo": "20240920195501",
"sign": "xxxxxx",
"customerIdentification": "22345678",
"countryId": "PER",
"nonceStr": "20240920195501",
"customerName": "xxxx",
"customerPhone": "1234567890",
"orderAmount": 100,
"customerEmail": "[email protected]",
"merId": "xxxxxxx",
"checkOut": "true",
"description":"supefina",
"currency": "PEN",
"callbackUrl": "xxxxxxxx"
}
5, Especificar los métodos de pago.
payProduct:03
{
"customerIdentificationType": "00",
"payProduct":"03",
"lastName": "xxxx",
"merOrderNo": "20240920195501",
"sign": "xxxxxx",
"customerIdentification": "22345678",
"countryId": "PER",
"nonceStr": "20240920195501",
"customerName": "xxxx",
"customerPhone": "1234567890",
"orderAmount": 100,
"customerEmail": "[email protected]",
"merId": "xxxxxxx",
"checkOut": "true",
"description":"supefina",
"currency": "PEN",
"callbackUrl": "xxxxxxxx"
}
payProduct:12
{
"customerIdentificationType": "00",
"payProduct":"12",
"lastName": "xxxx",
"merOrderNo": "20240920195501",
"sign": "xxxxxx",
"customerIdentification": "22345678",
"countryId": "PER",
"nonceStr": "20240920195501",
"customerName": "xxxx",
"customerPhone": "1234567890",
"orderAmount": 100,
"customerEmail": "[email protected]",
"merId": "xxxxxxx",
"checkOut": "true",
"description":"supefina",
"currency": "PEN",
"callbackUrl": "xxxxxxxx"
}
Parámetros de respuesta
code
String
Código de respuesta Referencia especifica: Códigos de estado de respuesta
msg
String
Descripción de la respuesta
data
Object
Datos de respuesta
merCode
String
ID de comerciante
merOrderNo
String
Número de pedido del comerciante
supefinaOrderNo
String
Número de pedido del supefina
amount
BigDecimal
Monto del pedido
currency
String
Moneda
url
String
Enlace de la transacción
Ejemplo de respuesta-Éxito
{
"code": "200",
"msg": "success ",
"data": {
"merCode": "xxxxxx",
"merOrderNo": "20240920195501",
"supefinaOrderNo": "2025011877295415489306624",
"amount": 100,
"url": "http://h5.supefina.tech/combineCashier?token=349472b99a184e0f9da91a3b290d4ad7",
"currency": "PEN"
}
}
Ejemplo de respuesta-Fracaso
{
"code": "400",
"msg": "param error customerName cannot be empty"
}
Notificación de callback
Método de envío: POST
amount
String
Monto del pedido
fee
String
Comision anticipada
identifier
String
Referencia de pago
merld
String
ID de comerciante
merOrderld
String
Número de pedido del comerciante
msg
String
Mensajes
nonceStr
String
Cadena aleatoria La longitud no puede exceder 32 caracteres
realityAmount
String
Monto recibido
realityFee
String
Comisión recibida
reference
String
Identificador
sign
String
Firma
status
String
Estado de la transacción Referencia especifica : Tabla de diccionario-Estado del pedido de transacción
successTime
String
Tiempo de éxito de la transacción
Hora UTC
supefinaOrderld
String
Número del pedido de Supefina
transactionType
String
Tipo de transacción
01
:Payin
02
:Payout
Ejemplo de notificación de callback
{
"amount": "230.00",
"countryId": "PER",
"customerName": "Test Name",
"fee": "6.90",
"identifier": "90911988431",
"merId": "8202980903390150",
"merOrderId": "17922853818122896811753697281175369728",
"nonceStr": "935111b9-968e-4b3d-9036-fd1acf",
"realityAmount": "230",
"realityFee": "6.90",
"reference": "90911988431",
"sign": "69DF96903B85CD1408BD6849C62254C0",
"status": "01",
"successTime": 1716149235000,
"supefinaOrderId": "202405190101010696298b1ca1141",
"transactionType": "01"
}
Respuesta de notificación de callback
Después de que el comerciante reciba correctamente la notificación de callback, debe devolver la cadena especificada: SUCCESS
. Si no se devuelve o se devuelve otro contenido, se considerará que la notificación ha fallado. Por ejemplo:
public String test(){
return "SUCCESS";
}
Última actualización