Saque
O saque é uma transferência, feita por meio de uma TED, entre a conta bancária do Pagar.me e a conta bancária cadastrada no seu recebedor. Os saques que forem feitos até as 15h do mesmo dia terão o seu valor creditado também no mesmo dia. Existe um custo de R$3,67 caso não seja para uma conta Bradesco.
É possível utilizar dois tipos de saque no Pagar.me, o automático e o manual. Se você quiser saber mais sobre os tipos de saque, acesse: Tipos de saque.
1. Dashboard
A forma mais simples de se fazer um saque é utilizando a nossa Dashboard, conforme mostra a imagem abaixo:
2. API
Também é possível realizar o saque diretamente pela nossa API. Para fazer um saque de valores que estejam disponíveis no seu saldo Pagar.me, é preciso especificar para a API alguns parâmetros:
api_key | Sua API Key para autenticação. |
recipient_id | Este é o id do recebedor que ficará com a quantia solicitada. Por meio da conta bancária cadastrada. Veja mais em: Recebedores. |
amount | Valor que deseja sacar. Lembrando que deve estar em centavos, sendo que R$100,00 equivale a 10000 . |
Veja o exemplo:
curl -X POST https://api.pagar.me/1/transfers -H 'content-type: application/json' -d '{
"amount": "10000",
"api_key": "SUA API KEY",
"recipient_id": "re_ci9bucss300h1zt6dvywufeqc"
}'
require 'pagarme'
PagarMe.api_key = 'SUA API KEY'
PagarMe::Recipient.find(recipient_id).receive amount
<?php
require("vendor/autoload.php");
$pagarme = new PagarMe\Client('SUA_CHAVE_DE_API');
$transfer = $pagarme->transfers()->create([
'amount' => 1000,
'recipient_id' => 're_cjeptpdyg03u3cb6elj68p5ej'
]);
PagarMeService.DefaultApiKey = "SUA API KEY";
var transfer = new Transfer()
{
RecipientId = "re_ci9bucss300h1zt6dvywufeqc",
Amount = 10000
}
transfer.Save();
import pagarme from 'pagarme'
pagarme.client.connect({ api_key: 'SUA_API_KEY' })
.then(client => client.transfers.create({
amount: 10000,
bank_account_id: 'bank_account_id',
recipient_id: 'recipient_id',
}))
.then(transfer => console.log(transfer))
import pagarme
pagarme.authentication_key('SUA_API_KEY')
transfer_params = {
'amount': '10000',
'recipient_id': 'RECIPIENT_ID'
}
transfer = pagarme.transfer.create(transfer_params)
print (transfer)
Basta fazer isso para conseguir realizar um saque para a sua conta bancária.
O retorno imediato de um saque junto à API Pagar.me é:
{
"object": "transfer",
"id": 31203,
"amount": 10000,
"type": "ted",
"status": "pending_transfer",
"source_type": "recipient",
"source_id": "re_cimcpc2qc002za46d9dt4vfok",
"target_type": "bank_account",
"target_id": "12298597",
"fee": 367,
"funding_date": null,
"funding_estimated_date": "2017-01-23T02:00:00.000Z",
"transaction_id": null,
"date_created": "2017-01-22T15:35:17.375Z",
"bank_account": {
"object": "bank_account",
"id": 12298597,
"bank_code": "000",
"agencia": "0000",
"agencia_dv": null,
"conta": "00000",
"conta_dv": "0",
"type": "conta_corrente",
"document_type": "cnpj",
"document_number": "00000000000000",
"legal_name": "CONTA BANCARIA DE TESTES",
"charge_transfer_fees": true,
"date_created": "2016-03-29T00:45:13.023Z"
}
}
Cancelando um saque
Você pode também cancelar um saque pela API Pagar.me da seguinte maneira:
curl -X POST https://api.pagar.me/1/transfers/31203/cancel -H 'content-type: application/json' -d '{
"api_key": "SUA API KEY"
}'
import pagarme from 'pagarme'
pagarme.client.connect({ api_key: 'SUA_API_KEY' })
.then(client => client.transfers.cancel({
id: 'transfer_id'
}))
import pagarme
pagarme.authentication_key('SUA_API_KEY')
transfer = pagarme.transfer.cancel("transfer_id")
print (transfer)
<?php
require("vendor/autoload.php");
$pagarme = new PagarMe\Client('SUA_CHAVE_DE_API');
$canceledTransfer = $pagarme->transfers()->cancel([
'id' => 'ID_DA_TRANSFERÊNCIA'
]);
Cuidado
Só é possível cancelar um saque enquanto o status dele no Pagar.me ainda estiver
pending_transfer
.
Quando você solicita o cancelamento de um saque, o retorno da API Pagar.me é:
{
"object": "transfer",
"id": 31203,
"amount": 10000,
"type": "ted",
"status": "canceled",
"source_type": "recipient",
"source_id": "re_cimcpc2qc002za46d9dt4vfok",
"target_type": "bank_account",
"target_id": "12298597",
"fee": 367,
"funding_date": null,
"funding_estimated_date": "2017-01-23T02:00:00.000Z",
"transaction_id": null,
"date_created": "2017-01-22T15:35:17.375Z",
"bank_account": {
"object": "bank_account",
"id": 12298597,
"bank_code": "000",
"agencia": "0000",
"agencia_dv": null,
"conta": "00000",
"conta_dv": "0",
"type": "conta_corrente",
"document_type": "cnpj",
"document_number": "00000000000000",
"legal_name": "CONTA BANCARIA DE TESTES",
"charge_transfer_fees": true,
"date_created": "2016-03-29T00:45:13.023Z"
}
}
Updated almost 6 years ago