Vorexy

Global Payments

Gateway de pagamentos global

Cobertura em America Latina, Asia e Africa. Voce integra uma unica API. O roteamento por pais, moeda e metodo de pagamento e feito automaticamente pela Vorexy.

Paises e Metodos Suportados

America Latina

PaisMoedaCodigoMetodo RecebimentoMetodo Saque
BrasilRealBRLPIXPIX (CPF/CNPJ/Email/Tel/EVP)
MexicoPeso mexicanoMXNTransferencia localSPEI (CLABE)
PeruSol peruanoPENTransferencia localTransferencia bancaria
ChilePeso chilenoCLPTransferencia localTransferencia bancaria
ColombiaPeso colombianoCOPPSE / TransferenciaConta bancaria
VenezuelaBolivarVESTransferencia localTransferencia bancaria
EquadorDolar (local)USDTransferencia localTransferencia bancaria
ArgentinaPeso argentinoARSTransferencia localTransferencia bancaria

Asia

PaisMoedaCodigoMetodo RecebimentoMetodo Saque
IndiaRupiaINRUPI / IMPSUPI (VPA) / IMPS / NEFT (IFSC)
IndonesiaRupiaIDRVirtual AccountTransferencia bancaria
RussiaRubloRUBTransferencia localTransferencia bancaria
FilipinasPesoPHPTransferencia localCartao / GCash
MalasiaRinggitMYRFPX / Online bankingTransferencia bancaria
PaquistaoRupiaPKREasyPaisa / JazzCashEasyPaisa / JazzCash
BangladeshTakaBDTbKash / NagadbKash / Nagad

Africa

PaisMoedaCodigoMetodo RecebimentoMetodo Saque
QueniaXelimKESM-PesaM-Pesa
NigeriaNairaNGNTransferencia bancariaConta bancaria (CBN)
TanzaniaXelimTZSTigo Pesa / AirtelMobile Money

Autenticacao

Todos os endpoints aceitam autenticacao via API Key (recomendada para server-to-server).

HeaderDescricao
X-Client-IdID do cliente da sua conta
X-API-KeyChave de API secreta

Os dois headers devem ser enviados juntos. Enviar apenas um resulta em erro 403 Forbidden.

Criar Cobranca (Pay-in)

POSThttps://vorexy.com/api/transaction/create

Exemplo - Brasil (BRL / PIX)

bash
curl --location 'https://vorexy.com/api/transaction/create' \
--header 'Content-Type: application/json' \
--header 'X-Client-Id: cli_abc123' \
--header 'X-API-Key: sk_live_xxxx' \
--header 'Idempotency-Key: order-BR-00451' \
--data '{
"amount": 25000,
"paymentMethod": "PIX",
"currency": "BRL",
"postbackUrl": "https://seusite.com/webhook",
"customer": {
"name": "Maria Souza",
"email": "maria@email.com",
"externalRef": "usr_789",
"document": { "number": "98765432100", "type": "CPF" }
},
"items": [{ "title": "Recarga de saldo", "unitPrice": 25000, "quantity": 1 }]
}'

Exemplo - Mexico (MXN)

bash
curl --location 'https://vorexy.com/api/transaction/create' \
--header 'Content-Type: application/json' \
--header 'X-Client-Id: cli_abc123' \
--header 'X-API-Key: sk_live_xxxx' \
--header 'Idempotency-Key: order-MX-00452' \
--data '{
"amount": 50000,
"paymentMethod": "TRANSFER",
"currency": "MXN",
"postbackUrl": "https://seusite.com/webhook",
"customer": {
"name": "Carlos Mendez",
"email": "carlos@email.com",
"document": { "number": "MEMC801201AB4", "type": "CURP" }
}
}'

Exemplo - India (INR / UPI)

bash
curl --location 'https://vorexy.com/api/transaction/create' \
--header 'Content-Type: application/json' \
--header 'X-Client-Id: cli_abc123' \
--header 'X-API-Key: sk_live_xxxx' \
--header 'Idempotency-Key: order-IN-00453' \
--data '{
"amount": 100000,
"paymentMethod": "UPI",
"currency": "INR",
"postbackUrl": "https://seusite.com/webhook",
"customer": {
"name": "Raj Kumar",
"email": "raj@email.com"
}
}'

Exemplo - Quenia (KES / M-Pesa)

bash
curl --location 'https://vorexy.com/api/transaction/create' \
--header 'Content-Type: application/json' \
--header 'X-Client-Id: cli_abc123' \
--header 'X-API-Key: sk_live_xxxx' \
--header 'Idempotency-Key: order-KE-00466' \
--data '{
"amount": 1000000,
"paymentMethod": "MPESA",
"currency": "KES",
"postbackUrl": "https://seusite.com/webhook",
"customer": {
"name": "John Mwangi",
"email": "john@email.com",
"phone": "+254712345678"
}
}'

Response (200 OK)

json
{
"data": {
"id": "202304151647256461949132800",
"externalRef": "usr_789",
"amount": 25000,
"companyId": 42,
"paymentMethod": "PIX",
"status": "WAITING_PAYMENT",
"pix": {
"brcode": "00020126580014br.gov.bcb.pix...",
"qrcode": "data:image/png;base64,iVBORw0KGgo...",
"txId": "202304151647256461949132800",
"expiresAt": "2023-04-16T15:47:25Z"
}
},
"status": 200,
"message": "Transacao criada e registrada com sucesso."
}

