Documentação: Checkout edunext

Documentação: Checkout edunext


Guia para implementação do Checkout edunext em uma aplicação web.

Compra

A princípio montaremos o objeto composto pelos dados do formulário preenchidos pelo aluno/comprador, objeto esse que será o body da nossa request, contendo também as informações da distribuidora, montado da seguinte forma:

const compra = {

produto_id: 02, //Id do produto no Edunext

forma_pagamento_id: 1, //Id da forma de pagamento

tabela_preco_id: 32, //Tabela de preço que compõe as variações de preço por tipos de pagamento disponíveis para o produto.

}

Os dados do comprador podem ser diferentes dos dados do aluno, para o caso do comprador ser apenas o responsável financeiro. Caso o aluno seja o responsável financeiro, os dados se repetem.

compra.comprador = {

nome: 'xxxx',

cpf: 'xxx.xxx.xxx-xx',

telefone_pais: 'xx',

telefone_ddd: 'xx',

telefone: 'xxxxx-xxxx',

email: 'xxxx@xxxxx',

endereco: 'xxxxxxxxxxxxxx',

endereco_numero: 'xxx',

complemento: 'xxxx',

bairro: 'xxxxx',

cidade: 'xxx xxxx',

estado: 'xx',

pais: 'xxxxxx',

cep: 'xxxxx-xxx'

}


compra.aluno = {

nome: 'xxxx',

cpf: 'xxx.xxx.xxx-xx',

telefone_pais: 'xx',

telefone_ddd: 'xx',

telefone: 'xxxxx-xxxx',

email: 'xxxxx@xxxxx',

endereco: 'xxxxxxxxxx',

endereco_numero: 'xxx',

complemento: 'xxxx',

bairro: 'xxxxxx',

cidade: 'xxxxxx',

estado: 'xx',

pais: 'xxxxxx',

cep: 'xxxxx-xxxx'

}


//As informações do cartão enviadas para a API edunext são criptografadas e preenchidas após a obtenção do token.

compra.cartao = {

    nome: "", 

    numero: ””, 

    bandeira: "",

    token: "" 

}


 

Formas de Pagamento

As formas de pagamento possuem os seguintes IDs:

Cartão de Crédito

1

Boleto

2

PIX

3

 


Pagamento

Para realizar o pagamento, chamamos a seguinte função:

async function efetuarPagamento() {

  if (forma_pagamento_id == 1) {

    try {

     const data = {

            account_id: ACCOUNT_ID, //ID da Distribuidora

            method: 'credit_card',

            test: true, //Indica se ambiente teste ou produção

            data: {

               number: 'xxxxxxxxxxxxxxxx', //Número do Cartão

               verification_value: 'xxx', //Cód de Segurança - CVV

               first_name: 'xxxx', // Nome escrito no Cartão

               last_name: 'xxxxxxx', // Sobrenome escrito no Cartão

               month: 'xx', //Mês de Validade

               year: 'xxxx' //Ano de Validade

         }

      let token = await axios.post(

         'https://apisrvl.edunext.technology/tokenCartao', data)

      compra.cartao.bandeira = token.data.extra_info.brand;

      compra.cartao.token = token.data.id;

      compra.cartao.numero = token.data.extra_info.display_number;

      compra.cartao.nome = token.data.extra_info.holder_name

    } catch (e) {

      if (e.errors) {

        let erros = "";

        for (let index in e.errors) {

          if (index === "expiration")

            erros += (erros === "" ? "" : ", ") + "Validade do cartão inválida";

          else if (index === "first_name")

            erros +=

              (erros === "" ? "" : ", ") + "Primeiro nome do cartão inválido";

          else if (index === "last_name")

            erros +=

              (erros === "" ? "" : ", ") + "Sobrenome do cartão inválido";

          else if (index === "number")

            erros += (erros === "" ? "" : ", ") + "Número do cartão inválido";

          else if (index === "verification_value")

            erros +=

              (erros === "" ? "" : ", ") +

              "Código de segurança do cartão inválido";

        }

        console.log(erros);

      } else {

        console.log(e.toString());

        return;

      }

    }

    let response;

    try {

      response = await axios({

        url: "https://beta.api2.edunext.technology/api/Compras/checkout",

        method: "post",

        data: compra,

      });

    } catch (e) {

      console.log(e.response);

    }

    if (response.status === 200) {

      console.log(response.data);

    }

  }

}


Respostas

No objeto response.data.resposta.secure_url obtido com a resposta da requisição, é possível ter acesso a fatura completa gerada.

No objeto response.data.resposta.pix.qrcode, se obtém o QRCode do PIX, e no response.data.resposta.pix.text, o texto com o código para pagamento com PIX usando a opção de copiar e colar.

No objeto response.data.resposta.bank_slip.barcode, se obtém o código de barras do boleto e no response.data.resposta.bank_slip.digitable_line, o texto com o código para pagamento utilizando o copiar e colar.

 


Cartões de Crédito para Testes

Os seguintes dados de cartão de crédito podem ser utilizados para a verificação dos retornos:

Nome e Sobrenome: Qualquer nome e sobrenome aleatório. Ex. José Ferreira, Martin da Silva, Maria de Lurdes.

Código de Segurança: Qualquer combinação de 3 dígitos, ou 4 dígitos caso o cartão tenha 4 dígitos.

Validade: Qualquer data futura.

Visa

Número

Retorno

4111111111111111

SUCESSO

4242424242424242

SUCESSO

4012888888881881

FALHA

MasterCard

Número

Retorno

5555555555554444

SUCESSO

American Express*

Número

Retorno

376411112222331

Cartão inválido

378282246310005

SUCESSO

371449635398431

FALHA

* CVV com 4 dígitos.

Diners

Número

Retorno

30569309025904

SUCESSO

38520000023237

FALHA


    • Related Articles

    • Documentação - API edunext

      Bem-vindo ao guia de documentação da API edunext! Este artigo fornecerá todas as informações necessárias para acessar A Central de Documentação da API edunext, garantindo que você aproveite ao máximo as funcionalidades oferecidas. O que é a API ...
    • Documentação edunext: Cartões de Crédito para testes

      Este artigo fornece uma lista de cartões de crédito de teste e seus respectivos resultados esperados. É importante notar que os testes com esses cartões específicos só podem ser realizados no ambiente Beta da edunext. Ao desenvolver e testar ...
    • Conheça as integrações nativas da edunext

      A edunext conecta-se a diversas plataformas e ferramentas que ampliam suas funcionalidades e oferecem uma experiência completa para instituições de ensino. Abaixo, exploramos as principais integrações nativas da edunext e como você pode configurá-las ...
    • Integração edunext e D2L: Etapas de implementação

      A edunext se integra à plataforma D2L Brightspace, facilitando a gestão de alunos e cursos de maneira automatizada. Essa integração permite que os dados fluam entre a edunext e o D2L, agilizando o processo de inscrição dos alunos. O que você pode ...
    • Como adicionar uma integração na edunext

      As integrações na edunext possibilitam a conexão direta da plataforma com diversas ferramentas externas, otimizando processos acadêmicos e financeiros. Com elas, é possível sincronizar cursos, automatizar fluxos de pagamento e melhorar a experiência ...