Ambiente
Base URLhttps://api.sancopay.com/api/v1
Arquivo para IA
Saques Pix

Envio em lote

Envia até 100 Pix numa chamada. Cada item é processado como um POST /payouts separado e tem o seu próprio resultado: um item recusado não impede os demais.

POST/payouts/batch

Envia vários Pix de uma vez.

Corpo da requisição

CampoTipoDescrição
itemsobrigatórioarrayDe 1 a 100 itens, cada um com o mesmo corpo do Enviar Pix.
items[].amountobrigatórionumberValor em reais. Mínimo 1.00. A taxa (fee) é debitada junto.
items[].referenceobrigatóriostringIdentificador do item; cada item precisa da sua.
items[].pixobrigatórioobjectChave Pix de destino.
items[].pix.typeobrigatóriostringcpf, cnpj, email, phone ou random.
items[].pix.keyobrigatóriostringA chave, até 255 caracteres, no formato do tipo.
items[].recipientopcionalobjectDados do titular da chave.
items[].recipient.tax_idcondicionalstringCPF ou CNPJ do titular da chave, até 20 caracteres.Obrigatório quando a sua conta exige, exceto se pix.type for cpf ou cnpj (a própria chave é usada).
items[].metadataopcionalobjectDados livres do seu sistema; voltam na resposta e nos webhooks.
items[].verify_keyopcionalbooleanSó com a validação de chave ativa. Padrão true: valida o titular antes de pagar (resposta 202). Envie false para confirmar o envio depois de conferir.
Requisição
curl -X POST "https://api.sancopay.com/api/v1/payouts/batch" \  -H "Authorization: Bearer <TOKEN>" \  -H "Content-Type: application/json" \  -d '{    "items": [      {        "amount": 250,        "reference": "SAQUE-0001",        "pix": {          "type": "email",          "key": "[email protected]"        },        "recipient": {          "tax_id": "98765432100"        },        "metadata": {          "invoice": "NF-778"        }      },      {        "amount": 80,        "reference": "SAQUE-0002",        "pix": {          "type": "phone",          "key": "+5511999998888"        },        "recipient": {          "tax_id": "11122233396"        }      }    ]  }'
Resposta

Sempre 200: o status de cada item fica em http_status e result é o corpo que o POST /payouts daria.

{  "items": [    {      "index": 0,      "http_status": 201,      "result": {        "id": 912,        "tracking_id": "9b7f3c2e-41d8-4a6e-b0c5-2f1e8d7a6c90",        "reference": "SAQUE-0001",        "status": "processing",        "amount": 250,        "fee": 1,        "total": 251,        "pix": {          "type": "email",          "key": "[email protected]",          "masked_key": "jo***@exemplo.com"        },        "recipient": {          "name": "JOAO PEREIRA",          "tax_id": "***.654.321-**",          "bank": "Banco Exemplo S.A."        },        "end_to_end_id": null,        "pre_approval_id": null,        "metadata": {          "invoice": "NF-778"        },        "failure_reason": null,        "created_at": "2026-11-09T15:04:05.000000Z",        "updated_at": "2026-11-09T15:04:05.000000Z"      }    },    {      "index": 1,      "http_status": 422,      "result": {        "message": "Dados inválidos",        "code": "validation_error",        "errors": {          "pix.key": [            "O campo chave Pix deve ser um telefone válido."          ]        }      }    }  ]}