Criar Saque (Pay-out)

POSThttps://vorexy.com/api/withdraw/request

Idempotency-Key e obrigatorio no saque. Garante que a mesma requisicao nao gere dois saques em caso de retry.

Exemplo - Brasil (PIX)

bash
curl --location 'https://vorexy.com/api/withdraw/request' \
--header 'Content-Type: application/json' \
--header 'X-Client-Id: cli_abc123' \
--header 'X-API-Key: sk_live_xxxx' \
--header 'Idempotency-Key: wd-BR-user789-001' \
--data '{
"companyId": 42,
"amount": 5000,
"currency": "BRL",
"pixKey": "98765432100",
"pixKeyType": "CPF",
"creditorDocument": "98765432100",
"description": "Saque do usuario"
}'

Exemplo - Mexico (SPEI)

bash
curl --location 'https://vorexy.com/api/withdraw/request' \
--header 'Content-Type: application/json' \
--header 'X-Client-Id: cli_abc123' \
--header 'X-API-Key: sk_live_xxxx' \
--header 'Idempotency-Key: wd-MX-user790-001' \
--data '{
"companyId": 42,
"amount": 80000,
"currency": "MXN",
"description": "Pago al usuario",
"metadata": {
"beneficiaryName": "Carlos Mendez",
"accountNum": "032180000118359719",
"bankCode": "032",
"channel": "SPEI"
}
}'

Exemplo - India (UPI)

bash
curl --location 'https://vorexy.com/api/withdraw/request' \
--header 'Content-Type: application/json' \
--header 'X-Client-Id: cli_abc123' \
--header 'X-API-Key: sk_live_xxxx' \
--header 'Idempotency-Key: wd-IN-user792-001' \
--data '{
"companyId": 42,
"amount": 100000,
"currency": "INR",
"description": "User payout",
"metadata": {
"beneficiaryName": "Raj Kumar",
"vpa": "raj@oksbi",
"channel": "UPI"
}
}'

Exemplo - Quenia (M-Pesa)

bash
curl --location 'https://vorexy.com/api/withdraw/request' \
--header 'Content-Type: application/json' \
--header 'X-Client-Id: cli_abc123' \
--header 'X-API-Key: sk_live_xxxx' \
--header 'Idempotency-Key: wd-KE-user794-001' \
--data '{
"companyId": 42,
"amount": 50000,
"currency": "KES",
"description": "User payout",
"metadata": {
"beneficiaryName": "John Mwangi",
"accountNum": "254712345678",
"channel": "MPESA"
}
}'

Campos por Pais - Pay-out (metadata)

America Latina

PaisMoedaCampos em metadata
BrasilBRLpixKey, pixKeyType (top-level)
MexicoMXNbeneficiaryName, accountNum (CLABE), bankCode, channel: "SPEI"
ColombiaCOPbeneficiaryName, accountNum, bankCode, accountType, channel: "PSE"
ArgentinaARSbeneficiaryName, accountNum (CBU/CVU 22 dig), channel: "BANK_TRANSFER"

Asia

PaisMoedaCampos em metadata
India (UPI)INRbeneficiaryName, vpa (ex: user@oksbi), channel: "UPI"
India (IMPS)INRbeneficiaryName, accountNum, ifscCode, channel: "IMPS"
FilipinasPHPbeneficiaryName, cardNo (telefone GCash), channel: "GCASH"
PaquistaoPKRbeneficiaryName, accountNum, channel: "EASYPAISA" | "JAZZCASH"

Africa

PaisMoedaCampos em metadata
QueniaKESbeneficiaryName, accountNum (telefone), channel: "MPESA"
NigeriaNGNbeneficiaryName, accountNum (10 dig), bankCode (CBN), channel: "BANK_TRANSFER"
TanzaniaTZSbeneficiaryName, accountNum (telefone), channel: "TIGOPESA" | "AIRTEL"

Mapeamento de Status

Cobranca (Pay-in)

StatusSignificadoAcao
WAITING_PAYMENTAguardando pagamentoMostrar QR code / instrucoes
successfulPagamento confirmadoCreditar saldo / liberar pedido
failurePagamento falhouNotificar o usuario
refundedPagamento estornadoReverter credito

Saque (Pay-out)

StatusSignificadoAcao
processingEm processamentoAguardar callback
successfulSaque concluidoConfirmar ao usuario
failureSaque falhouEstornar saldo reservado
refundedSaque revertidoCreditar de volta

Boas Praticas

Idempotencia sempre

Envie Idempotency-Key em toda cobranca e saque. Use um ID unico do seu sistema.

Valores em centavos

amount e sempre um inteiro em centavos. R$ 10,50 = 1050, MXN 500 = 50000.

Implemente o webhook

Nao dependa de polling. O status final sempre chega via callback.

Nao confie no status inicial do saque

processing nao e definitivo. Um saque pode mudar de failure para successful horas depois.

Controle de duplicidade no webhook

O mesmo evento pode chegar mais de uma vez. Guarde os IDs processados e ignore repeticoes.