A Jornada de Iniciação de Pagamentos da Finansystech possui como grande característica a flexibilidade para se adequar, de forma inteligente, às necessidades e contextos do seu negócio!

Com ela, a experiência do seu cliente será moldada de acordo com os parâmetros que você dispõe, o que nos permite atender a todos os contextos existentes no mercado.

Método de pagamento PIX Instantâneo

Ao conduzir o seu cliente para o momento de fechamento da compra, será necessário informar entre os métodos de pagamento PIX Via Open Finance, entre as demais opções convencionais do seu canal de vendas. O formato no qual a jornada será chamada, fica a cargo da estratégia que a sua empresa definir, podendo utilizar, por exemplo, QR Code ou link de acionamento da jornada, via botão.
 

Como iniciar a jornada

Para que uma empresa contratante da solução Open Keys possa chamar a Jornada de Iniciação de Pagamentos é necessário gerar um token no qual devem ser indicados client_id e client_secret da operação, que você encontra no painel da sua aplicação, menu configurações.

 

note

URL de geração do Token - Sandbox

URL de geração do Token - Sandbox

curl --location 'https://keycloak.celcoin.shared.fsapps.io/auth/realms/smart-keys/protocol/openid-connect/token' \
--header 'Content-Type: application/x-www-form-urlencoded' \
--data-urlencode 'grant_type=client_credentials' \
--data-urlencode 'scopes=openid' \
--data-urlencode 'client_id=${CLIENT_ID} \
--data-urlencode 'client_secret=${CLIENT_SECRET}'
note

URL de geração do Token - Produção

URL de geração do Token - Produção

curl --location 'https://keycloak.celcoin.shared.fsapps.io/auth/realms/smart-keys-prd/protocol/openid-connect/token' \
--header 'Content-Type: application/x-www-form-urlencoded' \
--data-urlencode 'grant_type=client_credentials' \
--data-urlencode 'scopes=openid' \
--data-urlencode 'client_id=${CLIENT_ID} \
--data-urlencode 'client_secret=${CLIENT_SECRET}'

 

note

cURL para geração do Token

cURL para geração do Token

curl --location '${TOKEN_URL}' \
--header 'Content-Type: application/json' \
--data '{   
    "client_id":"...-2567-....-ace9-...",
    "client_secret": "...8136-....-42ce-..."
}'

 

note

Response

Response

{
    "access_token": "...iJSUzI1NiIsInR5cCIgOiAiSldUIiwia2lkIiA6ICJJUV96OE...",
    "expires_in": 3600,
    "refresh_expires_in": 0,
    "token_type": "Bearer",
    "not-before-policy": 0,
    "scope": "email profile"
}

O token retornado no campo “access_token“ tem validade padrão de 1 hora e deve ser utilizado para realizar as chamadas subsequentes. Ele deve ser incluído no parâmetro Authentication do header da requisição, precedido da palavra “Bearer “, conforme exemplo abaixo.

'Authorization': 'Bearer eyJhbGciOiJSUzI1NiIsInR5cCIgOiAiSldUIiwia2lkIiA6ICJJUV96OE...'

note

POST Payment Initiantion

POST Payment Initiantion

Com o token gerado, é necessário passá-lo no authorization da chamada /consents, para obter o consentimento e informações do usuário que realizará o pagamento.

Este é o momento no qual você poderá informar o máximo de informações necessárias para a abertura do consentimento, como forma de otimizar a experiência do seu cliente.

Campos presentes na request e personalização da UX

Você pode utilizar mais de uma conta para recebimento dos pagamentos. Para utilizar sempre a conta cadastrada na aplicação criada com a Finansystech, basta realizar a chamada utilizando, no campo Paymenttype, o parâmetro DICT. Caso a sua escolha seja por utilizar qualquer outra conta em sua operação, basta passar no campo Paymenttype o parâmetro MANU com as informações da conta desejada como campos de Creditor e CreditorAccount. Confira os exemplos abaixo.

Especificidade para o campo de Paymentttype

note

URL de inicialização da jornada digital - utilizando DICT - Sandbox

URL de inicialização da jornada digital - utilizando DICT - Sandbox

JOURNEY_URL=https://onboard.smartkeys.celcoin.dev.fsapps.io/api/portal/onboard/v1/payment'

 

note

URL de inicialização da jornada digital - utilizando DICT - Produção

URL de inicialização da jornada digital - utilizando DICT - Produção

JOURNEY_URL=https://onboard.smartkeys.celcoin.dev.fsapps.io/api/portal/onboard/v1/payment'

 

note

Formato da Request da inicialização da Jornada Digital - utilizando o DICT

