SPEI
(payProduct=15)
Payment Process

The user places an order on the merchant's website and selects SPEI for payment;
The merchant initiates an SPEI payment request to Supefina;
Supefina returns the payment reference (CLABE account) information; When "checkOut" is "true", it will return the cashier page with the CRABE account number, and when "checkOut" is "false", it will only return the CRABE account number;
The merchant will show the payment reference (CRABE account) to the user;
The user copies the payment reference (CLABE account number);
The user opens the bank APP and selects the transfer, and enters the copied payment reference (CRABE account number) and amount to complete the transfer;
Supefina notifies the merchant that the order is successful.
The address of the request
SandBox
POST
https://api.supefina.tech/api/supefina/transactions/payin
Formal environment
POST
https://api.supefina.net/api/supefina/transactions/payin
Request parameters
Request header
Content-Type
application/json
Request body
maxOrderAmount
String
No
Maximum order value The order amount must be greater than or equal to
minOrderAmount
String
No
Minimum order value
It must be less than or equal to the order amount
It is recommended to pass 00.00
orderAmount
String
Yes
The amount of the order
1. When the order amount (maximum and minimum) is not incoming, the user payment will verify the orderAmount
, and if the user's payment amount is not equal to the orderAmount
, the payment will be rejected.
2. If the order amount (maximum and minimum) is incoming, the amount of the interval will be verified.
3. The unit peso, which needs to be divided into decimal places, supports two decimal places.
4. If the order amount orderAmount
, repeat
, maxOrderAmount
, and minOrderAmount
parameters are used, and the payment amount does not meet the parameter requirements and the transaction is rejected, the channel will charge a fixed handling fee of 6 pesos, and the merchant shall bear the handling fee caused by the transaction rejection, please consider carefully.
repeat
Boolean
Yes
Whether Clabe is reused
true
: has been used multiple times
false
: a single use
merId
String
Yes
Merchant ID Merchant ID acquisition path: Supefina Merchant Background - Merchant Management - Basic Information - Merchant ID
merOrderNo
String
Yes
Merchant order number
nonceStr
String
Yes
Random strings The length cannot exceed 32 bits
Sample request
{
"callbackUrl": "https://test.com",
"countryId": "MEX",
"currency": "MXN",
"maxOrderAmount": "15000.00",
"merId": "8302636872670229",
"merOrderNo": "P1790641845848850466",
"minOrderAmount": "10.00",
"nonceStr": "1q5e7zgnbi4fvo9wqhtkpdbuk7fjson1",
"orderAmount": "30",
"payProduct": "15",
"repeat": true,
"sign": "5764FA39A22135F41F27FCB88EE28DEB"
}
Response parameters
data
Object
Response data
amount
BigDecimal
The amount of the order
channelName
String
Clabe's bank
identifier
String
Payment reference identifier Clabe
merCode
String
Merchant ID
merOrderNo
String
Merchant order number
transactionStatus
String
Order status Whether the initiation status of the order is successful or not has nothing to do with the real transaction status of the order.
00
: The order is successful
04
: Failed to place an order
url
String
Transaction links
msg
String
Response description
Sample response
{
"code": "200",
"data": {
"amount": 30,
"channelName": "ARCUS",
"identifier": "706180968985601627",
"merCode": "8302636872670229",
"merOrderNo": "P1790641845848850466",
"transactionStatus": "00",
"url": "https://h5.supefina.net/clabe?token=45i1YayxSq4f3zQ="
},
"msg": "success "
}
Callback notifications
Submission method:POST
payerName
String
Payer's Name
payerAccount
String
Payer's Account Number
amount
String
The amount of the order
fee
String
Advance handling fee will be charged
identifier
String
Payment Reference Clabe
merId
String
Merchant ID
merOrderId
String
Merchant order number
msg
String
Response description
nonceStr
String
Random strings The length cannot exceed 32 bits
realityAmount
String
Paid-in amount
realityFee
String
Actual handling fee
reference
String
identifier
sign
String
signature
successTime
Date
The time at which the transaction was successful UTC time
supefinaOrderId
String
Supefina order number
transactionType
String
The type of transaction
01
: Payin
02
: Payout
An example of a callback notification
{
"payerName": "TEST",
"payerAccount": "646150996402711110",
"amount": "30.00",
"countryId": "MEX",
"fee": "3.30",
"identifier": "706180968985601627",
"merId": "8302636872670229",
"merOrderId": "P1790641845848850466",
"msg": "SUCCESS",
"nonceStr": "03aeeb11-0ad8-42dd-9f00-be1aae",
"realityAmount": "30.00",
"realityFee": "3.30",
"reference": "3843CP03202405190062858560",
"sign": "27C5933E426DD7A9EABD5C9D50F6BEBE",
"status": "01",
"successTime": 1715757366244,
"supefinaOrderId": "202405150301469d1e0b38e7fdc46",
"transactionType": "01"
}
Callback notification response
After the merchant successfully receives the callback, it needs to return the specified string synchronously: SUCCESS
does not return or returns other content by default, and the notification fails As:
public String test(){
return "SUCCESS";
}
Última actualización