Payouts (Brazil)

Call the Payouts API to request withdrawal for your customer.


POST /v1/payout

Request

curl -v --location --request POST 'https://sandbox.smartfastpay.com/v1/payout' \
    --header 'Content-Type: application/json' \
    --header 'Authorization: Bearer <Access-Token>' \
    --data-raw '{
        "customer_id": "d9e9557e-11a5-49df-b51b-d513a7f5b348",
        "name": "Jane Doe",
        "email": "richard@roe.com",
        "document": "86423835004",
        "amount": 980,
        "currency": "USD",
        "pix": {
            "key": "3cd9ae47-78d7-4982-af50-3d3e078hf2gf"
        },
        "bank": {
            "name": "Banco Itaú",
            "code": "341",
            "agency": "1243",
            "account": "213846-2",
            "account_operation": "013"
        },
        "callback": "http://mysite.com/api/notification",
        "transaction": {
            "id": "22dd9e47-97c7-4982-af50-3d3e0782d054"
        }
    }'

Parameters details

Parameter
Type
Required
Description

customer_id

string min: 1 | max: 255

yes

The customer id stored on your platform for future identification.

branch

string min: 1 | max: 255

no

When the merchant needs to keep track of its various offices / branch, this field must be fill.

name

string min: 3 | max: 150

yes

Name of the customer who started the transaction.

email

string min: 30 | max: 255

yes

Email of the customer who started the transaction.

document

string Format: 99999999999

yes

Brazilian document (CPF) of the customer who started the transaction. - Must be a valid CPF document; Eg: 12345678909

amount

decimal (10,2) min: 2

yes

The amount that the client specified when initiating the transaction showed IN DOLLARS (use dot instead of comma) Eg: 300.10

currency

string (3) (USD or BRL) min: 3 | max: 3

no

The currency type that the amount will be credited. If USD is provided there will be a conversion from USD to BRL, if BRL is provided there will be no conversion. This parameter is optional, if currency isn't provided it will auto-select USD. Default: USD

payout_method

string (bank_transfer or pix) Default: pix when not informed

yes

The payment method your customer will use. If bank_transfer is provided, we will return bank information for deposit, but if the provided is pix, the information for pix will be returned.

callback

string min: 30 | max: 250 (Method: POST)

yes

The URL in you site that our API will notify when the payment changes the status, the HTTP supported method should be HTTP Eg: http://my-url-callback/

transaction

id

string min: 1 | max: 255

yes

The id of the transaction generated in you platform.

bank

name

string min: 3 | max: 255

no

The name of the bank

code

string min: 1 | max: 10

no

The code of the bank provided by Banco Central (BC)

agency

string min: 4 | max: 10

no

The number of the bank agency that client have opened their account

account

string min: 3 | max: 80

no

The number of the bank account of the client

account_operation

string min: 3 | max: 80

no

The operation number or code of the bank account, some accounts have that code like Caixa Economica Federal in their saving account (conta poupança). It has the operation code 013. This field is not required, some banks don't have this code

pix

key

string min: 3 | max: 250

no

Pix key or reference

Response

{
    "requestId": "a2435636-5f69-447d-8e22-8382f62ef7dd",
    "data": {
        "id": "f569c39c-71c2-44a2-8f95-d5840886bbe3",
        "status": "pending",
        "values": {
            "total": "4958.80",
            "subtotal": "4958.80",
            "exchange": "5.06",
            "fee": 0
        }
    }
}

Response details

Parameter
Description

id

The created payout by the request made unique identificator. Can be used to verify the payout status in the GET /v1/payout/{id} endpoint

status

The current status of the payment. These are our statuses: pending, success, failed, onhold, returned, refunded

values

total

The full value of the transaction, including service fees. Decimal separator it a dot

subtotal

The value of the transaction, without service fees. Decimal separator it a dot

exchange

The exchange rate applied to the current transaction

fee

The service fee value


GET /v1/payout/{id}

Request

curl -v --location --request GET 'https://sandbox.smartfastpay.com/v1/payout/{id}' \
    --header 'Content-Type: application/json' \
    --header 'Authorization: Bearer <Access-Token>' \'

Response

