---
updatedAt: 2026-05-04T19:18:29.000Z
agentTools:
  siteIndex: https://developers.pismo.io/llms.txt
  projectIndex: https://developers.pismo.io/pismo-docs/llms.txt
---

# Validate QR Code

Retrieve and validate Pix QR Code.

# OpenAPI definition

```json
{
  "openapi": "3.1.0",
  "info": {
    "title": "Instant payments - Pix payments",
    "description": "API to handle Pix transactions",
    "contact": {
      "name": "API Support",
      "url": "https://developers.pismo.io/support/"
    },
    "license": {
      "name": "Copyright Pismo"
    },
    "version": "1.0"
  },
  "servers": [
    {
      "url": "https://sandbox-cdn.pismolabs.io",
      "description": "Sandbox API server for testing"
    },
    {
      "url": "https://sandbox-cdn.pismolabs.io/inst-pull-pay",
      "description": "Sandbox API server for testing instant pull pay."
    }
  ],
  "tags": [
    {
      "name": "Pix"
    }
  ],
  "components": {
    "parameters": {
      "AuthHeader": {
        "in": "header",
        "name": "Authorization",
        "required": true,
        "description": "Account token - an access token encoded with a Pismo account ID. Tokens can expire quickly, which can result in a <b>401 Unauthorized</b> message.",
        "schema": {
          "type": "string",
          "example": "Bearer eyJhbGci...IUzUx"
        }
      }
    },
    "schemas": {
      "AccountNumber": {
        "type": "string",
        "description": "Account number.",
        "maxLength": 20,
        "example": "98765432"
      },
      "AccountNumber2": {
        "type": "string",
        "description": "Payer's account number.",
        "maxLength": 20,
        "example": "98765432"
      },
      "AccountType": {
        "type": "string",
        "enum": [
          "CACC",
          "SLRY",
          "SVGS",
          "TRAN"
        ],
        "maxLength": 4,
        "description": "Account type:  <br />\n  `CACC` - Checking/current account.  Known as \"conta corrente\" in Portuguese, this is a bank account type designed for everyday financial transactions and is the most common type individuals and businesses use for day-to-day banking.<br />\n  `SVGS` - Savings account<br />\n  `TRAN` - Payment account. Payment institutions offer payment accounts to move funds and make payments, while banks offer checking accounts that include full financial services such as credit and investments.<br />\n  `SLRY` - Salary account. Employer deposits a fixed amount every month.<br />\n",
        "example": "TRAN"
      },
      "AgentModality": {
        "type": "string",
        "description": "Withdrawal service agent. **REQUIRED** for `CHANGE` and `WITHDRAWAL` transactions.<br />\n  * `AGTEC` - Agente estabelecimento comercial. For commercial establishment.<br />\n  * `AGFSS` - Agente Facilitador de Serviço de Saque. For cash machine.<br />\n  * `AGTOT` - Agente Outra Espécie de Pessoa Jurídicas ou correspondente no País. Withdrawal service facilitator.<br />\n",
        "enum": [
          "AGTEC",
          "AGTOT",
          "AGPSS"
        ],
        "example": "AGTEC"
      },
      "AllowsValueChange": {
        "type": "boolean",
        "description": "Can the payer change the final amount?",
        "example": false
      },
      "Amount": {
        "type": "number",
        "description": "Amount to be transferred.",
        "example": 1050.44
      },
      "Bank": {
        "type": "string",
        "description": "<a href=\"https://bank.codes/numero-do-banco/bank/banco-central-do-brasil/\" target=\"_blank\">ISPB (Identifcador do Sistema de Pagamento Brazil)</a> - the Brazilian Payment System ID for the receiving bank, an 8-digit value.",
        "maxLength": 8,
        "example": "237"
      },
      "Branch": {
        "type": "string",
        "description": "This could be a bank-assigned branch ID or the branch's ISPB number.",
        "maxLength": 4,
        "example": "011"
      },
      "CityCode": {
        "type": "string",
        "description": "The <a href='https://www.ibge.gov.br/explica/codigos-dos-municipios.php' target=\"_blank\">IBGE</a> (Instituto Brasileiro de Geografia e Estatística) city code.",
        "example": "3550308"
      },
      "commons.AdditionalInfo": {
        "type": "object",
        "properties": {
          "name": {
            "type": "string",
            "description": "QR Code name information.",
            "example": "Discount"
          },
          "value": {
            "type": "string",
            "description": "QR Code value information.",
            "example": "Paying until the 5th, there will be a 10% discount"
          }
        }
      },
      "commons.Charges": {
        "type": "object",
        "properties": {
          "discount_value": {
            "$ref": "#/components/schemas/DiscountValue"
          },
          "interest_value": {
            "$ref": "#/components/schemas/InterestValue"
          },
          "fine_value": {
            "$ref": "#/components/schemas/FineValue"
          },
          "settled_value": {
            "$ref": "#/components/schemas/SettledValue"
          }
        }
      },
      "commons.Dates": {
        "type": "object",
        "properties": {
          "creation_datetime": {
            "type": "string",
            "description": "UTC creation date time.",
            "example": "2020-09-15T19:39:54.013Z"
          },
          "due_date": {
            "type": "string",
            "description": "Due date, format = YYYY-MM-DD",
            "example": "2020-09-15"
          },
          "expiration_datetime": {
            "type": "string",
            "description": "UTC expiration date time.",
            "example": "2020-09-15T19:39:54.013Z"
          },
          "presentation_datetime": {
            "type": "string",
            "description": "UTC presentation date time.",
            "example": "2020-09-15T19:39:54.013Z"
          },
          "validity_after_expiration_day": {
            "type": "integer",
            "description": "How long, in days, the QR Code is active or functional after the expiration date.",
            "example": 30
          }
        }
      },
      "commons.Debtor": {
        "type": "object",
        "properties": {
          "document_number": {
            "$ref": "#/components/schemas/DocumentNumber"
          },
          "name": {
            "$ref": "#/components/schemas/Name"
          }
        }
      },
      "commons.Payee": {
        "type": "object",
        "properties": {
          "type": {
            "$ref": "#/components/schemas/PersonType"
          },
          "account_number": {
            "$ref": "#/components/schemas/AccountNumber"
          },
          "account_type": {
            "$ref": "#/components/schemas/AccountType"
          },
          "address": {
            "type": "string",
            "description": "Payee street address.",
            "example": "1542 3rd Ave"
          },
          "bank": {
            "$ref": "#/components/schemas/Bank"
          },
          "branch": {
            "$ref": "#/components/schemas/Branch"
          },
          "city": {
            "type": "string",
            "description": "Payee city.",
            "example": "New York"
          },
          "document_number": {
            "$ref": "#/components/schemas/DocumentNumber"
          },
          "key": {
            "$ref": "#/components/schemas/Key"
          },
          "name": {
            "$ref": "#/components/schemas/Name"
          },
          "participant_id": {
            "type": "integer",
            "description": "Pix participant ID (ISPB).",
            "example": 60701190
          },
          "state": {
            "type": "string",
            "description": "Payee state.",
            "example": "NY"
          },
          "zip_code": {
            "$ref": "#/components/schemas/PostalCode"
          }
        }
      },
      "ContractID": {
        "type": "string",
        "description": "Payee-created external ID for their reference.\n",
        "maxLength": 35,
        "example": "5509-uroo-78944-9987"
      },
      "CreatedAt": {
        "type": "string",
        "format": "datetime",
        "description": "Created at datetime. RFC 3339 format \n",
        "example": "2025-11-14T17:54:40Z"
      },
      "customer.DetailMessage": {
        "type": "object",
        "properties": {
          "external": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/customer.ExternalMessage"
            }
          },
          "parameters": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/customer.ParameterMessage"
            }
          },
          "payload": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/customer.PayloadMessage"
            }
          }
        }
      },
      "customer.Error": {
        "type": "object",
        "properties": {
          "code": {
            "type": "string",
            "description": "Error's code.",
            "example": "EPT0001"
          },
          "details": {
            "$ref": "#/components/schemas/customer.DetailMessage"
          },
          "message": {
            "type": "string",
            "description": "Error's message.",
            "example": "User not found"
          }
        }
      },
      "customer.ExternalMessage": {
        "type": "object",
        "required": [
          "code",
          "message"
        ],
        "properties": {
          "code": {
            "type": "string",
            "description": "Error code.",
            "example": "PBE315"
          },
          "message": {
            "type": "string",
            "description": "Error message.",
            "example": "Generic error"
          }
        }
      },
      "customer.ParameterMessage": {
        "type": "object",
        "required": [
          "field",
          "message"
        ],
        "properties": {
          "field": {
            "type": "string",
            "description": "Parameter field",
            "example": "Query parameter"
          },
          "message": {
            "type": "string",
            "description": "Message about parameter",
            "example": "Generic error"
          }
        }
      },
      "customer.PayloadMessage": {
        "type": "object",
        "required": [
          "field",
          "message"
        ],
        "properties": {
          "field": {
            "type": "string",
            "description": "Payload parameter",
            "example": "Entity.field"
          },
          "message": {
            "type": "string",
            "description": "Message about error",
            "example": "Generic error"
          }
        }
      },
      "Debtor": {
        "type": "object",
        "required": [
          "document_number",
          "document_type",
          "name"
        ],
        "properties": {
          "document_number": {
            "$ref": "#/components/schemas/DocumentNumber"
          },
          "document_type": {
            "$ref": "#/components/schemas/PersonType"
          },
          "name": {
            "$ref": "#/components/schemas/Name"
          }
        }
      },
      "DiscountValue": {
        "type": "number",
        "description": "Discount value.",
        "example": 0.15
      },
      "DocumentNumber": {
        "type": "string",
        "description": "A government document number, such as a Social Security number (US) or Cadastro de Pessoas Físicas number (Brazil). Must be numeric with 11-14 digits.\n",
        "minLength": 1,
        "maxLength": 14,
        "example": "123412341234"
      },
      "EndToEndID": {
        "type": "string",
        "description": "This field is a Brazil Central Bank (BCB) requirement to track all steps of Pix transactions. \nBasically, there are two steps to a Pix transaction:\n    1. Initialize a transaction \n    2. Confirm a transaction\nThe `end_to_end_id` is sent to the BCB in both steps in order to identify all transaction information. \n",
        "example": "E3030629420200808195101608910248"
      },
      "FineValue": {
        "type": "number",
        "description": "Fine value.",
        "example": 5.15
      },
      "FirstPaymentDate": {
        "type": "string",
        "format": "datetime",
        "description": "First charge/payment date. Format = YYYY-MM-DD",
        "example": "2025-04-25"
      },
      "FrequencyType": {
        "type": "string",
        "description": "Recurrence payment type",
        "enum": [
          "WEEK",
          "MONTH",
          "QUARTER",
          "SEMESTER",
          "YEAR"
        ],
        "example": "MONTH"
      },
      "HistoryItem": {
        "type": "object",
        "properties": {
          "status": {
            "$ref": "#/components/schemas/RecurrenceStatus"
          },
          "updated_at": {
            "$ref": "#/components/schemas/UpdatedAt"
          }
        }
      },
      "InitialAmount": {
        "type": "string",
        "description": "The initial purchase price amount before charges or withdrawal changes.",
        "example": "10.02"
      },
      "InterestValue": {
        "type": "number",
        "description": "Interest value.",
        "example": 20.15
      },
      "ISPB": {
        "type": "string",
        "description": "<a href=\"https://bank.codes/numero-do-banco/bank/banco-central-do-brasil/\" target=\"_blank\">ISPB (Identifcador do Sistema de Pagamento Brazil)</a> - the Brazilian Payment System ID, an 8-digit value.",
        "maxLength": 8,
        "example": "60701190"
      },
      "JourneyType": {
        "type": "string",
        "description": "Recurrence payment type: \n `AUT1` - Bank notification. If the merchant has the payer's banking information, a push notification can be sent directly to the payer's bank app, prompting them to authorize the recurring payment.\n \n `AUT2` - Authorization via QR Code. Payer scans a merchant provided QR Code to authorize recurring payments. This method does not initiate an immediate payment, allowing the first payment to be scheduled for a later date.\n \n `AUT3` - Authorization via QR Code with first payment.  Similar to the second method, but the QR Code includes information for both the authorization and the initial payment, enabling the payer to authorize the recurring payment and make the first payment in a single step.\n \n `AUT4` - Post-payment sign-up path. After completing a one-time payment via QR Code, the payer is offered the option to authorize recurring payments for future transactions\n\n For more information, refer to [Pix automatic use cases (journeys)](https://developers.pismo.io/pismo-docs/docs/pix-automatic-beta-copy-2#pix-automatic-use-cases-journeys).\n",
        "enum": [
          "AUT1",
          "AUT2",
          "AUT3",
          "AUT4"
        ],
        "example": "AUT1"
      },
      "Key": {
        "maxLength": 77,
        "type": "string",
        "description": "Pix key value.",
        "example": "email@email.com"
      },
      "LastPaymentDate": {
        "type": "string",
        "format": "datetime",
        "description": "Last charge/payment date. Format = YYYY-MM-DD",
        "example": "2026-06-10"
      },
      "MinPaymentAmount": {
        "type": "number",
        "description": "Minimum payment amount for dynamic amount recurrences, defined by payee.",
        "example": 10.09
      },
      "Name": {
        "type": "string",
        "description": "Name",
        "maxLength": 200,
        "example": "Walter Melon"
      },
      "Payee": {
        "type": "object",
        "required": [
          "document_number",
          "document_type",
          "name",
          "bank",
          "branch",
          "account_number",
          "account_type"
        ],
        "properties": {
          "name": {
            "$ref": "#/components/schemas/Name"
          },
          "document_number": {
            "$ref": "#/components/schemas/DocumentNumber"
          },
          "document_type": {
            "$ref": "#/components/schemas/PersonType"
          },
          "bank": {
            "$ref": "#/components/schemas/Bank"
          },
          "branch": {
            "$ref": "#/components/schemas/Branch"
          },
          "account_number": {
            "$ref": "#/components/schemas/AccountNumber2"
          },
          "account_type": {
            "$ref": "#/components/schemas/AccountType"
          }
        }
      },
      "Payer": {
        "type": "object",
        "required": [
          "document_number",
          "document_type",
          "name",
          "bank",
          "branch",
          "account_number"
        ],
        "properties": {
          "document_number": {
            "$ref": "#/components/schemas/DocumentNumber"
          },
          "document_type": {
            "$ref": "#/components/schemas/PersonType"
          },
          "name": {
            "$ref": "#/components/schemas/Name"
          },
          "bank": {
            "$ref": "#/components/schemas/Bank"
          },
          "branch": {
            "$ref": "#/components/schemas/Branch"
          },
          "account_number": {
            "$ref": "#/components/schemas/AccountNumber2"
          },
          "account_type": {
            "$ref": "#/components/schemas/AccountType"
          },
          "city_code": {
            "$ref": "#/components/schemas/CityCode"
          }
        }
      },
      "PersonType": {
        "type": "string",
        "description": "Person type:  \n* `LEGAL_PERSON` - An actual person with legal rights.\n* `NATURAL_PERSON` - An entity, such as an organization or company.\n",
        "enum": [
          "LEGAL_PERSON",
          "NATURAL_PERSON"
        ],
        "example": "NATURAL_PERSON"
      },
      "pix.QRCodeRequest": {
        "required": [
          "emv"
        ],
        "type": "object",
        "properties": {
          "emv": {
            "type": "string",
            "description": "BR Code in the Europay, Mastercard, Visa (EMV) format. \n\nA BR Code is the standard for QR Codes in Brazil and is commonly known as *Boleto Bancario*. A vendor or service provider generates a Boleto Bancario with the necessary information such as the payer's name, the payment amount, the due date, and the vendor's information.\n",
            "example": "00020126410014BR.GOV.BCB.PIX0119102785947@email.com5204000053039865802BR5915Teste do Fulano6009SAO PAULO61080550900062070503***630495F6"
          },
          "desired_payment_date": {
            "type": "string",
            "description": "Desired payment date, format = YYYY-MM-DD\n\nThis field is used to calculate fees and discounts on QR codes with the due date.\n",
            "example": "2021-11-18"
          }
        }
      },
      "pix.QRCodeResponse": {
        "type": "object",
        "required": [
          "amount",
          "end_to_end_id",
          "payee",
          "qrcode_type",
          "transaction_type"
        ],
        "properties": {
          "additional_information": {
            "type": "array",
            "description": "QR Code additional information. Information generated by payee's participant when transaction is a dynamic QR Code process.\n",
            "items": {
              "$ref": "#/components/schemas/commons.AdditionalInfo"
            }
          },
          "allows_value_change": {
            "$ref": "#/components/schemas/AllowsValueChange"
          },
          "amount": {
            "$ref": "#/components/schemas/Amount"
          },
          "charges": {
            "$ref": "#/components/schemas/commons.Charges"
          },
          "dates": {
            "$ref": "#/components/schemas/commons.Dates"
          },
          "debtor": {
            "$ref": "#/components/schemas/commons.Debtor"
          },
          "end_to_end_id": {
            "$ref": "#/components/schemas/EndToEndID"
          },
          "initial_amount": {
            "$ref": "#/components/schemas/InitialAmount"
          },
          "payee": {
            "$ref": "#/components/schemas/commons.Payee"
          },
          "payer_solicitation": {
            "type": "string",
            "description": "Payer solicitation. The message from the receiver to the payer when using a QR Code.",
            "example": "Enter fidelity card"
          },
          "qrcode_type": {
            "$ref": "#/components/schemas/QRcodeType"
          },
          "remittance_information": {
            "$ref": "#/components/schemas/RemittanceInformation"
          },
          "revision": {
            "type": "integer",
            "description": "QR Code revision. If the QR Code is changed, the revision changes.",
            "example": 1
          },
          "status": {
            "$ref": "#/components/schemas/QRstatus"
          },
          "transaction_identification": {
            "type": "string",
            "description": "Creditor party generated transaction ID.",
            "example": "55d3992a-2f89-46fb-820a-958693bde84d"
          },
          "transaction_type": {
            "$ref": "#/components/schemas/TransactionType"
          },
          "withdrawal": {
            "$ref": "#/components/schemas/pix.QRCodeWithdrawResponse"
          },
          "recurrence": {
            "$ref": "#/components/schemas/pix.recurrence"
          }
        }
      },
      "pix.recurrence": {
        "type": "object",
        "properties": {
          "recurrence_id": {
            "type": "string",
            "description": "Recurrence ID",
            "example": "c80118a7-7cef-4378-a3be-e0e28efbf150"
          },
          "journey_type": {
            "$ref": "#/components/schemas/JourneyType"
          },
          "contract_id": {
            "$ref": "#/components/schemas/ContractID"
          },
          "amount": {
            "$ref": "#/components/schemas/Amount"
          },
          "min_payment_amount": {
            "$ref": "#/components/schemas/MinPaymentAmount"
          },
          "frequency_type": {
            "$ref": "#/components/schemas/FrequencyType"
          },
          "first_payment_date": {
            "$ref": "#/components/schemas/FirstPaymentDate"
          },
          "last_payment_date": {
            "$ref": "#/components/schemas/LastPaymentDate"
          },
          "payee": {
            "$ref": "#/components/schemas/Payee"
          },
          "debtor": {
            "$ref": "#/components/schemas/Debtor"
          },
          "payer": {
            "$ref": "#/components/schemas/Payer"
          },
          "retry": {
            "$ref": "#/components/schemas/Retry"
          },
          "created_at": {
            "$ref": "#/components/schemas/CreatedAt"
          },
          "read_at": {
            "$ref": "#/components/schemas/ReadAt"
          },
          "history": {
            "type": "array",
            "description": "QRcode history",
            "items": {
              "$ref": "#/components/schemas/HistoryItem"
            }
          }
        }
      },
      "pix.QRCodeWithdrawResponse": {
        "type": "object",
        "properties": {
          "agent_modality": {
            "$ref": "#/components/schemas/AgentModality"
          },
          "allows_value_change": {
            "$ref": "#/components/schemas/AllowsValueChange"
          },
          "amount": {
            "$ref": "#/components/schemas/Amount"
          },
          "ispb_service_provider": {
            "$ref": "#/components/schemas/ISPB"
          },
          "purchase_amount": {
            "$ref": "#/components/schemas/PurchaseAmount"
          }
        }
      },
      "PostalCode": {
        "type": "string",
        "description": "Postal/zip code",
        "example": "8675309"
      },
      "PurchaseAmount": {
        "type": "number",
        "description": "Purchase price before charges, withdrawal changes, or other changes.",
        "example": 1050.44
      },
      "QRcodeType": {
        "description": "QR Code type: \n`STATIC` - Static QR Code\n`STATIC_WITHDRAW` - Static withdrawal\n`DYNAMIC_COB` - Dynamic QR Code with charge \n`DYNAMIC_COBV` - Dynamic QR Code with charge that has due date\n`DYNAMIC_CHANGE`- Dynamic QR Code change\n`DYNAMIC_WITHDRAW` - Dynamic QR withdrawal\n",
        "type": "string",
        "enum": [
          "STATIC",
          "STATIC_WITHDRAW",
          "DYNAMIC_COB",
          "DYNAMIC_COBV",
          "DYNAMIC_CHANGE",
          "DYNAMIC_WITHDRAW"
        ],
        "example": "DYNAMIC_COB"
      },
      "QRstatus": {
        "type": "string",
        "description": "QR Code status: \n`ATIVA` - Active \n`CONCLUDIA` - Concluded \n`REMOVIDA_PELO_USUARIO_RECEBEDOR` - Removed by the receiving user\n`REMOVIDA_PELO_PSP` - Removed by PSP\n",
        "enum": [
          "ATIVA",
          "CONCLUIDA",
          "REMOVIDA_PELO_USUARIO_RECEBEDOR",
          "REMOVIDA_PELO_PSP"
        ],
        "example": "ATIVA"
      },
      "ReadAt": {
        "type": "string",
        "description": "Datetime QR Code was read, RFC 3339 format",
        "example": "2024-11-14T17:54:40Z"
      },
      "RecurrenceStatus": {
        "type": "string",
        "description": "\nRecurrence status\n\n  * `CREATED`\t  - Recurrence created, waiting on journey acceptance.\n  * `ACCEPTED`  - Payer accepted recurrence, awaiting confirmation from receiver's PSP.\n  * `APPROVED`  - Payer accepted recurrence and receiver's PSP confirmed. \n  * `REJECTED`  - Payer or receiver's PSP rejected recurrence during `ACCEPTED` validation. For example: receiver's account is inactive.\n  * `EXPIRED`   - Recurrence expired after last scheduled payment date.\n  * `CANCELLED` - Payer or reciever cancelled recurrence.\n  * `FINISHED`  - Deprecated\n",
        "enum": [
          "CREATED",
          "ACCEPTED",
          "APPROVED",
          "REJECTED",
          "EXPIRED",
          "CANCELLED",
          "FINISHED"
        ],
        "example": "REJECTED"
      },
      "RemittanceInformation": {
        "type": "string",
        "description": "Remittance information. Information from payee when transaction is a static QR Code.\n",
        "maxLength": 140
      },
      "Retry": {
        "type": "boolean",
        "description": "Retry transaction on failure?",
        "example": true
      },
      "SettledValue": {
        "type": "number",
        "description": "Settlement value. Amount to transfer after all charges have been applied.",
        "example": 10.15
      },
      "TransactionType": {
        "type": "string",
        "description": "Type of transaction the QR Code validation generates.\n* `TRANSFER` - Standard immediate transfer payment. \n* `CHANGE` - Occurs when the QR Code validation returns `CHANGE`. For example, the customer buys something and pays more than the product value to receive the difference in cash. \n* `WITHDRAWAL` - Occurs when the QR Code validation returns `WITHDRAWAL` with `withdrawal` object values.\n* `REFUND_AUTOMATIC_PIX` - Total or partial to the PSP payer user within the Automatic Pix MED (Pix return mechanism) scope (only when initiated by a `MANUAL`).\n* `REFUND` = Total or partial refund to the paying user within the scope of MED 2.0, when this refund occurs from the PI Account of the user's PSP who participated in the distribution chain of the resources of the original transaction (only when initiated by a `MANUAL`)\n",
        "enum": [
          "TRANSFER",
          "CHANGE",
          "WITHDRAWAL",
          "REFUND_AUTOMATIC_PIX",
          "REFUND"
        ],
        "example": "TRANSFER"
      },
      "UpdatedAt": {
        "type": "string",
        "description": "Scheduled item last updated time, RFC 3339 format",
        "example": "2024-11-14T17:54:40Z"
      }
    }
  },
  "paths": {
    "/pix/v1/pix/qrcode/validate": {
      "post": {
        "tags": [
          "Pix"
        ],
        "summary": "Validate QR Code",
        "description": "Retrieve and validate Pix QR Code.",
        "operationId": "post-qr-code",
        "parameters": [
          {
            "$ref": "#/components/parameters/AuthHeader"
          }
        ],
        "requestBody": {
          "description": "Request Body",
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/pix.QRCodeRequest"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Response Body",
            "headers": {
              "x-cid": {
                "description": "Request tracking ID.",
                "schema": {
                  "type": "string"
                }
              }
            },
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/pix.QRCodeResponse"
                }
              }
            }
          },
          "400": {
            "description": "Bad Request",
            "headers": {
              "x-cid": {
                "description": "Request tracking ID.",
                "schema": {
                  "type": "string"
                }
              }
            },
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/customer.Error"
                },
                "examples": {
                  "EPIX0003": {
                    "summary": "Account not found",
                    "value": {
                      "code": "EPIX0003",
                      "message": "Account not found"
                    }
                  },
                  "EPIX0015": {
                    "summary": "x-account-id is not a valid number",
                    "value": {
                      "code": "EPIX0015",
                      "message": "x-account-id is not a valid number"
                    }
                  },
                  "EPIX0019": {
                    "summary": "Accounts - API returned 4xx error",
                    "value": {
                      "code": "EPIX0019",
                      "message": "Accounts - API returned 4xx error"
                    }
                  },
                  "EPIX0020": {
                    "summary": "SPI Gateway - API returned 4xx error",
                    "value": {
                      "code": "EPIX0020",
                      "message": "SPI Gateway - API returned 4xx error",
                      "details": {
                        "external": [
                          {
                            "code": "PCE001",
                            "message": "The value \"000000012345\" is invalid for PI-PayerId. The value must match \"((^[0-9]11$)|(^[0-9]14$))\""
                          }
                        ]
                      }
                    }
                  },
                  "EPIX0032": {
                    "summary": "Error unmarshalling request body",
                    "value": {
                      "code": "EPIX0032",
                      "message": "Error unmarshalling request body"
                    }
                  },
                  "EPIX0061": {
                    "summary": "PixDict - API returned 4xx error",
                    "value": {
                      "code": "EPIX0061",
                      "message": "PixDict - API returned 4xx error"
                    }
                  },
                  "EPIX0070": {
                    "summary": "QRCPS API do returned a merchant information without key and url",
                    "value": {
                      "code": "EPIX0070",
                      "message": "QRCPS API do returned a merchant information without key and url"
                    }
                  },
                  "EPIX0074": {
                    "summary": "QRCPS API returned 4xx error",
                    "value": {
                      "code": "EPIX0074",
                      "message": "QRCPS API returned 4xx error"
                    }
                  },
                  "EPIX0076": {
                    "summary": "QRCPS API do not returned a merchant information",
                    "value": {
                      "code": "EPIX0076",
                      "message": "QRCPS API do not returned a merchant information"
                    }
                  },
                  "EPIX0127": {
                    "summary": "Invalid field size for merchant category code",
                    "value": {
                      "code": "EPIX0127",
                      "message": "Invalid field size for merchant category code"
                    }
                  },
                  "EPIX0128": {
                    "summary": "Invalid value for transaction currency. Local currency must be used",
                    "value": {
                      "code": "EPIX0128",
                      "message": "Invalid value for transaction currency. Local currency must be used"
                    }
                  },
                  "EPIX0129": {
                    "summary": "Invalid value for transaction amount. Transaction amount must be greater than zero",
                    "value": {
                      "code": "EPIX0129",
                      "message": "Invalid value for transaction amount. Transaction amount must be greater than zero"
                    }
                  },
                  "EPIX0131": {
                    "summary": "Invalid QR Code, the payload format indicator is invalid",
                    "value": {
                      "code": "EPIX0131",
                      "message": "Invalid QR Code, the payload format indicator is invalid"
                    }
                  },
                  "EPIX0134": {
                    "summary": "Invalid QR Code, a merchant information cannot contain key and url filled in",
                    "value": {
                      "code": "EPIX0134",
                      "message": "Invalid QR Code, a merchant information cannot contain key and url filled in"
                    }
                  },
                  "EPIX0143": {
                    "summary": "Invalid QR Code, the country code must be BR",
                    "value": {
                      "code": "EPIX0143",
                      "message": "Invalid country code on QR Code. Must be `BR`"
                    }
                  }
                }
              }
            }
          },
          "403": {
            "description": "Forbidden",
            "headers": {
              "x-cid": {
                "description": "Request tracking ID.",
                "schema": {
                  "type": "string"
                }
              }
            },
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/customer.Error"
                },
                "examples": {
                  "EPIX0009": {
                    "summary": "Missing required header: \"x-tenant\"",
                    "value": {
                      "code": "EPIX0009",
                      "message": "Missing required header: \"x-tenant\""
                    }
                  },
                  "EPIX0010": {
                    "summary": "Invalid account id header: \"x-account-id\"",
                    "value": {
                      "code": "EPIX0010",
                      "message": "Invalid account id header: \"x-account-id\""
                    }
                  }
                }
              }
            }
          },
          "404": {
            "description": "Not Found",
            "headers": {
              "x-cid": {
                "description": "Request tracking ID.",
                "schema": {
                  "type": "string"
                }
              }
            },
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/customer.Error"
                },
                "examples": {
                  "EPIX0041": {
                    "summary": "SPI Gateway - Not found error. Check details",
                    "value": {
                      "code": "EPIX0041",
                      "message": "SPI Gateway - Not found error. Check details"
                    }
                  },
                  "EPIX0059": {
                    "summary": "PixDict - Not found",
                    "value": {
                      "code": "EPIX0059",
                      "message": "PixDict - Not found"
                    }
                  }
                }
              }
            }
          },
          "409": {
            "description": "Conflict",
            "headers": {
              "x-cid": {
                "description": "Request tracking ID.",
                "schema": {
                  "type": "string"
                }
              }
            },
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/customer.Error"
                },
                "examples": {
                  "EPIX0008": {
                    "summary": "Account blocked or cancelled",
                    "value": {
                      "code": "EPIX0008",
                      "message": "Account blocked or cancelled"
                    }
                  }
                }
              }
            }
          },
          "429": {
            "description": "Too Many Requests",
            "headers": {
              "x-cid": {
                "description": "Request tracking ID.",
                "schema": {
                  "type": "string"
                }
              }
            },
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/customer.Error"
                },
                "examples": {
                  "EPIX0031": {
                    "summary": "SPI Gateway - API returned a rate limit error",
                    "value": {
                      "code": "EPIX0031",
                      "message": "SPI Gateway - API returned a rate limit error"
                    }
                  }
                }
              }
            }
          },
          "500": {
            "description": "Internal Server Error",
            "headers": {
              "x-cid": {
                "description": "Request tracking ID.",
                "schema": {
                  "type": "string"
                }
              }
            },
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/customer.Error"
                },
                "examples": {
                  "EPIX0004": {
                    "summary": "Internal server error",
                    "value": {
                      "code": "EPIX0004",
                      "message": "Internal server error"
                    }
                  },
                  "EPIX0005": {
                    "summary": "Error unmarshalling object",
                    "value": {
                      "code": "EPIX0005",
                      "message": "Error unmarshalling object"
                    }
                  },
                  "EPIX0007": {
                    "summary": "HTTP error",
                    "value": {
                      "code": "EPIX0007",
                      "message": "HTTP error"
                    }
                  },
                  "EPIX0017": {
                    "summary": "Accounts - API returned 5xx error",
                    "value": {
                      "code": "EPIX0017",
                      "message": "Accounts - API returned 5xx error"
                    }
                  },
                  "EPIX0042": {
                    "summary": "Accounts API timeout error",
                    "value": {
                      "code": "EPIX0042",
                      "message": "Accounts API timeout error"
                    }
                  }
                }
              }
            }
          },
          "502": {
            "description": "Bad Gateway",
            "headers": {
              "x-cid": {
                "description": "Request tracking ID.",
                "schema": {
                  "type": "string"
                }
              }
            },
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/customer.Error"
                },
                "examples": {
                  "EPIX0018": {
                    "summary": "SPI Gateway - API returned error",
                    "value": {
                      "code": "EPIX0018",
                      "message": "SPI Gateway - API returned error"
                    }
                  },
                  "EPIX0060": {
                    "summary": "PixDict - API returned 5xx error",
                    "value": {
                      "code": "EPIX0060",
                      "message": "PixDict - API returned 5xx error"
                    }
                  },
                  "EPIX0075": {
                    "summary": "QRCPS API returned 5xx error",
                    "value": {
                      "code": "EPIX0075",
                      "message": "QRCPS API returned 5xx error"
                    }
                  }
                }
              }
            }
          },
          "504": {
            "description": "Gateway Timeout",
            "headers": {
              "x-cid": {
                "description": "Request tracking ID.",
                "schema": {
                  "type": "string"
                }
              }
            },
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/customer.Error"
                },
                "examples": {
                  "EPIX0073": {
                    "summary": "QRCPS API timeout error",
                    "value": {
                      "code": "EPIX0073",
                      "message": "QRCPS API timeout error"
                    }
                  },
                  "EPIX0030": {
                    "summary": "SPI Gateway - API returned a timeout error",
                    "value": {
                      "code": "EPIX0030",
                      "message": "SPI Gateway - API returned a timeout error"
                    }
                  },
                  "EPIX0058": {
                    "summary": "PixDict - API timeout",
                    "value": {
                      "code": "EPIX0058",
                      "message": "PixDict - API timeout"
                    }
                  }
                }
              }
            }
          }
        },
        "x-codegen-request-body-name": "RequestBody"
      }
    }
  }
}
```