Cielo
Client para a API 3.0 da Cielo em node.js
Install / Use
/learn @banzeh/CieloREADME
cielo
Client para a API 3.0 da Cielo em Typescript/Nodejs
Índice
Início
Cartão de Crédito
- Criando uma transação simples
- Criando uma transação completa
- Criando uma venda com Autenticação
- Criando uma venda com Análise de Fraude
- Criando uma venda com Card Token
- Capturando uma venda
- Cancelando uma venda
Cartão de Débito
Transferência Eletrônica
Boleto
Recorrência
- Criando Recorrências
- Modificando Recorrências
- Modificando dados do comprador
- Modificando data final da Recorrência
- Modificando intevalo da Recorrência
- Modificando dia da Recorrência
- Modificando o valor da Recorrência
- Modificando data do próximo Pagamento
- Modificando dados do Pagamento da Recorrência
- Desabilitando um Pedido Recorrente
- Reabilitando um Pedido Recorrente
Cartões
Consultas
- Consultando as transações usando PaymentID
- Consultando as transações usando MerchandOrderID
- Consulta de Cardbin
- Consulta de Recorrência
- Consulta de cartão tokenizado
API Reference
Testes
Autor
License
<a name="instalacao"></a> Installation
npm install --save cielo
<a name="howuse"></a> Como utilizar?
Iniciando
import { CieloConstructor, Cielo } from 'cielo';
const cieloParams: CieloConstructor = {
merchantId: 'xxxxxxxxxxxxxxxxxxxxxxx',
merchantKey: 'xxxxxxxxxxxxxxxxxxxxxxxxxx',
requestId: 'xxxxxxx', // Opcional - Identificação do Servidor na Cielo
sandbox: true, // Opcional - Ambiente de Testes
debug: true // Opcional - Exibe os dados enviados na requisição para a Cielo
}
const cielo = new Cielo(cieloParams);
<a name="params"></a> Paramêtros de criação
| Campo | Descrição | Obrigatório? | Default | | :-------------: |:-------------:| :-----:| :-----:| | merchantId | Identificador da loja na Cielo. | Sim | null | | merchantKey | Chave publica para autenticação dupla na Cielo. | Sim | null | | requestId | Identificador do Request, utilizado quando o lojista usa diferentes servidores para cada GET/POST/PUT. | Não | null | | sandbox | Ambiente de testes da Cielo | Não | false | | debug | Exibe requisição da transação no console | Não | false |
<a name="creditCard"></a> Cartão de Crédito
<a name="creditSimpleTransaction"></a> Criando uma transação
Usando Promise
const vendaParams: TransactionCreditCardRequestModel = {
customer: {
name: "Comprador crédito",
},
merchantOrderId: "2014111703",
payment: {
amount: 10000, // R$100,00
creditCard: {
brand: EnumBrands.VISA,
cardNumber: "4532117080573700",
holder: "Comprador T Cielo",
expirationDate: "12/2021",
},
installments: 1,
softDescriptor: "Banzeh",
type: EnumCardType.CREDIT,
capture: false,
},
};
cielo.creditCard.transaction(dadosSale)
.then((data) => {
return console.log(data);
})
.catch((err) => {
return console.error('ERRO', err);
})
Ou usando Async / Await
const transaction = await cielo.creditCard.transaction(dadosSale);
console.log(transaction);
<a name="creditSaleCapture"></a> Capturando uma venda
const capturaVendaParams: CaptureRequestModel = {
paymentId: '24bc8366-fc31-4d6c-8555-17049a836a07',
amount: 2000, // Caso o valor não seja definido, captura a venda no valor total
};
cielo.creditCard.captureSaleTransaction(capturaVendaParams)
.then((data) => {
return console.log(data);
})
.catch((err) => {
return console.error('ERRO', err);
})
<a name="creditCancelSale"></a> Cancelando uma venda
const cancelamentoVendaParams: CancelTransactionRequestModel = {
paymentId: '24bc8366-fc31-4d6c-8555-17049a836a07',
amount: 100, // Caso o valor não seja definido, cancela a venda no valor total
};
cielo.creditCard.cancelTransaction(cancelamentoVendaParams)
.then((data) => {
return console.log(data);
})
.catch((err) => {
return console.error('ERRO', err);
})
Ou usando Async / Await
const cancel = await cielo.creditCard.cancelSale(dadosSale);
console.log(cancel);
<a name="debitCard"></a> Cartão de Débito
<a name="debitSimpleTransaction"></a> Criando uma venda simplificada
const debitCardTransactionParams: DebitCardSimpleTransactionRequestModel = {
merchantOrderId: "2014121201",
customer:{
name: "Paulo Henrique"
},
payment: {
type: EnumCardType.DEBIT,
amount: 15700,
provider: "Simulado",
returnUrl: "http://www.google.com.br",
debitCard:{
cardNumber: "4532117080573703",
holder: "Teste Holder",
expirationDate: "12/2022",
securityCode: "023",
brand: EnumBrands.VISA
}
}
}
cielo.debitCard.createSimpleTransaction(debitCardTransactionParams)
.then((data) => {
return console.log(data);
})
.catch((err) => {
return console.error('ERRO', err);
})
<a name="eletronic-transfer"></a> Pagamentos com Transferência Eletronica
<a name="eletronic-transfer-transaction"></a> Criando uma venda simplificada
const transferenciaEletronicaParams: EletronicTransferCreateRequestModel = {
merchantOrderId: '2017051109',
customer: {
name: 'Nome do Comprador',
identity: '12345678909',
identityType: 'CPF',
email: 'comprador@cielo.com.br',
address: {
street: 'Alameda Xingu',
number: '512',
complement: '27 andar',
zipCode: '12345987',
city: 'São Paulo',
state: 'SP',
country: 'BRA',
district: 'Alphaville',
},
},
payment: {
provider: 'Bradesco',
type: 'EletronicTransfer',
amount: 10000,
returnUrl: 'http://www.cielo.com.br',
},
};
cielo.eletronicTransfer.create(transferenciaEletronicaParams)(dadosSale)
.then((data) => {
return console.log(data);
})
.catch((err) => {
return console.error('ERRO', err);
})
<a name="boleto"></a> Boleto
<a name="boletoSale"></a> Criando uma venda de Boleto
const boletoParams: BankSlipCreateRequestModel = {
merchantOrderId: '20180531',
customer: {
name: 'Comprádor Boleto Cíéló Áá',
identity: '1234567890',
address: {
street: 'Avenida Marechal Câmara',
number: '160',
complement: 'Sala 934',
zipCode: '22750012',
district: 'Centro',
city: 'Rio de Janeiro',
state: 'RJ',
country: 'BRA'
}
},
payment: {
type: 'Boleto',
amount: 15700,
provider: 'Bradesco2',
address: 'Rua Teste',
boletoNumber: '123',
assignor: 'Empresa Teste',
demonstrative: 'Desmonstrative Teste',
expirationDate: '5/1/2020',
identification: '11884926754',
instructions: 'Aceitar somente até a data de vencimento, após essa data juros de 1% dia.'
}
}
cielo.bankSlip.create(boletoParams)
.then((data) => {
return console.log(data);
})
.catch((err) => {
return console.error('ERRO', err);
})
<a name="recorrencia"></a> Recorrência
<a name="creatingRecurrence"></a> Criando Recorrências
const createRecurrencyParams: RecurrentCreateModel = {
merchantOrderId: '2014113245231706',
customer: {
name: 'Comprador rec programada'
},
payment: {
type: EnumCardType.CREDIT,
amount: 1500,
installments: 1,
softDescriptor: '123456789ABCD',
currency: 'BRL',
country: 'BRA',
recurrentPayment: {
authorizeNow: true,
endDate: '2022-12-01',
interval: EnumRecurrentPaymentInterval.SEMIANNUAL
},
creditCard: {
cardNumber: '4024007197692931',
holder: 'Teste Holder',
expirationDate: '12/2030',
securityCode: '262',
saveCard: false,
brand: 'Visa' as EnumBrands
}
}
}
cielo.recurrent.create(createRecurrencyParams)
.then((data) => {
return console.l