{
    "requestId": "a2435636-5f69-447d-8e22-8382f62ef7dd",
    "data": {
        "id": "f569c39c-71c2-44a2-8f95-d5840886bbe3",
        "customer_id": "d9e9557e-11a5-49df-b51b-d513a7f5b348",
        "transaction_id": "22dd9e47-97c7-4982-af50-3d3e0782d054",
        "amount": "980.00",
        "currency": "USD",
        "status": "pending",
        "created_at": "2021-11-11T19:08:20.000000Z",
        "updated_at": "2021-11-11T19:08:20.000000Z"
    }
}

Response details

Parameter
Description

id

The created payment by the request made unique identificator.

customer_id

The customer id stored on your platform for future identification.

transaction_id

The id of the transaction generated in you platform.

amount

The amount that the client specified when initiating the transaction showed IN DOLLARS (use dot instead of comma)

currency

The currency type that the amount will be credited. If USD is provided there will be a conversion from USD to BRL, if BRL is provided there will be no conversion.

status

The current status of the payment. These are our statuses: pending, success, failed, onhold, returned, refunded

created_at

The date and time the transaction was created.

updated_at

The date and time the transaction was updated with new status.


GET /v1/payouts

Request

# Without parameters

curl -v --location --request GET 'https://sandbox.smartfastpay.com/v1/payouts' \
    --header 'Content-Type: application/json' \
    --header 'Authorization: Bearer <Access-Token>' \'
# With parameters

curl -v --location --request GET 'https://sandbox.smartfastpay.com/v1/payouts?limit=1&order=id,desc' \
    --header 'Content-Type: application/json' \
    --header 'Authorization: Bearer <Access-Token>' \'

Parameter
Type
Description

limit

integer min: 1 | max: 40

The number of items to return in the response.

page

integer min: 1 | max: 9999999

The page number indicating which set of items will be returned in the response. So, the combination of page=1 and limit=20 returns the first 20 items. The combination of page=2 and limit=20 returns items 21 through 40.

sort

string Format: item,(asc|desc)

Sorts the items in the response by filter in ascending or descending order. Eg.: sort=id,desc (This combination returns a list in descending order based on id.)

start_time

string Internet date and time format

The start date and time for the range to show in the response, in Internet date and time format. Eg.: start_time=2021-09-05T11:00:00Z.

end_time

string Internet date and time format

The end date and time for the range to show in the response, in Internet date and time format. Eg.: end_time=2021-09-05T11:00:00Z.

customer_id

string min: 1 | max: 255

Sorts the items in the response by looking for the customer_id that was once provided by your system.

transaction_id

string

Sorts the items in the response by looking for the transaction_id that was once provided by your system. To get multiple transaction_id, send each transaction_id separating by comma (,). Eg.: 8fecdfcc-4e4d-11ee,8fece5ee-4e4d-11ee, d42953be-4e4d-11ee

Response

{
    "requestId": "a2435636-5f69-447d-8e22-8382f62ef7dd",
    "data": [
        {
            "id": "897c9e20-1262-4679-a850-403d37b2a727",
            "customer_id": "d9e9557e-11a5-49df-b51b-d513a7f5b348",
            "transaction_id": "22dd9e47-97c7-4982-af50-3d3e0782d054",
            "amount": "980.00",
            "currency": "USD",
            "status": "pending",
            "created_at": "2021-11-11T19:08:20.000000Z",
            "updated_at": "2021-11-11T19:08:20.000000Z"
        },
        {
            "id": "f569c39c-71c2-44a2-8f95-d5840886bbe3",
            "customer_id": "58f0c005-3b7d-4c75-81f3-93b9a6fee864",
            "transaction_id": "b08e3897-6505-4bb4-81a5-6e3a1d29e277",
            "amount": "300.00",
            "currency": "USD",
            "status": "pending",
            "created_at": "2021-11-11T19:08:20.000000Z",
            "updated_at": "2021-11-11T19:08:20.000000Z"
        }
    ]
}

Response details

Parameter
Description

id

The created payment by the request made unique identificator.

customer_id

The customer id stored on your platform for future identification.

transaction_id

The id of the transaction generated in you platform.

amount

The amount that the client specified when initiating the transaction showed IN DOLLARS (use dot instead of comma)

currency

The currency type that the amount will be credited. If USD is provided there will be a conversion from USD to BRL, if BRL is provided there will be no conversion.

status

The current status of the payment. These are our statuses: pending, success, failed, onhold, returned, refunded

created_at

The date and time the transaction was created.

updated_at

The date and time the transaction was updated with new status.

Last updated