Cash
(payProduct=03)
Proceso de pago

El usuario realiza un pedido en el sitio web del comerciante y elige pagar con Cash;
El comerciante envía una solicitud de pago con Cash a Supefina;
Supefina devuelve la información del código de pago con Cash;
El comerciante muestra el código de pago al usuario;
El usuario guarda la información del código de pago para realizar el pago en un punto de venta físico;
El pago se realiza correctamente;
Supefina notifica al comerciante que el pedido ha sido exitoso.
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 Unidad: pesos; se pueden ingresar decimales, admite hasta dos decimales.
merId
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
expireTimeL
long
No
Tiempo de expiración: no es necesario pasar.
fijo a 7*24*60*60=604800 segundos de expiración.
description
String
Sí
Descripción del pedido
merOrderNo
String
Sí
Número de pedido del comerciante
requestData
Object
Sí
Parámetros adicionales
businessUnit
String
Sí
Unidad de negocio
name
String
Sí
Nombre de la unidad de negocio
key
String
Sí
Identificador único de la unidad de negocio
showHtmlFlag
String
Sí
Mostrar página de cobro en HTML.
Página de cobro URL:1
customerEmail
String
No
Correo electrónico del cliente
appName
String
No
Nombre de la aplicación
nonceStr
String
Sí
Cadena aleatoria
La longitud no puede exceder 32 caracteres
Ejemplo de solicitud
{
"appName": "Supefina",
"callbackUrl": "http://test.com",
"countryId": "MEX",
"currency": "MXN",
"customerEmail": "[email protected]",
"description": "transas12121dasdasda",
"expireTimeL": 259200,
"merId": "8302109931230575",
"merOrderNo": "2025072919104648604106643",
"nonceStr": "ade2d8b720cc41bd8738b628ad8dfd0d",
"orderAmount": 20,
"payProduct": "03",
"requestData": {
"businessUnit": {
"name": "12",
"key": "111"
},
"showHtmlFlag": "1"
},
"sign": "1B7453071B3AB467A3E8F405234552AE"
}
ensamblar una cadena de firma
appName=Supefina&callbackUrl=http://test.com&countryId=MEX¤cy=MXN&[email protected]&description=transas12121dasdasda&expireTimeL=259200&merId=8302109931230575&merOrderNo=2025072919104648604106643&nonceStr=ade2d8b720cc41bd8738b628ad8dfd0d&orderAmount=20&payProduct=03&requestData={"businessUnit":{"name":"12","key":"111"},"showHtmlFlag":"1"}&key=10b8a891ff6a479e8135f3367c17e87d
Parámetros de respuesta
data
Object
Datos de respuesta
amount
BigDecimal
Monto del pedido
fee
BigDecimal
Comisión anticipada
merCode
String
ID de comerciante
merOrderNo
String
Número de pedido del comerciante
supefinaOrderNo
String
Número del pedido de Supefina
transactionStatus
String
Estado del pedido. Este estado indica si la solicitud fue exitosa, sin relación con el estado real de la transacción.
00
: Pedido exitoso;
04
: Pedido fallido.
url
String
Enlace de la transacción
msg
String
Descripción de la respuesta
Ejemplo de respuesta
{
"code": "200",
"msg": "success ",
"data": {
"merCode": "8302109931230575",
"merOrderNo": "2025072919104648604106643",
"supefinaOrderNo": "202507290301000b99dfd47bbba43",
"amount": 20,
"fee": 1.0,
"transactionStatus": "00",
"url": "https://h5.supefina.net/pagos?token=vd0u0n5e2rig8346"
}
}
Notificación de callback
Método de envío: POST
amount
String
Monto del pedido
countryId
String
Código del país.
Referencia: Tabla de diccionario - Códigos de país
fee
String
Comisión anticipada
identifier
String
Referencia de pago Clabe
merId
String
ID de comerciante
merOrderId
String
Número de pedido del comerciante
nonceStr
String
Cadena aleatoria
La longitud no puede exceder 32 caracteres
realityAmount
String
Monto recibido
realityFee
String
Comisión recibida
reference
String
Referencia de pago
Código de pago
sign
String
Firma
supefinaOrderId
String
Número del pedido de Supefina
transactionType
String
Tipo de transacción
01
:Payin
02
:Payout
Ejemplo de notificación de callback
{
"amount": "20.00",
"countryId": "MEX",
"fee": "1.00",
"merId": "8302109931230575",
"merOrderId": "2025072919104648604106643",
"nonceStr": "e2ffce1e-c54b-456d-8f5a-3cadfd",
"realityAmount": "20",
"realityFee": "1.00",
"reference": "CRTPPY8MAQ67WU8AUGWDPL4N25KCTOT",
"sign": "A89A7822C07E94CA68B814A4A3AC9902",
"status": "01",
"successTime": 1753787454313,
"supefinaOrderId": "202507290301000b99dfd47bbba43",
"transactionType": "01"
}
ensamblar una cadena de firma
amount=20.00&countryId=MEX&fee=1.00&merId=8302109931230575&merOrderId=2025072919104648604106643&nonceStr=e2ffce1e-c54b-456d-8f5a-3cadfd&realityAmount=20&realityFee=1.00&reference=CRTPPY8MAQ67WU8AUGWDPL4N25KCTOT&status=01&successTime=1753787454313&supefinaOrderId=202507290301000b99dfd47bbba43&transactionType=01&key=10b8a891ff6a479e8135f3367c17e87d
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