LuxtakLuxtak
  • Introduction
  • Payin API
    • Environments
    • All-In-One Checkout
      • Checkout Page (General)
      • Checkout Page (E-com)
    • Direct integration
      • Brazil
        • Pix
      • Mexico
        • Cash
        • CoDi
        • SPEI
      • Colombia
        • Wallet
        • PSE
      • Chile
        • Bank Transfer
        • Wallet
      • Peru
        • Bank Transfer
        • Cash
      • Ecuador
        • Bank Transfer
        • Cash
      • Russia
        • CreditCard
        • SBP
        • SberPay
        • TPay
        • Vault
      • Global
        • Crypto
        • Binance
      • Paraguay
        • PIXParaguay
    • Notification
      • Security
    • Recurring Payment
      • Support Target and Currency
    • Tokenization
    • Payin Detail
    • Refund
    • Data
      • Payment Method
      • Data for test (Sandbox)
      • Payin Status
      • Icon of methods
      • Country Code
    • API Code
  • Payout API
    • Environments
    • Security
    • Submit a payout
      • Brazil
        • Pix
      • Argentina
        • BankTransfer
      • Russia
        • SBP
        • BankTransfer
      • Global
        • Crypto
        • Binance
      • Paraguay
        • PIXParaguay
      • Mexico
        • SPEI
    • Notification
    • Account Balance
    • Payout Status
    • Payout List
    • Payout Detail
    • Payment Method
    • Data for test
    • Bank Code List
      • Bank in Mexico
      • Bank in Argentina
    • API Code

SPEI

Where to submit a payout by SPEI in Mexico.

Submit a payout by SPEI in Mexico

https://sandbox.luxtak.com/api/payout

Submit a payout by SPEI in Mexico

This endpoint allows you to submit a payout by SPEI in Mexico.

Parameters

Header

ParameterTypeDescription
Content-Type*stringapplication/json; chartset=UTF-8
AppId*stringYour App ID in payout platform
Authorization*stringSHA256($sorted_params + $app_key)

Body

ParameterTypeDescription
name*stringbeneficiary's name, length must between 5 and 40
phonestringbeneficiary's phone
- Max 15, valid phone -
emailstringbeneficiary 's email
- Max 64, valid email -
bank_code*numberbank code, see bank list
- Required when account_type is not clabe -
account*stringaccount
- 10 ~ 18 digits -
account_type*stringone of [debit | clabe]
document_id*stringbeneficiary document id
document_type*stringone of [RFC | CURP]
method*stringpayout method, e.g. SPEI
custom_code*stringmerchant payout id
fee_bear*stringAll fees charge to merchant or beneficiary
- One of: merchant, beneficiary -
amount*numberPayout Amount, 2 decimal numbers
- Min 1, Max 400,000 -
source_currency*stringMerchant Account Currency
One of: USD, EUR, GBP, MXN
arrival_currency*stringMXN for Mexico
notify_url*stringWhere luxtak will callback to
additional_remark*stringAdditional Remark
- Max Length: 40 -
country*stringMEX for Mexico

Responses

200: OK submit successfully
{
    "code": 200,
    "msg": "success",
    "time": 1628580845,
    "data": {
        "id": "S202108100734054iRiUZFPXfQM",
        "custom_code": "custom_code9982674851738108",
        "arrival_amount": "0.51",
        "arrival_currency": "MXN",
        "source_amount": "0.07",
        "source_currency": "USD",
        "status": "IN_PROCESSING"
    }
}
400: Bad Request order already existed
{
    "code": 4001020,
    "msg": "order already existed",
    "time": 1628580940,
    "data": {}
}
401: Unauthorized unauthorized
{
    "code": 4004003,
    "msg": "permission denied",
    "time": 1637224716,
    "data": {
        ... ...
    }
}
500: Internal Server Error fee not configured
{
    "code": 5001003,
    "msg": "fee not configured",
    "time": 1637224716,
    "data": {
        ... ...
    }
}
500: Internal Server Error balance insufficient
{
    "code": 5001102,
    "msg": "balance insufficient",
    "time": 1637224716,
    "data": {
        ... ...
    }
}
500: Internal Server Error system error
{
    "code": 5001000,
    "msg": "system error",
    "time": 1637224716,
    "data": {
        ... ...
    }
}

Example

curl --location --request POST 'https://sandbox.luxtak.com/api/payout' \
--header 'AppId: 94FAC**********************68548' \
--header 'Authorization: d6181db0d6548b94b162e75d095b59147172d914699f83b2bd17951a671b6302' \
--header 'Content-Type: application/json' \
--data-raw '{
    * "name" : "GUILHERME ****** SOUZA",
      "phone" : "468****068",
      "email" : "g******[email protected]",
    * "bank_code" : "40002",
    * "account" : "002010077777777771",
    * "account_type" : "clabe",
    * "document_id" : "CUP800****691",
    * "document_type" : "RFC",
    * "method" : "SPEI", // fixed value: SPEI
    * "custom_code" : "custom_code9982674851738108", // merchant order id
    * "fee_bear" : "merchant",
    * "amount" : "0.51",
    * "source_currency" : "MXN",
    * "arrival_currency" : "MXN", // fixed value: MXN
    * "notify_url" : "https://notify.url",
    * "additional_remark" : "luxtak payout test remark",
    * "country" : "MEX" // fixed value: MEX
}'

Tips

Note: 94FAC*****************68548 is luxtak's test App ID for sandbox, and d6181db0d6548b94b162e75d095b59147172d914699f83b2bd17951a671b6302 is authorization token associated with the test App ID.

Tips

In sandbox environment, please use 002010077777777771 as SPEI account for testing PAID payout, and the account 014027000005555558 for testing FAILED payout.

Example of SPEI account

Account TypeAccountDescription
clabe11223344556677889918 digits
debit112233445566778816 digits
phone552212345610 digits
Mexico document type

Mexican taxpayers could get RFC.

RFCs are 13 digits long for individuals, 12 for companies, and they’re made up of letters and numbers. The first 4 digits for individuals, or 3 for companies, are taken from the name, then there are six numbers denoting the date of birth or when the business was founded, and the end digits are check digits.

Mexican citizen or resident could get CURP.

It’s an 18-digit social security number for people living in Mexico. The 18 characters combine information deriving from your name, date and place of birth, and gender to create a unique code.

Mexico bank account

The first three digits of the bank account should be the last three digits of the bank code.

"bank_code":"90646",
"account":"64618**********1800"