Pular para o conteúdo principal
POST
/
v1
/
pix-automatico
/
composite
/
static
Criar QR code composto de Pix Automático estático
curl --request POST \
  --url https://plugin-pix-direct.api.lerian.net/v1/pix-automatico/composite/static \
  --header 'Authorization: Bearer <token>' \
  --header 'Content-Type: application/json' \
  --data '
{
  "accountId": "<string>",
  "jwkUrl": "<string>",
  "key": "<string>",
  "recurrence": {
    "contractNumber": "<string>",
    "debtor": {
      "cpfCnpj": "<string>",
      "name": "<string>",
      "personType": 123
    },
    "frequency": 123,
    "recipient": {
      "cnpj": "<string>",
      "ispb": "<string>",
      "name": "<string>"
    },
    "recurrenceId": "<string>",
    "retry": 123,
    "startDate": "<string>",
    "amount": 123,
    "contractDesc": "<string>",
    "endDate": "<string>",
    "maxFloorAmount": 123
  },
  "recurrencePayloadUrl": "<string>",
  "amount": 123,
  "certificateIspb": "<string>",
  "description": "<string>",
  "txId": "<string>",
  "zipCode": "<string>"
}
'
import requests

url = "https://plugin-pix-direct.api.lerian.net/v1/pix-automatico/composite/static"

payload = {
    "accountId": "<string>",
    "jwkUrl": "<string>",
    "key": "<string>",
    "recurrence": {
        "contractNumber": "<string>",
        "debtor": {
            "cpfCnpj": "<string>",
            "name": "<string>",
            "personType": 123
        },
        "frequency": 123,
        "recipient": {
            "cnpj": "<string>",
            "ispb": "<string>",
            "name": "<string>"
        },
        "recurrenceId": "<string>",
        "retry": 123,
        "startDate": "<string>",
        "amount": 123,
        "contractDesc": "<string>",
        "endDate": "<string>",
        "maxFloorAmount": 123
    },
    "recurrencePayloadUrl": "<string>",
    "amount": 123,
    "certificateIspb": "<string>",
    "description": "<string>",
    "txId": "<string>",
    "zipCode": "<string>"
}
headers = {
    "Authorization": "Bearer <token>",
    "Content-Type": "application/json"
}

response = requests.post(url, json=payload, headers=headers)

print(response.text)
const options = {
  method: 'POST',
  headers: {Authorization: 'Bearer <token>', 'Content-Type': 'application/json'},
  body: JSON.stringify({
    accountId: '<string>',
    jwkUrl: '<string>',
    key: '<string>',
    recurrence: {
      contractNumber: '<string>',
      debtor: {cpfCnpj: '<string>', name: '<string>', personType: 123},
      frequency: 123,
      recipient: {cnpj: '<string>', ispb: '<string>', name: '<string>'},
      recurrenceId: '<string>',
      retry: 123,
      startDate: '<string>',
      amount: 123,
      contractDesc: '<string>',
      endDate: '<string>',
      maxFloorAmount: 123
    },
    recurrencePayloadUrl: '<string>',
    amount: 123,
    certificateIspb: '<string>',
    description: '<string>',
    txId: '<string>',
    zipCode: '<string>'
  })
};

fetch('https://plugin-pix-direct.api.lerian.net/v1/pix-automatico/composite/static', options)
  .then(res => res.json())
  .then(res => console.log(res))
  .catch(err => console.error(err));
<?php

$curl = curl_init();

curl_setopt_array($curl, [
  CURLOPT_URL => "https://plugin-pix-direct.api.lerian.net/v1/pix-automatico/composite/static",
  CURLOPT_RETURNTRANSFER => true,
  CURLOPT_ENCODING => "",
  CURLOPT_MAXREDIRS => 10,
  CURLOPT_TIMEOUT => 30,
  CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
  CURLOPT_CUSTOMREQUEST => "POST",
  CURLOPT_POSTFIELDS => json_encode([
    'accountId' => '<string>',
    'jwkUrl' => '<string>',
    'key' => '<string>',
    'recurrence' => [
        'contractNumber' => '<string>',
        'debtor' => [
                'cpfCnpj' => '<string>',
                'name' => '<string>',
                'personType' => 123
        ],
        'frequency' => 123,
        'recipient' => [
                'cnpj' => '<string>',
                'ispb' => '<string>',
                'name' => '<string>'
        ],
        'recurrenceId' => '<string>',
        'retry' => 123,
        'startDate' => '<string>',
        'amount' => 123,
        'contractDesc' => '<string>',
        'endDate' => '<string>',
        'maxFloorAmount' => 123
    ],
    'recurrencePayloadUrl' => '<string>',
    'amount' => 123,
    'certificateIspb' => '<string>',
    'description' => '<string>',
    'txId' => '<string>',
    'zipCode' => '<string>'
  ]),
  CURLOPT_HTTPHEADER => [
    "Authorization: Bearer <token>",
    "Content-Type: application/json"
  ],
]);

$response = curl_exec($curl);
$err = curl_error($curl);

curl_close($curl);

if ($err) {
  echo "cURL Error #:" . $err;
} else {
  echo $response;
}
package main

import (
	"fmt"
	"strings"
	"net/http"
	"io"
)

