Provê os componentes para o uso da API B2B, disponibilizado pela VIA, facilitando a integração com as documentações relacionadas:
Swagger |
---|
http://api-integracao-pontofrio.hlg-b2b.net/swagger/ui/index#/ |
http://api-integracao-casasbahia.hlg-b2b.net/swagger/ui/index#/ |
http://api-integracao-extra.hlg-b2b.net/swagger/ui/index#/ |
Dentro do namespace [SdkApiB2bLibrary.api.utils] se encontra a classe reponsavel pelas requisições, a qual deve ser configurada duas propriedades:
- BASE_PATH (end-point utilizado).
- token (token de acesso).
O namespace [SdkApiLibrary.api] contem as classes:
- CampanhaApi.cs
- FormaPagamentoApi.cs
- PedidoApi.cs
- ProdutoApi.cs
- SegurancaApi.cs
Estas compõe a camada de acesso para os serviços disponibilizados pelo B2B, alguns exemplos de como utiliza-lá estão disponíveis nos testes unitarios
A seguir, são apresentadas as APIs e exemplos com as as principais operações do B2B.
-
Api Utilizada para operações de campanha
- http://api-integracao-casasbahia.hlg-b2b.net/swagger/ui/index#/Campanha/Campanha_ListarCampanhaAsync
- http://api-integracao-pontofrio.hlg-b2b.net/swagger/ui/index#/Campanha/Campanha_ListarCampanhaAsync
- http://api-integracao-extra.hlg-b2b.net/swagger/ui/index#/Campanha/Campanha_ListarCampanhaAsync
CampanhaApi api = new(); var dto = await api.GetCampanhasAsync("2019-08-04", "2100-08-04");
- http://api-integracao-casasbahia.hlg-b2b.net/swagger/ui/index#!/Campanha/Campanha_ListarOpcoesParcelamentoAsync
- http://api-integracao-pontofrio.hlg-b2b.net/swagger/ui/index#/Campanha/Campanha_ListarOpcoesParcelamentoAsync
- http://api-integracao-extra.hlg-b2b.net/swagger/ui/index#/Campanha/Campanha_ListarOpcoesParcelamentoAsync
CampanhaApi api = new(); var dto = await api.GetOpcoesPagamentoAsync("5940", "57.822.975/0001-12");
-
Api utilizada para operações de pedidos
-
http://api-integracao-casasbahia.hlg-b2b.net/swagger/ui/index#!/Pedido/Pedido_CalcularCarrinhoAsync
-
http://api-integracao-pontofrio.hlg-b2b.net/swagger/ui/index#!/Pedido/Pedido_CalcularCarrinhoAsync
-
http://api-integracao-extra.hlg-b2b.net/swagger/ui/index#!/Pedido/Pedido_CalcularCarrinhoAsync
PedidoApi pedidoApi = new(); Produtos produto = new() { Codigo = ID_SKU_CRIACAO_PEDIDO, Quantidade = 1, IdLojista = ID_LOJISTA }; PedidoCarrinho pedidoCarrinho = new() { IdCampanha = ID_CAMPANHA, Cnpj = CNPJ, Cep = CEP, Produtos = new List<Produtos>() }; pedidoCarrinho.Produtos.Add(produto); CalculoCarrinho calculoCarrinho = await pedidoApi.PostCalcularCarrinho(pedidoCarrinho);
-
http://api-integracao-casasbahia.hlg-b2b.net/swagger/ui/index#!/Pedido/Pedido_ObterPedidoAsync
-
http://api-integracao-pontofrio.hlg-b2b.net/swagger/ui/index#!/Pedido/Pedido_ObterPedidoAsync
-
http://api-integracao-extra.hlg-b2b.net/swagger/ui/index#!/Pedido/Pedido_ObterPedidoAsync
PedidoApi pedidoApi = new(); Dictionary<String, String> pathParams = new(); pathParams.Add("idCompra", pedidoHelper.IdPedido.ToString()); Dictionary<String, String> queryParams = new(); queryParams.Add("request.idCompra", pedidoHelper.IdPedido.ToString()); queryParams.Add("request.cnpj", CNPJ); queryParams.Add("request.idCampanha", ID_CAMPANHA.ToString()); queryParams.Add("request.idPedidoParceiro", pedidoHelper.IdPedidoParceiro.ToString()); PedidoParceiroData pedido = await pedidoApi.GetDadosPedidoParceiro(pathParams, queryParams);
-
http://api-integracao-casasbahia.hlg-b2b.net/swagger/ui/index#!/Pedido/Pedido_ConfirmarPedidoAsync
-
http://api-integracao-pontofrio.hlg-b2b.net/swagger/ui/index#!/Pedido/Pedido_ConfirmarPedidoAsync
-
http://api-integracao-extra.hlg-b2b.net/swagger/ui/index#!/Pedido/Pedido_ConfirmarPedidoAsync
PedidoApi pedidoApi = new(); Dictionary<String, String> variableParams = new(); variableParams.Add("idCompra", pedidoHelper.IdPedido.ToString()); ConfirmacaoReqDTO dto = new(); dto.IdCampanha = ID_CAMPANHA; dto.IdPedidoParceiro = pedidoHelper.IdPedidoParceiro; dto.Cancelado = true; dto.Confirmado = false; dto.IdPedidoMktplc = "1-01"; dto.MotivoCancelamento = "teste"; dto.Parceiro = "BANCO INTER"; ConfirmacaoDTO confirmacaoDto = await pedidoApi.PatchPedidosCancelamentoOrConfirmacao(dto, variableParams);
-
http://api-integracao-casasbahia.hlg-b2b.net/swagger/ui/index#!/Pedido/Pedido_ObterNFeAsync
-
http://api-integracao-pontofrio.hlg-b2b.net/swagger/ui/index#!/Pedido/Pedido_ObterNFeAsync
-
http://api-integracao-extra.hlg-b2b.net/swagger/ui/index#!/Pedido/Pedido_ObterNFeAsync
PedidoApi pedidoApi = new PedidoApi(); Map<String, String> pathParams = new HashMap<>(); pathParams.put("idCompra", "247473612"); pathParams.put("idCompraEntrega", "91712686"); pathParams.put("formato", "PDF"); String response = pedidoApi.getNotaFiscalPedido(pathParams);
-
http://api-integracao-casasbahia.hlg-b2b.net/swagger/ui/index#!/Pedido/Pedido_ObterNFeAsync
-
http://api-integracao-pontofrio.hlg-b2b.net/swagger/ui/index#!/Pedido/Pedido_ObterNFeAsync
-
http://api-integracao-extra.hlg-b2b.net/swagger/ui/index#!/Pedido/Pedido_ObterNFeAsync
PedidoApi pedidoApi = new(); // Produto PedidoProdutoDto produto = new(); produto.IdLojista = ID_LOJISTA; produto.Codigo = pedidoHelper.IdSku; produto.Quantidade = 1; produto.Premio = 0; produto.PrecoVenda = pedidoHelper.PrecoVenda; List<PedidoProdutoDto> produtos = new(); produtos.Add(produto); // endereco Entrega EnderecoEntregaDto enderecoEntrega = new(); enderecoEntrega.Cep = "01525-000"; enderecoEntrega.Estado = "SP"; enderecoEntrega.Logradouro = "rua da se"; enderecoEntrega.Cidade = "São Paulo"; enderecoEntrega.Numero = 63; enderecoEntrega.Referencia = "teste"; enderecoEntrega.Bairro = "bairro se"; enderecoEntrega.Complemento = "teste"; enderecoEntrega.Telefone = "22333333"; enderecoEntrega.Telefone2 = "22333335"; enderecoEntrega.Telefone3 = "22333336"; // destinatario DestinatarioDto destinatario = new(); destinatario.Nome = "teste"; destinatario.CpfCnpj = CPF_DESTINATARIO; destinatario.Email = "[email protected]"; destinatario.Administrador = 1; // dados entrega EntregaDadosDto dadosEntrega = new(); dadosEntrega.ValorFrete = pedidoHelper.ValorFrete; // pedido CriacaoPedidoRequest pedido = new(); pedido.Produtos = produtos; pedido.EnderecoEntrega = enderecoEntrega; pedido.Destinatario = destinatario; pedido.DadosEntrega = dadosEntrega; pedido.Campanha = ID_CAMPANHA; pedido.Cnpj = CNPJ; pedido.PedidoParceiro = GeraPedidoParceiroId(); pedido.ValorFrete = pedidoHelper.ValorFrete; pedido.AguardarConfirmacao = true; pedido.OptantePeloSimples = true; CriacaoPedidoDTO criacaoPedidoDTO = await pedidoApi.PostCriarPedido(pedido);
-
-
Api Utilizada para operações de forma de pagamento
- http://api-integracao-casasbahia.hlg-b2b.net/swagger/ui/index#!/FormaPagamento/FormaPagamento_ListarOpcoesParcelamentoAsync
- http://api-integracao-pontofrio.hlg-b2b.net/swagger/ui/index#!/FormaPagamento/FormaPagamento_ListarOpcoesParcelamentoAsync
- http://api-integracao-extra.hlg-b2b.net/swagger/ui/index#!/FormaPagamento/FormaPagamento_ListarOpcoesParcelamentoAsync
FormaPagamentoApi api = new(); var dto = await api.GetOpcoesParcelamentoAsync("1", "5940", "57.822.975/0001-12", "1000");
-
Api Utilizada para operações de produto
- http://api-integracao-casasbahia.hlg-b2b.net/swagger/ui/index#!/Produto/Produto_ObterProdutoAsync
- http://api-integracao-pontofrio.hlg-b2b.net/swagger/ui/index#!/Produto/Produto_ObterProdutoAsync
- http://api-integracao-extra.hlg-b2b.net/swagger/ui/index#!/Produto/Produto_ObterProdutoAsync
ProdutoApi api = new(); var dto = await api.GetDadosProduto("15", "5880205");
- http://api-integracao-casasbahia.hlg-b2b.net/swagger/ui/index#!/Produto/Produto_ListarProdutoAsync
- http://api-integracao-pontofrio.hlg-b2b.net/swagger/ui/index#!/Produto/Produto_ListarProdutoAsync
- http://api-integracao-extra.hlg-b2b.net/swagger/ui/index#!/Produto/Produto_ListarProdutoAsync
ProdutoApi api = new(); var dto = await api.GetListaProdutos("15",new List<String> {"5880205","5880206"});
- http://api-integracao-casasbahia.hlg-b2b.net/swagger/ui/index#!/Produto/Produto_ObterProdutoPorCampanhaAsync
- http://api-integracao-pontofrio.hlg-b2b.net/swagger/ui/index#!/Produto/Produto_ObterProdutoPorCampanhaAsync
- http://api-integracao-extra.hlg-b2b.net/swagger/ui/index#!/Produto/Produto_ObterProdutoPorCampanhaAsync
ProdutoApi api = new(); var dto = await api.GetDadosProdutoCampanha("5940", "5880205", "57.822.975/0001-12", "15");
-
Api Utilizada para operações de seguranca
- http://api-integracao-casasbahia.hlg-b2b.net/swagger/ui/index#!/Seguranca/Seguranca_ObterChave
- http://api-integracao-pontofrio.hlg-b2b.net/swagger/ui/index#!/Seguranca/Seguranca_ObterChave
- http://api-integracao-extra.hlg-b2b.net/swagger/ui/index#!/Seguranca/Seguranca_ObterChave
SegurancaApi api = new(); var dto = await api.GetChave();
Foram criados na raiz do projeto SdkApiB2bTest uma classe específica para cada uma das 5 API's do B2B, nesses arquivos você encontrará exemplos de como consumir os serviços oferecidos.