Jornadas de Credenciamento — Visão Geral

1. O que é o Credenciamento?

O credenciamento é o processo pelo qual um estabelecimento comercial (merchant) passa a fazer parte da rede Getnet, habilitando-se a aceitar pagamentos com cartão e outros meios eletrônicos. Durante esse processo são coletados dados cadastrais, realizada análise de risco e compliance (qualificação), definidas as ofertas comerciais contratadas e criado o pedido formal que consolida tudo isso.


2. Tipos de Jornada

A plataforma Getnet suporta dois modelos de credenciamento, que diferem principalmente em quem conduz o preenchimento das informações:
CaracterísticaCredenciamento AutônomoCredenciamento Assistido
Quem preenche os dadosO próprio merchant, em canal digital self-serviceUm agente / consultor da Getnet
Interação humanaMínima — fluxo guiado pela aplicaçãoAlta — agente guia o merchant
Ponto de entradaCanal digital aberto (mar aberto)Canal interno / back-office
Momento da vitrine de ofertasAntes da criação do merchantApós a criação do merchant
Filtros do GET /offeringscountry + channel (opcionalmente monthly_card_income + merchant_category_code + fiscal_type se o canal já dispuser dessas informações antes de exibir as ofertas)country + channel + monthly_card_income + merchant_category_code + fiscal_type
monthly_card_income no POST /merchantsNão obrigatório na criaçãoEnviado já na criação
MCC (merchant_category_code)Não utilizado como filtro obrigatórioRetornado no POST /merchants e usado no GET /offerings
fiscal_typeOpcional — usado se disponível antes do cadastroUtilizado como filtro no GET /offerings

3. Autenticação — Pré-requisito de Ambas as Jornadas

Toda chamada à plataforma Getnet exige um access token válido obtido via OAuth 2.0. O token deve ser renovado antes de expirar.
text
[Sua Aplicação] ──600;">POST /token──────────────────────► [Authentication API] (credenciais nos headers + body) ◄──200 OK { access_token, expires_in }── [Sua Aplicação] ──Requisição + Authorization: {access_token}──► [Demais APIs] ◄──Resposta da operação──────────────────────────────── ↺ Repita o 600;">POST /token quando expires_in se aproximar do fim.
information icon

📄 Detalhes completos em authentication.md


4. Jornada 1 — Credenciamento Autônomo (Mar Aberto)

Nesta jornada o merchant acessa um canal digital e conduz o próprio credenciamento sem auxílio de um agente. O fluxo abaixo representa o caminho feliz do início ao fim.

4.1 Visão macro do fluxo

