TransfersmileTransfersmile
  • EN
  • PT
  • ES
  • EN
  • PT
  • ES
  • Introduction
  • Payin API
    • Environments
    • Direct integration
      • Brazil
        • Credit Card
        • Pix
        • Lottery
        • Boleto
        • Deposit Express
        • Wallet
    • Notification
      • Security
    • Payin Detail
    • Refund
    • Plug-in & Tools
      • transfersmile JavaScript
      • transfersmile SDK
      • Get CreditCard Token
      • Supported Bank List Query
      • Installment Detail Query
    • Data
      • Payment Method
      • Data for test (Sandbox)
      • Payin Status
      • Icon of methods
    • API Code
  • Payout API
    • Environments
    • Security
    • Submit a payout
      • transfersmile Wallet
        • WebView Example
        • H5 Authorization
        • Native App Authorization
        • Send Prizes
      • Brazil
        • Pix
        • BankTransfer
    • Notification
    • Payout DryRun
    • Account Balance
    • Payout Status
    • Payout List
    • Payout Detail
    • Payment Method
    • Data for test
    • Bank Code
      • Bank in Brazil
    • API Code

Notification

How to verify our notifications.

Once the payout is confirmed by the bank, transfersmile will send a notification to the merchant notification URL informing you of the result of the transaction. This URL is defined when submitting the payout transaction, by using the notify_url parameter for each payout request. Notification will retry 6 times when your processing failed.

Post

$notify_url which defined when submitting the payout transaction.

Notifcation

Notification Parameters

Parameters

Header

Content-Type*stringapplication/json; chartset=UTF-8
Authorization*stringSHA256($sorted_params + $app_key)

Body

payoutId*stringtransfersmile transaction id
custom_code*stringmerchant custom_code
status*stringPAID or REJECTED
msgstringsuccess or rejected message
timestamp*stringunix timestamp

Responses

200Merchant process the callback, and response "success"
success

Authorization Check

  • Get callback's body parameters, and sort them ascendingly.

  • Concatenate sorted_params with app_key.

  • Use sha256(sorted_params + app_key) to generate App Authorization.

  • Get transfersmile Authorization from callback's Header.

  • Verify if transfersmile Authorization matches with App Authorization.

Tip

When sorting parameters, strip the ones with no value.

Notification Events

  • PAID

  • REJECTED

  • REFUNDED

Tip

By now, both SPEI & transfersmile Wallet supported _REFUNDED_notification .

Notification Example

curl --location --request POST $your_notify_url \
--header 'Authorization: $transfersmile_authorization' \
--header 'Content-Type: application/json' \
--data-raw '{
    "payoutId": "TS202202071548044sGt3ADbmpGsPB",
    "custom_code": "custom_code_test",
    "status": "PAID",
    "msg": "success",
    "timestamp": 1628564650
}'

Notification Retries

transfersmile will send notifications with the following schedule of retries and confirmation awaiting times. You must return an HTTP STATUS 200 (OK) with response data "success" before the corresponding time expires. If not, it will be assumed that you did not receive it correctly and you will be notified again.

It is recommended that you respond to the notification before executing business logic or prior to accessing external resources so as not to exceed the estimated response times.

This communication is exclusively between the servers of transfersmile and your server, so there will not be a physical user seeing any type of result.

EventTime after first dispatch
Dispatch--
1st retry10 minutes
2nd retry30 minutes
3rd retry60 minutes
4th retry120 minutes
5th retry360 minutes
6th retry840 minutes

Tip

Our notifications will be sent from these IP addresses, please add them to your whitelist.

Prev
Submit a payout
Next
Payout DryRun