Download OpenAPI specification:Download
A autenticação com as APIs REST do weepay devem ser realizadas por token utilizando Basic Auth.
Para autenticar, você deve utilizar o token recebido como username em seu cliente HTTP. Caso ele não tenha suporte a Basic Auth, você deverá adicionar um header HTTP, exemplo: Authorization: Basic enBrX3Rlc3RfRXpDa3pGRktpYkdRVTZIRnE3RVlWdXhJOg==.
Este token deve ser serializado da seguinte forma: base64Encode($token + ":")
Toda a comunicação deve ser criptografada via SSL/HTTPS. O header de autenticação deve ser enviado para todos os endpoints disponíveis na API.
Security Scheme Type | HTTP |
---|---|
HTTP Authorization Scheme | basic |
O recurso de transações é usado para debitar um cartão ou uma conta bancária eletronicamente via ACH.
Ele retorna um identificador exclusivo que pode ser posteriormente usado para emitir um reembolso integral ou parcial.
Você precisará de um método de pagamento válido (cartão ou conta bancária). Tanto o cartão como a conta bancária devem ser um token não usado ou um ID exclusivo existente já associado a um cliente. Alternativamente, você também pode usar um ID de pré-autorização.
Cria uma transação com base nos dados informados
reference_id | string Código de referência ÚNICO para esta transação (pode ser utilizado posteriormente como filtro para encontrar a transação). Caso informado um valor duplicado não será criada uma transação nova, será retornada a transação criada anteriormente. |
amount required | integer <int32> Valor, em centavos, da transação |
description required | string Descritivo da transação |
customer required | Customer (object) or SavedCustomer (object) |
statement_descriptor required | string Um descritor de declaração é o nome da empresa que aparece no extrato mensal do cartão de crédito do cliente. Permite que o cliente identifique rapidamente as transações reduzindo disputas e atendimento ao cliente |
payment_method required | any Dados da forma de pagamento |
split_rules | Array of objects (SplitRule) non-empty Array com as regras de Split da transação |
Transação recuperada com sucesso (TRANSAÇÃO NÃO CRIADA)
Transação criada com sucesso
Conteúdo inválido
Não autorizado (Autenticação não informada ou inválida)
Requisição falhou
Gateway timeout
Requisição inválida
{- "reference_id": "string",
- "amount": 0,
- "description": "string",
- "customer": {
- "document_number": "string",
- "email": "user@example.com",
- "name": "string",
- "birthdate": "2020-05-25",
- "phone_number": "string",
- "address": {
- "address": "string",
- "number": "string",
- "complement": "string",
- "neighborhood": "string",
- "zip_code": "string",
- "city": "string",
- "state": "st"
}
}, - "statement_descriptor": "string",
- "payment_method": {
- "payment_type": "boleto",
- "expiration_date": "2020-05-25",
- "body_instructions": {
- "line1": "PEDIDO 12345678900 - weepay",
- "line2": "NÃO RECEBER APÓS VENCIMENTO",
- "line3": "NÃO CONCEDER QUALQUER TIPO DE DESCONTO, ACRÉSCIMO OU PARCELAMENTO",
- "line4": "string"
}
}, - "split_rules": [
- {
- "recipient": "string",
- "amount": 0
}
]
}
{- "id": "004507a3cb2f4be6af99996b5dc3d309",
- "status": "new",
- "created_at": "2020-05-25T21:38:29Z",
- "updated_at": "2020-05-25T21:38:29Z",
- "reference_id": "string",
- "amount": 0,
- "fees": 0,
- "description": "string",
- "statement_descriptor": "string",
- "payment_method": {
- "payment_type": "boleto",
- "url": "string",
- "barcode": "string"
}, - "split_rules": [
- {
- "id": "string",
- "recipient": "string",
- "amount": 0
}
]
}
Lista todas as transações do Seller
limit | integer <int32> [ 1 .. 100 ] Default: 100 Limite de registros a serem retornados, podendo ser entre 1 e 100 |
sort | string Default: "time-descending" Enum: "time-descending" "time-ascending" Define a ordenação da consulta, com base na data de criação das transações |
offset | integer <int32> Default: 0 Ponto de início para paginação dos registros |
page | integer <int32> Default: 1 Página da consulta a ser retornada (deve ser usado este parâmetro ou o offset) |
status | string Example: status=pending,succeeded Status das transações (pode ser concatenado para filtrar mais de um status ao mesmo tempo) |
payment_type | string Example: payment_type=credit,boleto,debit,wallet Tipo de pagamento (pode ser concatenado para filtrar mais de um status ao mesmo tempo) |
reference_id | string Código de referência informado na criação da transação |
created_from | string <date-time> Example: created_from=2019-10-01T00:00:00Z Filtro para data de criação da transação (maior/igual) |
created_to | string <date-time> Example: created_to=2019-10-01T00:00:00Z Filtro para data de criação da transação (menor/igual) |
Listagem paginada com as transações do Lojista
Parâmetro(s) inválido(s)
Não autorizado (Autenticação não informada ou inválida)
var request = require("request"); var options = { method: 'GET', url: 'https://api.weepay.com.br/v1/transactions', qs: {limit: '10', page: '1', sort: 'time-descending'}, headers: { accept: 'application/json', authorization: 'Basic YjlhOTk4OWItN2I5My00YTkwLThmZTktMGE2NWUyNzhiOTNiOg==' } }; request(options, function (error, response, body) { if (error) throw new Error(error); console.log(body); });
{- "items": [
- {
- "id": "004507a3cb2f4be6af99996b5dc3d309",
- "status": "new",
- "created_at": "2020-05-25T21:38:29Z",
- "updated_at": "2020-05-25T21:38:29Z",
- "reference_id": "string",
- "amount": 0,
- "fees": 0,
- "description": "string",
- "statement_descriptor": "string",
- "payment_method": {
- "payment_type": "boleto",
- "url": "string",
- "barcode": "string"
}, - "split_rules": [
- {
- "id": "string",
- "recipient": "string",
- "amount": 0
}
]
}
], - "has_more": true,
- "limit": 100,
- "offset": 0,
- "page": 0,
- "total": 0,
- "total_pages": 0
}
Retorna uma única transação para o ID informado
transactionId required | string ID da Transação |
Transação recuperada com sucesso
Não autorizado (Autenticação não informada ou inválida)
Transação não encontrada
var request = require("request"); var options = { method: 'GET', url: 'https://api.weepay.com.br/v1/transactions/04fc9b6c27014c32bb014adb0ea3ff9e', headers: { accept: 'application/json', authorization: 'Basic YjlhOTk4OWItN2I5My00YTkwLThmZTktMGE2NWUyNzhiOTNiOg==' } }; request(options, function (error, response, body) { if (error) throw new Error(error); console.log(body); });
{- "id": "004507a3cb2f4be6af99996b5dc3d309",
- "status": "new",
- "created_at": "2020-05-25T21:38:29Z",
- "updated_at": "2020-05-25T21:38:29Z",
- "reference_id": "string",
- "amount": 0,
- "fees": 0,
- "description": "string",
- "statement_descriptor": "string",
- "payment_method": {
- "payment_type": "boleto",
- "url": "string",
- "barcode": "string"
}, - "split_rules": [
- {
- "id": "string",
- "recipient": "string",
- "amount": 0
}
]
}
Realiza a captura total de uma transação
transactionId required | string ID da Transação |
Transação capturada com sucesso
Não autorizado (Autenticação não informada ou inválida)
Requisição falhou
Transação não encontrada
var request = require("request"); var options = { method: 'POST', url: 'https://api.weepay.com.br/v1/transactions/04fc9b6c27014c32bb014adb0ea3ff9e/capture', headers: { accept: 'application/json', authorization: 'Basic YjlhOTk4OWItN2I5My00YTkwLThmZTktMGE2NWUyNzhiOTNiOg==' }, json: true }; request(options, function (error, response, body) { if (error) throw new Error(error); console.log(body); });
{- "message": "The capture request failed. Transaction could not be captured."
}
Realiza o estorno (parcial ou total) de uma transação
transactionId required | string ID da Transação |
amount | integer <int32> (amount) Valor da venda a ser estornado, em centavos. Caso não informado será estornado o valor total da transação |
Transação estornada com sucesso
Não autorizado (Autenticação não informada ou inválida)
Requisição falhou
Transação não encontrada
{- "amount": 0
}
{- "message": "Transactions with status canceled and with confirmed flag setted to 1 are not voidable"
}
Uma transferência (pagamento) é uma operação onde os fundos são enviados para uma conta bancária com depósito direto da ACH.
Lista todas as transferências do Seller
limit | integer <int32> [ 1 .. 100 ] Default: 100 Limite de registros a serem retornados, podendo ser entre 1 e 100 |
sort | string Default: "time-descending" Enum: "time-descending" "time-ascending" Define a ordenação da consulta, com base na data de criação das transferências |
offset | integer <int32> Default: 0 Ponto de início para paginação dos registros |
status | string (TransferStatus) Enum: "pending" "succeeded" "canceled" "failed" "paid" "scheduled" Status das transferências |
created_from | string <date-time> Example: created_from=2019-10-01T00:00:00Z Filtro para data de criação da transferência (maior/igual) |
created_to | string <date-time> Example: created_to=2019-10-01T00:00:00Z Filtro para data de criação da transferência (menor/igual) |
amount_from | integer <int32> Default: 0 Filtro por valor, em centavos, da transferência (maior/igual) |
amount_to | integer <int32> Default: 0 Filtro por valor, em centavos, da transferência (menor/igual) |
Listagem paginada com as transferências do Lojista
Parâmetro(s) inválido(s)
Não autorizado (Autenticação não informada ou inválida)
var request = require("request"); var options = { method: 'GET', url: 'https://api.weepay.com.br/v1/transfers', qs: {limit: '20', offset: '0', sort : 'time-descending'}, headers: { accept: 'application/json', authorization: 'Basic YjlhOTk4OWItN2I5My00YTkwLThmZTktMGE2NWUyNzhiOTNiOg==' } }; request(options, function (error, response, body) { if (error) throw new Error(error); console.log(body); });
{- "items": [
- {
- "id": "004507a3cb2f4be6af99996b5dc3d780",
- "type": "payout_automatic",
- "status": "pending",
- "amount": 0,
- "description": "string",
- "statement_descriptor": "string",
- "transfer_number": "string",
- "bank_account": {
- "id": "string",
- "holder_name": "string",
- "description": "string",
- "bank_name": "string",
- "bank_code": "string",
- "type": "checking",
- "account_number": "string",
- "routing_number": "string"
}, - "created_at": "2020-05-25T21:38:29Z",
- "updated_at": "2020-05-25T21:38:29Z",
- "transfer_date": "2020-05-25"
}
], - "has_more": true,
- "limit": 100,
- "offset": 0,
- "total": 0
}
Retorna uma única transferência para o ID informado
transferId required | string ID da transferência |
Transferência recuperada com sucesso
Não autorizado (Autenticação não informada ou inválida)
Transferência não encontrada
var request = require("request"); var options = { method: 'GET', url: 'https://api.weepay.com.br/v1/transfers/fd51ee01c1254f59a3bcb267849fe615', headers: { accept: 'application/json', authorization: 'Basic YjlhOTk4OWItN2I5My00YTkwLThmZTktMGE2NWUyNzhiOTNiOg==' } }; request(options, function (error, response, body) { if (error) throw new Error(error); console.log(body); });
{- "id": "004507a3cb2f4be6af99996b5dc3d780",
- "type": "payout_automatic",
- "status": "pending",
- "amount": 0,
- "description": "string",
- "statement_descriptor": "string",
- "transfer_number": "string",
- "bank_account": {
- "id": "string",
- "holder_name": "string",
- "description": "string",
- "bank_name": "string",
- "bank_code": "string",
- "type": "checking",
- "account_number": "string",
- "routing_number": "string"
}, - "created_at": "2020-05-25T21:38:29Z",
- "updated_at": "2020-05-25T21:38:29Z",
- "transfer_date": "2020-05-25"
}
O objeto cliente (customer) é usado para editar, excluir e atualizar os clientes, bem como para permitir reembolsos, assinaturas, inserir detalhes do cartão de crédito para um cliente, editar detalhes e, claro, fazer transações.
É possível incluir um customer manualmente ou informar os seus dados no momento de criação da transação, na segunda forma o customer é criado ou atualizado automaticamente com os dados enviados.
Cria um cliente com base nos dados informados
document_number required | string ^\d{11,14}$ CPF/CNPJ do cliente (apenas números) |
email required | string <email> E-mail do cliente |
name required | string Nome completo do cliente |
birthdate | string <date> Data de nascimento do cliente |
phone_number | string Número do telefone do cliente no formato E.164. Os números E.164 podem ter um máximo de quinze dígitos e geralmente são escritos da seguinte forma [+][código do país] [número do assinante, incluindo o código de área] |
address required | object (Address) Dados de endereço do cliente |
Cliente criado com sucesso
Conteúdo inválido
Não autorizado (Autenticação não informada ou inválida)
{- "document_number": "string",
- "email": "user@example.com",
- "name": "string",
- "birthdate": "2020-05-25",
- "phone_number": "string",
- "address": {
- "address": "string",
- "number": "string",
- "complement": "string",
- "neighborhood": "string",
- "zip_code": "string",
- "city": "string",
- "state": "st"
}
}
{- "id": "string",
- "created_at": "2020-05-25T21:38:29Z",
- "updated_at": "2020-05-25T21:38:29Z",
- "document_number": "string",
- "email": "user@example.com",
- "name": "string",
- "birthdate": "2020-05-25",
- "phone_number": "string",
- "address": {
- "address": "string",
- "number": "string",
- "complement": "string",
- "neighborhood": "string",
- "zip_code": "string",
- "city": "string",
- "state": "st"
}
}
Retorna um único cliente para o CPF/CNPJ informado
document_number required | string CPF/CNPJ do cliente |
Cliente recuperado com sucesso
Não autorizado (Autenticação não informada ou inválida)
Cliente não encontrado
var request = require("request"); var options = { method: 'GET', url: 'https://api.weepay.com.br/v1/customers/search', qs: {document_number: '88807751038'}, headers: {authorization: 'Basic YjlhOTk4OWItN2I5My00YTkwLThmZTktMGE2NWUyNzhiOTNiOg=='} }; request(options, function (error, response, body) { if (error) throw new Error(error); console.log(body); });
{- "id": "string",
- "created_at": "2020-05-25T21:38:29Z",
- "updated_at": "2020-05-25T21:38:29Z",
- "document_number": "string",
- "email": "user@example.com",
- "name": "string",
- "birthdate": "2020-05-25",
- "phone_number": "string",
- "address": {
- "address": "string",
- "number": "string",
- "complement": "string",
- "neighborhood": "string",
- "zip_code": "string",
- "city": "string",
- "state": "st"
}
}
Retorna um único cliente para o ID informado
customerId required | string ID do cliente |
Cliente recuperado com sucesso
Não autorizado (Autenticação não informada ou inválida)
Cliente não encontrado
var request = require("request"); var options = { method: 'GET', url: 'https://api.weepay.com.br/v1/customers/b4f633962b794ab8b94108620727a686', headers: {authorization: 'Basic YjlhOTk4OWItN2I5My00YTkwLThmZTktMGE2NWUyNzhiOTNiOg=='} }; request(options, function (error, response, body) { if (error) throw new Error(error); console.log(body); });
{- "id": "string",
- "created_at": "2020-05-25T21:38:29Z",
- "updated_at": "2020-05-25T21:38:29Z",
- "document_number": "string",
- "email": "user@example.com",
- "name": "string",
- "birthdate": "2020-05-25",
- "phone_number": "string",
- "address": {
- "address": "string",
- "number": "string",
- "complement": "string",
- "neighborhood": "string",
- "zip_code": "string",
- "city": "string",
- "state": "st"
}
}
Atualiza o cliente com base nos dados informados
document_number required | string ^\d{11,14}$ CPF/CNPJ do cliente (apenas números) |
email required | string <email> E-mail do cliente |
name required | string Nome completo do cliente |
birthdate | string <date> Data de nascimento do cliente |
phone_number | string Número do telefone do cliente no formato E.164. Os números E.164 podem ter um máximo de quinze dígitos e geralmente são escritos da seguinte forma [+][código do país] [número do assinante, incluindo o código de área] |
address required | object (Address) Dados de endereço do cliente |
Cliente atualizado com sucesso
Conteúdo inválido
Não autorizado (Autenticação não informada ou inválida)
Cliente não encontrado
{- "document_number": "string",
- "email": "user@example.com",
- "name": "string",
- "birthdate": "2020-05-25",
- "phone_number": "string",
- "address": {
- "address": "string",
- "number": "string",
- "complement": "string",
- "neighborhood": "string",
- "zip_code": "string",
- "city": "string",
- "state": "st"
}
}
{- "message": "request.body should have required property 'document_number'",
- "errors": [
- {
- "path": ".body.document_number",
- "message": "should have required property 'document_number'",
- "errorCode": "required.openapi.validation"
}
]
}
Cria um token de cartão para o cliente com base nos dados informados. Este token pode ser utilizado posteriormente no momento de criar a transação, informando o token ao invés de todos os dados do cartão.
card_number required | string [ 13 .. 19 ] characters Número do cartão |
holder_name required | string Nome do titular do cartão |
expiration_month required | string ^\d{2}$ Mês de vencimento do cartão (MM) |
expiration_year required | string ^\d{4}$ Ano de expiração do cartão (YYYY) |
security_code required | string ^\d{3}$ Código de segurança do cartão (CVC) |
Token de cartão criado com sucesso
Conteúdo inválido
Não autorizado (Autenticação não informada ou inválida)
Requisição falhou
Cliente não encontrado
{- "card_number": "stringstrings",
- "holder_name": "string",
- "expiration_month": "02",
- "expiration_year": "2014",
- "security_code": "123"
}
{- "id": "string",
- "card_brand": "string",
- "card_number": "string",
- "holder_name": "string",
- "expiration_month": "02",
- "expiration_year": "2014"
}
Retorna um único token de cartão do cliente para o ID informado
customerId required | string ID do cliente |
cardId required | string ID do cartão tokenizado |
Token de cartão do cliente recuperado com sucesso
Não autorizado (Autenticação não informada ou inválida)
Cliente ou token de cartão não encontrado
var request = require("request"); var options = { method: 'GET', url: 'https://api.weepay.com.br/v1/customers/b4f633962b794ab8b94108620727a686/cards/190a3b4c46714e89bb1f735609cc49b4', headers: {authorization: 'Basic YjlhOTk4OWItN2I5My00YTkwLThmZTktMGE2NWUyNzhiOTNiOg=='} }; request(options, function (error, response, body) { if (error) throw new Error(error); console.log(body); });
{- "id": "string",
- "card_brand": "string",
- "card_number": "string",
- "holder_name": "string",
- "expiration_month": "02",
- "expiration_year": "2014"
}
Deleta um Token de cartão do cliente com o ID informado
customerId required | string ID do cliente |
cardId required | string ID do cartão tokenizado |
Token de cartão do cliente deletado com sucesso
Não autorizado (Autenticação não informada ou inválida)
Cliente ou token de cartão não encontrado
var request = require("request"); var options = { method: 'DELETE', url: 'https://api.weepay.com.br/v1/customers/b4f633962b794ab8b94108620727a686/cards/190a3b4c46714e89bb1f735609cc49b4', headers: {authorization: 'Basic YjlhOTk4OWItN2I5My00YTkwLThmZTktMGE2NWUyNzhiOTNiOg=='} }; request(options, function (error, response, body) { if (error) throw new Error(error); console.log(body); });