v1

latestOpenAPI 3.1.0Copyright Pismo2026-07-247702,7523.1 MB
Pix

Validate QR Code

Retrieve and validate Pix QR Code.

post/pix/v1/pix/qrcode/validate

Headers

Authorizationstring required
Example:Bearer eyJhbGci...IUzUx

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.

Request body

emvstring required

BR Code in the Europay, Mastercard, Visa (EMV) format.

A 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.

desired_payment_datestring

Desired payment date, format = yyyy-mm-dd

This field is used to calculate fees and discounts on QR codes with the due date.

Example request

{
  "emv": "00020126410014BR.GOV.BCB.PIX0119102785947@email.com5204000053039865802BR5915Teste do Fulano6009SAO PAULO61080550900062070503***630495F6",
  "desired_payment_date": "2021-11-18"
}

Response

Response Body

allows_value_changeboolean

Can the payer change the final amount?

amountnumber double required

Fee amount.

end_to_end_idstring required

This field is a Brazil Central Bank (BCB) requirement to track all steps of Pix transactions. Basically, there are two steps to a Pix transaction: 1. Initialize a transaction 2. Confirm a transaction The end_to_end_id is sent to the BCB in both steps in order to identify all transaction information.

initial_amountstring

The initial purchase price amount before charges or withdrawal changes.

payer_solicitationstring

Payer solicitation. The message from the receiver to the payer when using a QR Code.

qrcode_type'STATIC' | 'STATIC_WITHDRAW' | 'DYNAMIC_COB' | 'DYNAMIC_COBV' | 'DYNAMIC_CHANGE' | 'DYNAMIC_WITHDRAW' required

QR Code type: STATIC - Static QR Code STATIC_WITHDRAW - Static withdrawal DYNAMIC_COB - Dynamic QR Code with charge DYNAMIC_COBV - Dynamic QR Code with charge that has due date DYNAMIC_CHANGE- Dynamic QR Code change DYNAMIC_WITHDRAW - Dynamic QR withdrawal

remittance_informationstring

Remittance information. Information from payee when transaction is a static QR Code.

revisioninteger

QR Code revision. If the QR Code is changed, the revision changes.

status'ATIVA' | 'CONCLUIDA' | 'REMOVIDA_PELO_USUARIO_RECEBEDOR' | 'REMOVIDA_PELO_PSP'

QR Code status: ATIVA - Active CONCLUDIA - Concluded REMOVIDA_PELO_USUARIO_RECEBEDOR - Removed by the receiving user REMOVIDA_PELO_PSP - Removed by PSP

transaction_identificationstring

Creditor party generated transaction ID.

transaction_type'TRANSFER' | 'CHANGE' | 'WITHDRAWAL' | 'REFUND_AUTOMATIC_PIX' | 'REFUND' required

Type of transaction the QR Code validation generates.

  • TRANSFER - Standard immediate transfer payment.
  • 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.
  • WITHDRAWAL - Occurs when the QR Code validation returns WITHDRAWAL with withdrawal object values.
  • 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).
  • 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)

Example response

{
  "additional_information": [
    {
      "name": "Discount",
      "value": "Paying until the 5th, there will be a 10% discount"
    }
  ],
  "amount": 215,
  "charges": {
    "discount_value": 0.15,
    "interest_value": 20.15,
    "fine_value": 5.15,
    "settled_value": 10.15
  },
  "dates": {
    "creation_datetime": "2020-09-15T19:39:54.013Z",
    "due_date": "2020-09-15",
    "expiration_datetime": "2020-09-15T19:39:54.013Z",
    "presentation_datetime": "2020-09-15T19:39:54.013Z",
    "validity_after_expiration_day": 30
  },
  "debtor": {
    "document_number": "7777888hh",
    "name": "Paul Bearer"
  },
  "end_to_end_id": "E3030629420200808195101608910248",
  "initial_amount": "10.02",
  "payee": {
    "type": "NATURAL_PERSON",
    "account_number": "98765432",
    "account_type": "TRAN",
    "address": "1542 3rd Ave",
    "bank": "237",
    "branch": "011",
    "city": "New York",
    "document_number": "7777888hh",
    "key": "email@email.com",
    "name": "Paul Bearer",
    "participant_id": 60701190,
    "state": "NY",
    "zip_code": "01701000"
  },
  "payer_solicitation": "Enter fidelity card",
  "qrcode_type": "DYNAMIC_COB",
  "revision": 1,
  "status": "ATIVA",
  "transaction_identification": "55d3992a-2f89-46fb-820a-958693bde84d",
  "transaction_type": "TRANSFER",
  "withdrawal": {
    "agent_modality": "AGTEC",
    "amount": 215,
    "ispb_service_provider": "60701190",
    "purchase_amount": 1050.44
  },
  "recurrence": {
    "recurrence_id": "c80118a7-7cef-4378-a3be-e0e28efbf150",
    "journey_type": "AUT1",
    "contract_id": "5509-uroo-78944-9987",
    "amount": 215,
    "min_payment_amount": 10.09,
    "frequency_type": "MONTH",
    "first_payment_date": "2025-04-25",
    "last_payment_date": "2026-06-10",
    "payee": {
      "name": "Paul Bearer",
      "document_number": "7777888hh",
      "document_type": "NATURAL_PERSON",
      "bank": "237",
      "branch": "011",
      "account_number": "98765432",
      "account_type": "TRAN"
    },
    "debtor": {
      "document_number": "7777888hh",
      "document_type": "NATURAL_PERSON",
      "name": "Paul Bearer"
    },
    "payer": {
      "document_number": "7777888hh",
      "document_type": "NATURAL_PERSON",
      "name": "Paul Bearer",
      "bank": "237",
      "branch": "011",
      "account_number": "98765432",
      "account_type": "TRAN",
      "city_code": "3550308"
    },
    "retry": true,
    "created_at": "2024-09-12T16:46:16.43663522",
    "read_at": "2024-11-14T17:54:40Z",
    "history": [
      {
        "status": "REJECTED",
        "updated_at": "2024-09-12T16:46:16.43663522"
      }
    ]
  }
}