Processar transação de pagamento

Nesta seção explicamos um pouco sobre os recursos disponível para processamento da transação de pagamento utilizando o Gateway da Fast Shop

Caso o Marketplace opte por processar o pagamento utilizando o Gateway da Fast Shop, deverá utilizar este endpoint parar realizar a operação

Inicialmente este endpoint esta aceitando apenas a opção de cartão de crédito ("credit_card")

Endpoint

Process Payments

POST https://{environmentSeller}/pvt/payments

Path Parameters

Name
Type
Description

{environmentSeller}*

string

URL da API do Seller

Headers

Name
Type
Description

X-VTEX-API-AppKey*

string

{{appKey}}

X-VTEX-API-AppToken*

string

{{appToken}}

Accept*

string

application/json

Content-Type*

string

application/json

Consulte o Swagger API

Exemplo do Request

{
  "payments": [
    {
      "paymentId": "credit_card",
      "paymentMethod": "Cartão de crédito",
      "value": 50000,
      "installments": 10,
      "cardData": "erefvcbnviefvnsncvimvunruvneuipvnewvbpurnevunuvnuietvbetnbuetnbuetobnetibuetbeuqdvqvctyqeviqctvqcetqovcuvctqtcvqoruqvqrbqovo",
      "bankBilletData": null,
      "pixData": null
    }
  ],
  "customerIpAddress": "127.0.0.1",
  "shippingData": {
    "selectedSla": "KAIVEHUB_Normal_33"
  }
}

Exemplo do Response (200 - OK)

Descrições dos campos consulte o "Swagger API"

Preenchimento do Request:

  • Apesar de o campo "payments" aceitar uma lista de pagamento, neste momento o pedido esta restrito apenas a um cartão de crédito, opção de pagamento "credit_card".

    • O campo "value" é exatamente o valor retornado na opção da simulação do parcelamento selecionado pelo cliente, campo "consultInstallments: installments: total".

    • O campo "installments" é exatamente o valor retornado na opção da simulação do parcelamento selecionado pelo cliente, campo "consultInstallments: installments: installmentNumber".

    • O campo "cardData" irá conter as informações do cartão criptografado que será explicado como realizar em "Como criptografar as informações do pagamento", e deverá conter o JSON abaixo.

      • O campo "cardBrand" é exatamente o valor retornado na opção da simulação do parcelamento selecionado pelo cliente, campo "consultInstallments: cardInfo: cardBrand".

  • O campo "customerIpAddress" deverá ser preenchido com o IP da Máquina do Cliente, mas caso não seja possível poderá informar o do Servidor de requisição. Esta informação será importante para a análise de fraude.

  • O campo "shippingData: selectedSla" é o ID a opção de frete seleciona na venda, ou seja, o campo "logisticsInfo: slas: id" do Cálculo de Frete.

Informações importantes do Response:

  • Será retornado HttpCode = 200 caso tenha todos os pagamentos aprovados ou HttpCode = 401 quando não for autorizado.

  • O "payments" será retornado as informações do cartão processado onde através do campo "cardNumber" conseguirá identificar o número do cartão.

  • O campo "status" poderá retornar:

    • 1 - AUTHORIZED - Significa que foi autorizado a pré-autorização e poderá seguir com a geração do pedido

    • 2 - UNAUTHORIZED - Significa que não foi autoriza a pré-autorização devido a alguma restrição, com isto não deverá seguir o a geração do pedido

    • 3 - FAILED - Significa que algo falhou durante o processamento da pré-autorização e poderá ser efetuado uma nova tentativa.

  • Se aprovado será retornado o “Token” da transação. Os campos "cardBrand" e "transactionId" deverão ser capturados pelo Marketplace e repassados na Criação do Pedido na condição de pagamento "credit_card":

    • payments: cardData: cardBrand ==> paymentData: payments: cardData: cardBrand

    • payments: cardData: transactionId ==> paymentData: payments: cardData: transactionId

Last updated

Was this helpful?