Formato da Request da inicialização da Jornada Digital - utilizando o DICT

curl --location '${JOURNEY_URL}' \
--header 'Content-Type: application/json' \
--header 'Authorization: Bearer eyJhbGciOiJSUzI1NiIsInR5cCIgOiAiSldUIiwia2lkIiA6ICJJUV96OE...' \
--data '{
    "cpf": "**93135***",
    "name": "Fernando",
    "amount": "100.00",
    "paymentview": "deposit-confirmation",
    "paymenttype": "DICT"
}'

note

Exemplo de Request com MANU

Exemplo de Request com MANU

curl --location '${JOURNEY_URL}' \
--header 'Content-Type: application/json' \
--header 'Authorization: Bearer eyJhbGciOiJSUzI1NiIsInR5cCIgOiAiSldUIiwia2lkIiA6ICJJUV96OE...' \
--data '{
    "cpf": "***81994***",
    "name": "Fernando",
    "amount": "0.15",
    "paymentview": "deposit-confirmation",
    "paymenttype": "MANU",
    "creditor": {
        "cpfCnpj": "***81564***",
        "name": "HOMOLOGACAO PIX",
        "personType": "PESSOA_NATURAL"
    },
    "creditorAccount": {
        "accountType": "CACC",
        "ispb": "9289****",
        "issuer": "00**",
        "number": "***73*2"
    }
}'

 

note

Exemplo de Response da chamada 

Exemplo de Response da chamada 

{
    "url": "https://smartkeys-wl.celcoin.dev.fsapps.io/select-institution?id=yL79m4Kzc7DI0WfL-QKW_k_2b5..."
}

 


Acompanhe o status da jornada

Status da Jornada de Pagamentos

Acompanhe o status do pagamento  

Para confirmar se o pagamento foi processado com sucesso e o status correspondente, você pode acompanhar via Webhook na Iniciação do Pagamento ou consultando o status do pagamento.

Consulta e registro da operação

Após receber um retorno de um token dentro da tag “ticket”, você deve inseri-lo na próxima chamada de consulta ao recibo do PIX. Para isso, você pode utilizar o ID do Consentimento, o ID da Jornada ou o ID do Pagamento.

note

URL Get Payment para consulta via ID do pagamento - Sandbox

URL Get Payment para consulta via ID do pagamento - Sandbox

PAYMENT_URL=https://api-openkeys.celcoin.dev.fsapps.io/open-keys-itp/api

 

note

URL Get Payment para consulta via ID do pagamento - Produção

URL Get Payment para consulta via ID do pagamento - Produção

PAYMENT_URL=https://api-openkeys.celcoin.prd.fsapps.io/open-keys-itp/api

   

Exemplo de Request para API de Get Payment a fim de verificar status do pagamento pelo ID do Pagamento

curl --location '${PAYMENT_URL}/payment-consumer/v1/pix/payments/0d42f0c8-f5ff-493f-a350-19d5b8b76618'
--header 'Authorization: Bearer eyJhbGciOiJSUzI1NiIsInR5cCIgOiAiSldUIiwia2lkIiA6ICJJUV96OE...' \

 

Response da chamada

{
    "paymentId": "30ddc97c-90d0-4ba6-b681-...",
    "status": "ACCEPTED"
}

O parâmetro status pode receber os valores: "ACCEPTED", "AWAITING_APPROVAL" e "REJECTED"

 

note

URL Get Consent para consulta via ID do consentimento - Sandbox

URL Get Consent para consulta via ID do consentimento - Sandbox

CONSENT_URL=https://api-openkeys.celcoin.dev.fsapps.io/open-keys-itp/api

 

note

URL Get Consent para consulta via ID do consentimento - Produção

URL Get Consent para consulta via ID do consentimento - Produção

CONSENT_URL=https://api-openkeys.celcoin.prd.fsapps.io/open-keys-itp/api

   

Exemplo de Request para API de Get Consent a fim de verificar status do pagamento pelo ID do Consentimento

curl --location '${CONSENT_URL}/payment-initiation/v1/consents/SIizFZDGOdzW6JNxTa-r9hZ6sWVmbtX5PHmKhEvG36c'
--header 'Authorization: Bearer eyJhbGciOiJSUzI1NiIsInR5cCIgOiAiSldUIiwia2lkIiA6ICJJUV96OE...' \

 

Response da chamada

{
    "paymentId": "30ddc97c-90d0-4ba6-b681-...",
    "status": "ACCEPTED"
}

O parâmetro status pode receber os valores: "ACCEPTED", "AWAITING_APPROVAL" e "REJECTED"

  

Continue sua jornada

Configurar aplicação

Integração via APIs

Voltar ao menu