API de Integração Weepay (1.0.0)

Download OpenAPI specification:Download

Authentication

BasicAuth

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

transactions

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.

Criar uma transação

Cria uma transação com base nos dados informados

Authorizations:
Request Body schema: application/json
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

Responses

200

Transação recuperada com sucesso (TRANSAÇÃO NÃO CRIADA)

201

Transação criada com sucesso

400

Conteúdo inválido

401

Não autorizado (Autenticação não informada ou inválida)

402

Requisição falhou

408

Gateway timeout

422

Requisição inválida

post/transactions
/v1/transactions

Request samples

Content type
application/json
Copy
Expand all Collapse all
{
  • "reference_id": "string",
  • "amount": 0,
  • "description": "string",
  • "customer":
    {
    },
  • "statement_descriptor": "string",
  • "payment_method":
    {
    },
  • "split_rules":
    [
    ]
}

Response samples

Content type
application/json
Copy
Expand all Collapse all
{
  • "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":
    {
    },
  • "split_rules":
    [
    ]
}

Listagem de transações

Lista todas as transações do Seller

Authorizations:
query Parameters
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)

Responses

200

Listagem paginada com as transações do Lojista

400

Parâmetro(s) inválido(s)

401

Não autorizado (Autenticação não informada ou inválida)

get/transactions
/v1/transactions

Request samples

Copy
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);
});

Response samples

Content type
application/json
Copy
Expand all Collapse all
{
  • "items":
    [
    ],
  • "has_more": true,
  • "limit": 100,
  • "offset": 0,
  • "page": 0,
  • "total": 0,
  • "total_pages": 0
}

Consultar transação por ID

Retorna uma única transação para o ID informado

Authorizations:
path Parameters
transactionId
required
string

ID da Transação

Responses

200

Transação recuperada com sucesso

401

Não autorizado (Autenticação não informada ou inválida)

404

Transação não encontrada

get/transactions/{transactionId}
/v1/transactions/{transactionId}

Request samples

Copy
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);
});

Response samples

Content type
application/json
Copy
Expand all Collapse all
{
  • "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":
    {
    },
  • "split_rules":
    [
    ]
}

Capturar transação

Realiza a captura total de uma transação

Authorizations:
path Parameters
transactionId
required
string

ID da Transação

Responses

204

Transação capturada com sucesso

401

Não autorizado (Autenticação não informada ou inválida)

402

Requisição falhou

404

Transação não encontrada

post/transactions/{transactionId}/capture
/v1/transactions/{transactionId}/capture

Request samples

Copy
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);
});

Response samples

Content type
application/json
Copy
Expand all Collapse all
{
  • "message": "The capture request failed. Transaction could not be captured."
}

Estornar transação

Realiza o estorno (parcial ou total) de uma transação

Authorizations:
path Parameters
transactionId
required
string

ID da Transação

Request Body schema: application/json
amount
integer <int32> (amount)

Valor da venda a ser estornado, em centavos. Caso não informado será estornado o valor total da transação

Responses

204

Transação estornada com sucesso

401

Não autorizado (Autenticação não informada ou inválida)

402

Requisição falhou

404

Transação não encontrada

post/transactions/{transactionId}/void
/v1/transactions/{transactionId}/void

Request samples

Content type
application/json
Copy
Expand all Collapse all
{
  • "amount": 0
}

Response samples

Content type
application/json
Copy
Expand all Collapse all
{
  • "message": "Transactions with status canceled and with confirmed flag setted to 1 are not voidable"
}

transfers

Uma transferência (pagamento) é uma operação onde os fundos são enviados para uma conta bancária com depósito direto da ACH.

Listagem de transferências

Lista todas as transferências do Seller

Authorizations:
query Parameters
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)

Responses

200

Listagem paginada com as transferências do Lojista

400

Parâmetro(s) inválido(s)

401

Não autorizado (Autenticação não informada ou inválida)

get/transfers
/v1/transfers

Request samples

Copy
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);
});

Response samples