func main() {

	url := "https://plugin-pix-direct.api.lerian.net/v1/pix-automatico/composite/static"

	payload := strings.NewReader("{\n  \"accountId\": \"<string>\",\n  \"jwkUrl\": \"<string>\",\n  \"key\": \"<string>\",\n  \"recurrence\": {\n    \"contractNumber\": \"<string>\",\n    \"debtor\": {\n      \"cpfCnpj\": \"<string>\",\n      \"name\": \"<string>\",\n      \"personType\": 123\n    },\n    \"frequency\": 123,\n    \"recipient\": {\n      \"cnpj\": \"<string>\",\n      \"ispb\": \"<string>\",\n      \"name\": \"<string>\"\n    },\n    \"recurrenceId\": \"<string>\",\n    \"retry\": 123,\n    \"startDate\": \"<string>\",\n    \"amount\": 123,\n    \"contractDesc\": \"<string>\",\n    \"endDate\": \"<string>\",\n    \"maxFloorAmount\": 123\n  },\n  \"recurrencePayloadUrl\": \"<string>\",\n  \"amount\": 123,\n  \"certificateIspb\": \"<string>\",\n  \"description\": \"<string>\",\n  \"txId\": \"<string>\",\n  \"zipCode\": \"<string>\"\n}")

	req, _ := http.NewRequest("POST", url, payload)

	req.Header.Add("Authorization", "Bearer <token>")
	req.Header.Add("Content-Type", "application/json")

	res, _ := http.DefaultClient.Do(req)

	defer res.Body.Close()
	body, _ := io.ReadAll(res.Body)

	fmt.Println(string(body))

}
HttpResponse<String> response = Unirest.post("https://plugin-pix-direct.api.lerian.net/v1/pix-automatico/composite/static")
  .header("Authorization", "Bearer <token>")
  .header("Content-Type", "application/json")
  .body("{\n  \"accountId\": \"<string>\",\n  \"jwkUrl\": \"<string>\",\n  \"key\": \"<string>\",\n  \"recurrence\": {\n    \"contractNumber\": \"<string>\",\n    \"debtor\": {\n      \"cpfCnpj\": \"<string>\",\n      \"name\": \"<string>\",\n      \"personType\": 123\n    },\n    \"frequency\": 123,\n    \"recipient\": {\n      \"cnpj\": \"<string>\",\n      \"ispb\": \"<string>\",\n      \"name\": \"<string>\"\n    },\n    \"recurrenceId\": \"<string>\",\n    \"retry\": 123,\n    \"startDate\": \"<string>\",\n    \"amount\": 123,\n    \"contractDesc\": \"<string>\",\n    \"endDate\": \"<string>\",\n    \"maxFloorAmount\": 123\n  },\n  \"recurrencePayloadUrl\": \"<string>\",\n  \"amount\": 123,\n  \"certificateIspb\": \"<string>\",\n  \"description\": \"<string>\",\n  \"txId\": \"<string>\",\n  \"zipCode\": \"<string>\"\n}")
  .asString();
require 'uri'
require 'net/http'

url = URI("https://plugin-pix-direct.api.lerian.net/v1/pix-automatico/composite/static")

http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true

request = Net::HTTP::Post.new(url)
request["Authorization"] = 'Bearer <token>'
request["Content-Type"] = 'application/json'
request.body = "{\n  \"accountId\": \"<string>\",\n  \"jwkUrl\": \"<string>\",\n  \"key\": \"<string>\",\n  \"recurrence\": {\n    \"contractNumber\": \"<string>\",\n    \"debtor\": {\n      \"cpfCnpj\": \"<string>\",\n      \"name\": \"<string>\",\n      \"personType\": 123\n    },\n    \"frequency\": 123,\n    \"recipient\": {\n      \"cnpj\": \"<string>\",\n      \"ispb\": \"<string>\",\n      \"name\": \"<string>\"\n    },\n    \"recurrenceId\": \"<string>\",\n    \"retry\": 123,\n    \"startDate\": \"<string>\",\n    \"amount\": 123,\n    \"contractDesc\": \"<string>\",\n    \"endDate\": \"<string>\",\n    \"maxFloorAmount\": 123\n  },\n  \"recurrencePayloadUrl\": \"<string>\",\n  \"amount\": 123,\n  \"certificateIspb\": \"<string>\",\n  \"description\": \"<string>\",\n  \"txId\": \"<string>\",\n  \"zipCode\": \"<string>\"\n}"

response = http.request(request)
puts response.read_body
{
  "qrCode": "<string>",
  "documentId": "<string>",
  "recurrencePayload": "<string>"
}
{
  "code": "<string>",
  "detail": "<string>",
  "errors": [
    {
      "location": "<string>",
      "message": "<string>",
      "value": "<unknown>"
    }
  ],
  "instance": "<string>",
  "status": 123,
  "title": "<string>",
  "type": "about:blank"
}

Autorizações

Authorization
string
header
obrigatório

Autenticacao por token JWT Bearer. Obtenha o token no endpoint /v1/login/oauth/access_token usando credenciais do cliente (clientId e clientSecret).

Inclua o token no header Authorization: Authorization: Bearer eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9...

O token expira apos 3600 segundos (1 hora).

Corpo

application/json
accountId
string
obrigatório

O id da conta no CRM do recebedor (fonte de nome + cidade).

jwkUrl
string
obrigatório

URL do JWK Set (urlJwk; sem esquema).

key
string
obrigatório

A chave Pix na qual o QR composto recebe.

recurrence
object
obrigatório
recurrencePayloadUrl
string
obrigatório

URL do host JWS de recorrência (urlPayloadJsonRec; sem esquema).

amount
number<double>

Valor em reais (0 = QR estático de valor livre).

certificateIspb
string

ISPB do certificado do PSP indireto (ispbCertificadoJws, string).

description
string

Dados adicionais em texto livre (dadosAdicionais).

txId
string

Id de conciliação (idConciliacaoRecebedor).

zipCode
string

CEP do recebedor (cep).

Resposta

Criado

qrCode
string
obrigatório

A EMV composta-QR gerada (payload decodificado em base64, pronto para renderizar).

documentId
string

O id do documento da recorrência/cobrança (idDocumento, GUID).

recurrencePayload
string

O JWS de recorrência assinado (payloadJwsRecorrencia).