Download the PHP package iappapedroza/erede-php-v2 without Composer
On this page you can find all versions of the php package iappapedroza/erede-php-v2. It is possible to download/install these versions without Composer. Possible dependencies are resolved automatically.
Download iappapedroza/erede-php-v2
More information about iappapedroza/erede-php-v2
Files in iappapedroza/erede-php-v2
Package erede-php-v2
Short Description PHP SDK para integração com a API eRede v2 (OAuth 2.0)
License MIT
Informations about the package erede-php-v2
SDK PHP — eRede API v2
SDK oficial de integração eRede para PHP.
v2 — Migrado para a API eRede v2 com autenticação OAuth 2.0 (
client_credentials).
O suporte à autenticação Basic Auth (API v1) foi removido.
Funcionalidades
Este SDK possui as seguintes funcionalidades:
- Autorização de transações (crédito e débito)
- Captura
- Consultas (por TID e por referência)
- Cancelamento / Estorno
- 3DS2 (autenticação de transações)
- Zero dollar (validação de cartão)
- IATA (transações aéreas)
- MCC dinâmico
- Tokenização de cartão (
cardToken+tokenCryptogram) - Transações recorrentes e card-on-file (
transactionLinkId,brandTid) - OAuth 2.0 com renovação automática de token (cache com buffer de 60 s)
Instalação
Dependências
- PHP >= 8.1
- Extensão
curlhabilitada - Extensão
jsonhabilitada
Instalando o SDK
O pacote está disponível no Packagist.
Se já possui um arquivo composer.json, basta adicionar a seguinte dependência ao seu projeto:
Com a dependência adicionada ao composer.json, basta executar:
Alternativamente, você pode executar diretamente em seu terminal:
Testes
O SDK utiliza PHPUnit com TestDox para os testes. Para executá-los em ambiente local, você precisa exportar
as variáveis de ambiente REDE_PV e REDE_TOKEN com suas credenciais da API. Feito isso, basta rodar:
Os testes também podem ser executados através de um container com a configuração ideal para o projeto. Para isso, basta fazer:
export REDE_DEBUG=1 bash composer require guzzlehttp/guzzle
Ambas as implementações respeitam a interface `OAuthServiceInterface`, portanto qualquer
solução customizada pode ser injetada da mesma forma:
# Utilizando
> Todos os exemplos assumem os imports do namespace `ItsTecnologiaErede`. Adicione no topo de cada arquivo:
>
## Autorizando uma transação
Por padrão, a transação é capturada automaticamente; caso seja necessário apenas autorizar a transação, o método `Transaction::capture()` deverá ser chamado com o parâmetro `false`:
## Adiciona configuração de parcelamento
## Adiciona informação adicional de gateway e módulo
## Autorizando uma transação com MCC dinâmico
## Autorizando uma transação IATA
## Capturando uma transação
## Cancelando uma transação
## Consultando uma transação pelo ID
## Consultando uma transação pela referência
## Consultando cancelamentos de uma transação
## Transação com autenticação
## Autorizando via Token de Cartão (Cofre)
Utilize o `cardToken` (tokenizationId retornado pelo cofre de cartões da Rede) no lugar do número do cartão.
Para transações com token de bandeira (network token), informe também o `tokenCryptogram` (Base64).
## Transações Recorrentes e Card-on-File
Para recorrência Mastercard e transações card-on-file, utilize o `transactionLinkId` para correlacionar as cobranças.
O campo `brandTid` (identificador da transação na bandeira, alfanumérico, até 21 caracteres) é retornado pela API.
## Lendo campos novos na resposta (Brand v2)
---
# Changelog
## v2.0.0 — 2026-02-27
### Quebra de compatibilidade
- **Autenticação**: removida a autenticação Basic Auth (`CURLOPT_USERPWD`). A API v2 exige **OAuth 2.0**.
### Novas funcionalidades
- **`OAuthServiceInterface`**: contrato injetável para provedores de token OAuth; permite substituir a implementação padrão (cURL) por qualquer outra sem alterar o código do SDK.
- **`OAuthService`** (cURL): implementação padrão; obtém e renova o `access_token` via fluxo `client_credentials`; token armazenado em cache no `Store` com buffer de 60 s; `curl_close()` removido (deprecated no PHP 8.0+ com `CurlHandle`).
- **`GuzzleOAuthService`**: implementação alternativa baseada em `guzzlehttp/guzzle ^7`; aceitada pelo construtor de `eRede` via `oauthService:` ou injetada diretamente em qualquer serviço.
- **`AbstractService::setOAuthService()`**: permite injetar um provedor OAuth customizado em qualquer serviço individualmente.
- **`eRede`**: novo parâmetro opcional `oauthService: OAuthServiceInterface` no construtor; propagado automaticamente para todos os serviços internos.
- **`Environment`**: versão atualizada para `v2`; novos endpoints de sandbox e OAuth; método `getOAuthEndpoint()`.
- **`Store`**: métodos `getAccessToken()`, `setAccessToken()`, `invalidateAccessToken()` para gerência do ciclo de vida do token.
- **`Transaction`**: novos campos:
- `orderId` — código do pedido para rastreamento
- `cardToken` — token do cofre de cartões (substitui o número do cartão)
- `tokenCryptogram` — criptograma Base64 para network tokens de bandeira
- `transactionLinkId` — correlação entre transações recorrentes / card-on-file Mastercard
- `brandTid` — tipo alterado de `int` para `string` (alfanumérico, até 21 chars)
- **`Brand`**: novos campos retornados pela API:
- `authorizationCode` — código de autorização do emissor
- `merchantAdviceCode` — MAC Mastercard (indica ação sugerida pelo emissor)
- `brandTid` — identificador da transação na bandeira
- `transactionLinkId` — correlação para recorrência Mastercard
- **`composer.json`**: corrigido JSON inválido (vírgula ausente e campo `version` removido de `authors`); Guzzle adicionado como dependência sugerida (`suggest`).
### Endpoints
| Ambiente | Transações | OAuth |
|---|---|---|
| Produção | `https://api.userede.com.br/erede/v2/transactions` | `https://api.userede.com.br/redelabs/oauth2/token` |
| Sandbox | `https://sandbox-erede.useredecloud.com.br/v2/transactions` | `https://rl7-sandbox-api.useredecloud.com.br/oauth2/token` |All versions of erede-php-v2 with dependencies
ext-curl Version *
ext-json Version *
psr/log Version ^1.0 || ^2.0 || ^3.0