text
[Autenticação] │ ▼ [Vitrine de Ofertas] ←── Merchant escolhe um plano/oferta │ ▼ [Etapa 0] Verificação prévia — documento já possui EC? │ não ▼ [Etapa 1] Criação do merchant (dados mínimos) │ ▼ [Etapa 1.5] Consulta de CEP + Opções de frete │ ▼ [Etapa 2] Complemento de dados (600;">PUT /merchants) │ ▼ [Etapa 3] Qualificação (análise de risco) │ aprovado ▼ [Etapa 4] Resultado da qualificação confirmado │ ▼ [Etapa 5-6] Montagem dos itens do pedido (offerings → items) │ ▼ [Etapa 7] Informação de dados bancários │ ▼ [Etapa 8] Criação do pedido → 600;">POST /orders │ ▼ [Etapa 8.5] Atualização do pedido → 600;">PUT /orders/{id} *(quando necessário)* │ ▼ [Etapa 9] Validação do pedido → 600;">POST /orders/{id}/validation │ aprovado ▼ [Etapa 10] Submissão do pedido → 600;">PUT /orders/{id}/submit │ ▼ [Credenciamento concluído — order_number gerado]

4.2 Detalhamento das etapas

🔐 Autenticação

Obtenha o access_token conforme descrito na seção 3 e inclua-o em todas as chamadas seguintes.
information icon

🛍️ Vitrine de Ofertas

Antes de iniciar o cadastro, consulte as ofertas disponíveis para o canal e país. Isso permite que o merchant escolha um plano antes de se cadastrar.

text
Consumidor ──600;">GET /offerings?country=BR&channel={canal}──► Offerings API ◄── Lista de ofertas (sem taxas de adquirência) ── Consumidor ──600;">GET /offerings?priced_offering_id={id}──► Offerings API ◄── Objeto único com taxas detalhadas por bandeira ── └─ {id} = priced_offering_id retornado na listagem anterior OU (em uma única chamada) Consumidor ──600;">GET /offerings?country=BR&channel={canal}&show_acquirers=true──► Offerings API ◄── Lista de ofertas já com taxas incluídas ──
information icon

Etapa 0 — Verificação prévia (opcional, mas recomendada)

Verifique se o CPF/CNPJ informado já possui um Estabelecimento Comercial (EC) credenciado na Getnet. Se sim, não prossiga com o cadastro.
text
600;">GET /establishment-contracts-basic/legal-document-number/{cpf_cnpj}/ec-accredited ├── accredited: true ──► Documento já possui EC. Interromper fluxo. └── accredited: false ──► Pode cadastrar. Seguir para Etapa 1.

Etapa 1 — Criação do merchant (dados mínimos)

Crie o registro do merchant com as informações mínimas obrigatórias. O retorno traz o merchant_id, que será usado em todas as chamadas seguintes.
text
600;">POST /merchants │ Enviar: CPF/CNPJ + dados pessoais básicos + opt-ins (LGPD + termos) │ Retorna: merchant_id + sub_status_steps (etapas pendentes) │ └──► Guardar o merchant_id para usar nas etapas seguintes.
information icon
⚠️ Guarde o merchant_id retornado — ele é obrigatório em todas as próximas chamadas.
information icon

Etapa 1.5 — Consulta de CEP e opções de entrega (quando necessário)

Valide o CEP informado pelo merchant e consulte as opções de entrega disponíveis para aquele endereço.

text
600;">GET /domains/zipcode/{postal_code} │ ├─► 200 — CEP encontrado │ └─► Pré-preencher campos de endereço │ Solicitar ao merchant: número e complemento │ └─► 404 — CEP não encontrado └─► Informar ao merchant que o CEP digitado é inválido ou não foi encontrado, e solicitar que informe um novo CEP válido antes de prosseguir. 600;">GET /offerings/delivery-data?legal_document_number={doc}&postal_code={cep}&ids={offering_id_1},{offering_id_2} │ ├─ Parâmetros obrigatórios: │ ├─ legal_document_number — CPF ou CNPJ do merchant │ └─ postal_code — CEP do endereço de entrega │ ├─ Parâmetros opcionais: │ └─ ids — Um ou mais IDs de oferta (offering_id ou reference_id) separados por vírgula, │ para consultar o frete específico dos produtos contidos nessa(s) oferta(s). │ └── Retorna opções de entrega disponíveis (normal, expressa, agendada)
information icon

Etapa 2 — Complemento de dados (quando necessário)

Obtenha o estado atual completo do merchant e envie o payload completo atualizado com os dados complementares.
text
600;">GET /merchants/{merchant_id} │ Alterar somente os campos necessários no payload retornado │ 600;">PUT /merchants/{merchant_id} │ Enviar: renda, patrimônio, endereços, horário de funcionamento, etc.
information icon
⚠️ Nunca envie payload parcial. O PUT substitui todos os dados do merchant. Sempre busque o objeto completo com GET antes de modificá-lo.
information icon

Etapa 3 — Qualificação (análise de risco e compliance)

Dispare a qualificação do merchant. A resposta já contém o resultado — não é necessário realizar uma consulta adicional via GET para obtê-lo.
text
600;">POST /merchants/{merchant_id}/qualification │ └── Retorna: report.recommended.status + report.details[]
information icon

Etapa 4 — Resultado da qualificação

Avalie o campo report.recommended.status retornado pelo POST /merchants/{merchant_id}/qualification para decidir como prosseguir:
text
report.recommended.status │ ├── "approved" ──► Merchant aprovado. │ Prosseguir com o credenciamento normalmente. │ ├── "pending" ──► Merchant em análise manual pelo time de riscos. │ Prosseguir com o credenciamento normalmente; │ o resultado final será definido pela equipe de risco. │ └── "reproved" ──► Merchant reprovado. Não poderá realizar negócios com a Getnet. Consultar motivo em: report.details[*].detail_description
information icon

Etapas 5 e 6 — Montagem dos itens do pedido

Para cada oferta selecionada pelo merchant, mapeie cada item da oferta para um item do pedido:

text
Para cada oferta selecionada: └─ Para cada item em offering.items[]: ├─ item_sequence_number = próximo número sequencial global ├─ offering.priced_offering_id = offering.priced_offering_id (raiz da oferta) ├─ offering.smart_offering_id = offering.priced_offering_id (raiz da oferta) ├─ product = item.product (cópia integral) ├─ quantity = quantidade informada pelo cliente (item.quantity é apenas a quantidade inicial sugerida pela oferta) ├─ settlement_period = item.settlement_period (se presente) ├─ unit_price = item.unit_price (se presente) └─ total_price = item.total_price (se presente)
information icon

Etapa 6.5 — Montagem do endereço de entrega (delivery_info)

Com o CEP validado (Etapa 1.5) e o tipo de frete escolhido pelo merchant a partir da resposta do GET /offerings/delivery-data, monte o objeto delivery_info que será enviado no POST /orders.
text
delivery_info ├─ delivery_type = tipo selecionado pelo merchant ("scheduled" / "normal" / "express") ├─ delivery_amount = delivery_methods[x].delivery_amount ├─ delivery_time = delivery_methods[x].delivery_time │ ├─ [se "normal" ou "express"] │ └─ delivery_time_type = delivery_methods[x].delivery_time_type ("D" = dias / "H" = horas) │ ├─ [se "scheduled"] │ ├─ recommended_delivery_period = período selecionado pelo merchant ("morning" / "afternoon" / "night") │ ├─ period_grid = entrada de delivery_methods[x].period_grid[] correspondente ao período │ └─ delivery_time_type = null │ ├─ delivery_reference_point = ponto de referência informado pelo merchant (opcional) │ └─ delivery_address = endereço de entrega informado pelo merchant ├─ street = logradouro (retornado pelo 600;">GET /domains/zipcode) ├─ number = número (informado pelo merchant) ├─ complement = complemento (informado pelo merchant, opcional) ├─ district = bairro (retornado pelo 600;">GET /domains/zipcode) ├─ city = cidade (retornado pelo 600;">GET /domains/zipcode) ├─ state = UF (retornado pelo 600;">GET /domains/zipcode) ├─ postal_code = CEP validado na Etapa 1.5 └─ country = "BR"
information icon

Etapa 7 — Dados bancários (domicílio bancário)

Para cada bandeira contratada, informe os dados da conta bancária onde o merchant receberá os valores.

text
merchant_accounts[] — um item por bandeira contratada: ├─ brand = bandeira (visa / master / elo / amex / ...) ├─ merchant.merchant_id = merchant_id (Etapa 1) ├─ bank_account.bank.bank_code = código FEBRABAN do banco ├─ bank_account.bank_branch_code = agência ├─ bank_account.bank_account_number = conta + dígito ├─ bank_account.account_type = cc / pp ├─ payment_center = true / false └─ merchant_account_restriction = []
information icon

📄 banks.md


Etapa 8 — Criação do pedido

Com todos os dados coletados, crie o pedido formal de credenciamento.

Antes de enviar, calcule os campos de totalização somando o total_price dos itens onde product.product_type = "terminal", agrupados pelo product.pricing_model.pricing_type:
text
total_fixed_price ← Σ total_price dos terminais com pricing_type = "fixed_price" total_monthly_rent ← Σ total_price dos terminais com pricing_type = "monthly_rent" total_affiliation_fee ← Σ total_price dos terminais com pricing_type = "affiliation_fee" total_recurrent ← Σ total_price dos terminais com pricing_type = "recurrent" total_payment_price ← Σ total_price dos terminais com pricing_type = "payment_price" total_license ← Σ total_price dos terminais com pricing_type = "license"
information icon
Itens com product_type diferente de terminal (ex.: composite, service) não entram neste cálculo. Campos sem terminais correspondentes devem ser enviados com valor 0.
text
600;">POST /orders │ Enviar: merchant, delivery_info, items[], merchant_accounts[], total_fixed_price, total_monthly_rent, total_affiliation_fee, total_recurrent, total_payment_price, total_license │ Retorna: order_id │ └──► Guardar o order_id para usar nas etapas seguintes (validação, atualização e submissão).
information icon
⚠️ Guarde o order_id retornado — ele é obrigatório em todas as próximas chamadas (PUT /orders/{order_id}, POST /orders/{order_id}/validation, PUT /orders/{order_id}/submit).
information icon

📄 orders.md


Etapa 8.5 — Atualização do pedido (quando necessário)

Caso seja preciso corrigir ou complementar dados do pedido antes da submissão, utilize o PUT /orders/{order_id}.
text
600;">PUT /orders/{order_id} │ Enviar: objeto completo do pedido (com as alterações aplicadas)
information icon
⚠️ Nunca envie payload parcial. O PUT substitui todos os dados do pedido. Sempre envie o objeto completo.
Diferença importante em relação ao PUT /merchants/{merchant_id}:
ComportamentoMerchantOrder
Enriquecimento✅ Sim — a plataforma adiciona informações ao objeto após a criação❌ Não — os dados do pedido são exatamente os que o canal enviou no POST /orders
GET antes do PUTObrigatório — para obter os dados enriquecidos e não sobrescrevê-los acidentalmenteOpcional — se o canal armazena o pedido localmente, os dados são idênticos aos da plataforma
  • Se o canal armazena o pedido em seu domínio: basta modificar ou incrementar os campos na estrutura local e enviar o PUT com o objeto completo — não é necessário chamar GET /orders/{order_id} antes.
  • Se o canal não armazena o pedido: chamar GET /orders/{order_id} (usando o order_id retornado no POST /orders), aplicar as alterações e enviar o PUT.

Após qualquer alteração nos itens, recalcule os campos de totalização conforme a Etapa 8.

information icon

📄 orders.md


Etapa 9 — Validação do pedido (recomendada)

Antes de submeter, valide o pedido para identificar e corrigir eventuais problemas.

text
600;">POST /orders/{order_id}/validation │ ├── report.recommended.status = "approved" ──► Prosseguir para submissão. │ └── report.recommended.status = "reproved" ──► Verificar e corrigir: report.details[].detail_description
information icon
⚠️ Após a submissão (Etapa 10) o pedido não pode mais ser corrigido. Use esta etapa como salvaguarda.
information icon

📄 orders.md


Etapa 10 — Submissão do pedido

Submeta o pedido após confirmação do merchant. Esta é a etapa final.

text
600;">PUT /orders/{order_id}/submit │ ├── Reprovado ──► error.report.recommended = "reproved" │ Verificar: report.details[].detail_description │ └── Submetido ──► situation.status = "submitted" order_number gerado — usar para acompanhamento do pedido │ ├─ Para verificar se o pedido foi aprovado: │ 600;">GET /orders?order_number={order_number} └─ Ou configure um webhook para receber notificações de status.
information icon

5. Jornada 2 — Credenciamento Assistido

Nesta jornada um agente ou consultor da Getnet conduz o credenciamento em nome do merchant. A principal diferença estrutural em relação à jornada autônoma está na ordem das chamadas: aqui o merchant é criado primeiro e, com o merchant_category_code (MCC) retornado, a vitrine de ofertas é consultada de forma personalizada para aquele perfil de negócio.

5.1 Visão macro do fluxo

text
[Autenticação] │ ▼ [Etapa 0] Verificação prévia — documento já possui EC? │ não ▼ [Etapa 1] Criação do merchant (dados mínimos + monthly_card_income) │ └── Retorna: merchant_id + MCC ▼ [Vitrine de Ofertas] ←── Filtragem com MCC e faturamento mensal do merchant │ ▼ [Etapa 1.5] Consulta de CEP + Opções de frete │ ▼ [Etapa 2] Complemento de dados (600;">PUT /merchants) │ ▼ [Etapa 3] Qualificação (análise de risco) │ aprovado ▼ [Etapa 4] Resultado da qualificação confirmado │ ▼ [Etapas 5-6] Montagem dos itens do pedido (offerings → items) │ ▼ [Etapa 7] Informação de dados bancários │ ▼ [Etapa 8] Criação do pedido → 600;">POST /orders │ ▼ [Etapa 8.5] Atualização do pedido → 600;">PUT /orders/{id} *(quando necessário)* │ ▼ [Etapa 9] Validação do pedido → 600;">POST /orders/{id}/validation │ aprovado ▼ [Etapa 10] Submissão do pedido → 600;">PUT /orders/{id}/submit │ ▼ [Credenciamento concluído — order_number gerado]

5.2 Detalhamento das etapas

🔐 Autenticação

Idêntica à jornada autônoma. Obtenha o access_token conforme descrito na seção 3.
information icon

Etapa 0 — Verificação prévia (opcional, mas recomendada)

Idêntica à jornada autônoma.

text
600;">GET /establishment-contracts-basic/legal-document-number/{cpf_cnpj}/ec-accredited ├── accredited: true ──► Documento já possui EC. Interromper fluxo. └── accredited: false ──► Pode cadastrar. Seguir para Etapa 1.

Etapa 1 — Criação do merchant (dados mínimos)

Nesta jornada, o monthly_card_income (faturamento mensal no cartão) é enviado já na criação. O retorno inclui o merchant_category_code (MCC), que deve ser guardado para filtrar as ofertas adequadas ao perfil do negócio.
text
600;">POST /merchants │ Enviar: CPF/CNPJ + dados pessoais básicos + monthly_card_income + opt-ins (LGPD + termos) │ Retorna: merchant_id sub_status_steps (etapas pendentes) economic_activity_profile.merchant_category_code ← MCC │ └──► Guardar o merchant_id e o MCC para usar nas etapas seguintes.
information icon
⚠️ Guarde tanto o merchant_id quanto o merchant_category_code — ambos são usados nas chamadas seguintes.
information icon

🛍️ Vitrine de Ofertas (após criação do merchant)

Diferente da jornada autônoma, aqui a consulta de ofertas ocorre depois da criação do merchant, pois utiliza o MCC e o faturamento mensal para retornar apenas as ofertas elegíveis para aquele perfil.
text
600;">GET /offerings?country=BR&channel={canal}&monthly_card_income={faturamento_mensal}&merchant_category_code={mcc}&fiscal_type={fiscal_type} └── Retorna lista de ofertas (sem taxas de adquirência) 600;">GET /offerings?priced_offering_id={id} └── Retorna objeto único com taxas detalhadas por bandeira └─ {id} = priced_offering_id retornado na listagem anterior OU (em uma única chamada) 600;">GET /offerings?country=BR&channel={canal}&monthly_card_income={faturamento_mensal}&merchant_category_code={mcc}&fiscal_type={fiscal_type}&show_acquirers=true └── Retorna lista de ofertas já com taxas incluídas
information icon

Etapas 1.5 a 10 — Complemento, Qualificação, Pedido e Submissão

A partir daqui o fluxo é idêntico ao da jornada autônoma. Consulte as etapas correspondentes na seção 4.2:
EtapaDescriçãoLink
1.5Consulta de CEP e opções de entrega→ Etapa 1.5
2Complemento de dados via PUT /merchants→ Etapa 2
3Disparar qualificação→ Etapa 3
4Verificar resultado da qualificação→ Etapa 4
5-6Montagem dos itens do pedido→ Etapas 5 e 6
7Informar dados bancários→ Etapa 7
8Criar pedido→ Etapa 8
8.5Atualizar pedido (quando necessário)→ Etapa 8.5
9Validar pedido→ Etapa 9
10Submeter pedido→ Etapa 10

5.3 Diferenças em relação ao Credenciamento Autônomo

AspectoAutônomoAssistido
Quem operaO próprio merchantAgente / consultor
Momento da vitrine de ofertasAntes da criação do merchantApós a criação do merchant
Filtros da vitrinecountry + channel (opcionalmente monthly_card_income + merchant_category_code + fiscal_type se disponíveis)country + channel + monthly_card_income + merchant_category_code + fiscal_type
monthly_card_income no POST /merchantsNão obrigatório na criaçãoEnviado já na criação
MCC (merchant_category_code)Não utilizado como filtro obrigatórioRetornado no POST /merchants e usado no GET /offerings
fiscal_typeOpcional — usado se disponívelUtilizado como filtro no GET /offerings

6. Referência Rápida de Endpoints por Etapa

Credenciamento Autônomo

EtapaMétodoEndpointDocumentação
AutenticaçãoPOST/tokenauthentication.md
Vitrine de ofertasGET/offeringsofferings.md
0 — Verificação préviaGET/establishment-contracts-basic/legal-document-number/{doc}/ec-accreditedmerchants.md
1 — Criação do merchantPOST/merchantsmerchants.md
1.5 — Consulta de CEPGET/domains/zipcode/{postal_code}support.md
1.5 — Opções de entregaGET/offerings/delivery-dataofferings.md
2 — Obter merchant atualGET/merchants/{merchant_id}merchants.md
2 — Complementar dadosPUT/merchants/{merchant_id}merchants.md
3 — Disparar qualificaçãoPOST/merchants/{merchant_id}/qualificationmerchants.md
4 — Consultar qualificaçãoGET/merchants/{merchant_id}/qualificationmerchants.md
6.5 — Montar delivery_info(montagem local com dados de GET /offerings/delivery-data + CEP)orders.md
8 — Criar pedidoPOST/ordersorders.md
8.5 — Atualizar pedidoPUT/orders/{order_id}orders.md
9 — Validar pedidoPOST/orders/{order_id}/validationorders.md
10 — Submeter pedidoPUT/orders/{order_id}/submitorders.md

Credenciamento Assistido

EtapaMétodoEndpointDocumentação
AutenticaçãoPOST/tokenauthentication.md
0 — Verificação préviaGET/establishment-contracts-basic/legal-document-number/{doc}/ec-accreditedmerchants.md
1 — Criação do merchantPOST/merchantsmerchants.md
Vitrine de ofertasGET/offerings?monthly_card_income={val}&merchant_category_code={mcc}&fiscal_type={fiscal_type}offerings.md
1.5 — Consulta de CEPGET/domains/zipcode/{postal_code}support.md
1.5 — Opções de entregaGET/offerings/delivery-dataofferings.md
2 — Obter merchant atualGET/merchants/{merchant_id}merchants.md
2 — Complementar dadosPUT/merchants/{merchant_id}merchants.md
3 — Disparar qualificaçãoPOST/merchants/{merchant_id}/qualificationmerchants.md
3 — Disparar qualificaçãoPOST/merchants/{merchant_id}/qualificationmerchants.md
4 — Consultar qualificaçãoGET/merchants/{merchant_id}/qualificationmerchants.md
6.5 — Montar delivery_info(montagem local com dados de GET /offerings/delivery-data + CEP)orders.md
8 — Criar pedidoPOST/ordersorders.md
8.5 — Atualizar pedidoPUT/orders/{order_id}orders.md
9 — Validar pedidoPOST/orders/{order_id}/validationorders.md
10 — Submeter pedidoPUT/orders/{order_id}/submitorders.md

7. Conceitos Transversais

merchant_id

Identificador único gerado no POST /merchants. Deve ser persistido e utilizado em todas as chamadas subsequentes do ciclo de credenciamento.

priced_offering_id

Identificador de uma oferta com preços detalhados por bandeira. Obtido na Offerings API e utilizado na montagem dos itens do pedido.

order_id e order_number

  • order_id: identificador interno gerado no POST /orders. Usado para validação e submissão.
  • order_number: gerado após a submissão bem-sucedida. Usado pelo merchant para acompanhar o status logístico do pedido.

Qualificação

Processo de análise de risco e compliance que verifica se o merchant pode ser credenciado. Pode ser síncrono (resposta 200) ou assíncrono (resposta 202 + polling via GET).

Domicílio bancário

Conta(s) bancária(s) onde o merchant receberá os repasses das transações. Deve ser informado por bandeira contratada.

information icon