## Mapeamento de endpoints - listagem de ofertas ✅- - verificar se o cliente ja tem merchant cadastrado ✅ - `/merchants?legal_document_number` - cadastro inicial de merchant ✅ - atualização de dados de merchant( endereço,etc ) ✅ - iniciar qualificação ✅ - validar qualificação ✅ - criar pedido ✅ - criar processo de validação do pedido ✅ - checar status pedido ✅ - listar POS por merchant? aguardando para saber se é possivel :x: ## Integração Getnet - [Documentação referência](https://api-homologacao.getnet.com.br/api-doc/#) ### Variáveis para ambiente de testes | Variável | Valor | | ----------- | ----------- | | **BASE_URL** |https://api-homologacao.getnet.com.br/v1 ## Endpoints ## 1.Listagem ofertas e de modelos de maquininhas - método: `GET` - endpoint: `/offerings/` ### Contexto: Os modelos de dos POSs disponíveis para cada oferta, estarão dentro de uma lista retornado na resposta da chamada ao endpoint acima, e dentro de cada oferta da lista, haverá um campo chamado `items`, que conterá uma lista de modelos de POSs disponíveis naquela oferta. - As taxas referente a cada maquininha são encontradas dentro de cada item no exemplo listado mais abaixo. `product(service).pricing_model(discount fee).percentage`, referencia [aqui](https://api-homologacao.getnet.com.br/api-doc#) Request exemplo: ```curl curl -X GET 'https://api-homologacao.getnet.com.br/v1/offerings?channel=santander_front&fiscal_type=natural_person&country=BR' -H 'Content-Type: application/json' -H 'Authorization: eyAiYWxnIjogIkhTMjU2IiwidHlwIjogIkpXVCIgfQ.ew0KCSJpc3MiOiIxMC4xMzMuMzIuMTk3IiwJDQoJImV4cGlyZXNfaW4iOiIzMDAiLA0KCSJhY2Nlc3NfdG9rZW4iOiJjMzFmNTJkZi03MTdmLTRiYzQtYTM3My1lYzEwNjFhOGE2ODIiLAkNCgkiY2hhbm5lbCI6InNhbnRhbmRlcl9mcm9udCIsDQoJImJyYW5jaCI6IjIyMDY4MSIsDQoJImxvZ2luIjoiZmxhdmlvZiIsDQoJIm5hbWUiOiJGbGF2aW8gRmFndW5kZXMiLA0KCSJlbnJvbGxtZW50X251bWJlciI6IjYwNzEwMDgiDQp9.0uLtmsNKsgeAxzOQxTTdFhloFtqcBDOqE3Ksy1Lny5Q' ``` #### Query params necessários para diferenciar ofertas de pessoas juridicas e físicas na consulta: ### Para pessoa jurídica | Parametro | Valor | Tipo merchant | | ------------------------------- | ------- | --------------- | | fiscal_type | company | Pessoa jurídica | | acquirer_merchant_category_code | 7008 | Pessoa jurídica | - Exemplo: ``` offerings/?country=BR&channel=santander_front&fiscal_type=company&acquirer_merchant_category_code=7008 ``` ### Para pessoa física | Parametro | Valor | Tipo merchant | | ------------------------------- | --------------- | --------------- | | acquirer_merchant_category_code | 5014 | Pessoa física | | fiscal_type | natural_person | Pessoa física | | settlement_period | installments_31 | Pessoa física | - Exemplo: ``` /offerings?country=BR&channel=santander_front&fiscal_type=natural_person&acquirer_merchant_category_code=5014&settlement_period=installments_31 ``` ## 2. Verificação de proposta para o merchant por cnpj (validação de cadastro): - método: `GET` - endpoint: `/merchants?legal_document_number` ```curl curl --location -g --request GET 'https://api-homologacao.getnet.com.br/v1/merchants?legal_document_number=59671348000153' ``` ## 3. Cadastro de merchant - método: `POST` - endpoint: `/merchants` **Importante**: Após gerar um novo merchant, será necessário iniciar o processo de qualificação. ## 4. Atualização de merchant( caso não tenha adicionado endereços) - método: `POST` - endpoint: `/merchants` **Importante**: Após gerar um novo merchant, será necessário iniciar o processo de qualificação. ## 5. Verificação de um merchant por id: - método: `GET` - endpoint: `/merchants/{merchant_id}` Request exemplo: ```curl curl --location -g --request GET 'https://api-homologacao.getnet.com.br/v1/merchants/500924a8-3f5e-4c00-beb8-2efcde988aea' ``` **Nota**: É possível verificar se um merchant está cadastrado com sucesso, através do campo **situation.status**. | Status possíveis | | ---------------- | | created | | accepted | | rejected | | approved | | reproved | | canceled | ## 6. Iniciar qualificação de um merchant - método: `POST` - endpoint: `/merchants/{merchant_id}/qualification` Após o situation.status do merchant estar aprovado, será possível solicitar a maquininha ## 7. Consultar status de qualificação de um merchant - método: `GET` - endpoint: `/merchants/{merchant_id}/qualification` ## 8. Solicitação de um POS - método: `POST` - endpoint: `/orders` Após criar um merchant e ter sua qualificação aprovada, será possível chamar essa rota para iniciar a solicitação de um pedido. ## 9. Processo de validação de pedido - método: `POST` - endpoint:`orders/{order_id}/validation` ## 10. Consultar status de uma solicitação de maquininha - método: `GET` - endpoint: `/orders/{order_id}` Dentro do campo `situation.status` será possível identificar o status de um pedido. A lista de status é a seguinte, referencia [aqui](https://api-homologacao.getnet.com.br/api-doc/) acessando a aba de **orders**→**listar pedido por id**: | Status de um pedido | | ------------------- | | created | | submittedrejected | | approved | | cancelled | | payment_pending | | fulfillment_pending | | cancel_time | | closed | ## 11. Listagem de maquininhas de uma conta e seus status - Não identificado na documentação, confirmar com parceiro ## 12. Solicitação de POS para um usuário já cadastrado e qualificado Apenas realizar o processo da [etapa 4](https://hackmd.io/UPj2v_ZzRMCQcG4Mle-5mw?view#5-Solicita%C3%A7%C3%A3o-de-um-POS), se um merchant tiver status `approved`. ## 13. Tracking de entrega - método: `GET` - endpoint: `/tracking?merchant_id=` Listará todos os pedidos e seus dados de tracking.