Skip to main content
Cash-in transactions are the deposits that arrive in your bank accounts, for example a dynamic QR code that a payer scans and pays. This tutorial creates your first dynamic QR code in the sandbox and walks through the response. For the other ways to receive money, see the Receivables overview.

Before you start

You need: All examples use the sandbox base URL https://api.sandbox.trio.com.br.

Create the QR code

Send a POST to the Create a dynamic QR code endpoint:
Coming from V1? allow_change_the_amount_on_payment and show_qrcode_image now live inside options and both are required. The response has no stages, virtual_account_id or pix_key_id.

Read the response

The fields you use most:

Share the BR code

If you did not request the image, share the hash with the payer: it is the BR code they paste into their banking application. To render the image on your side, encode the hash as a QR code, or fetch it ready-made from GET /v2/in/pix/qrcodes/{id}/image, which returns it in Base64.

What happens next

Once the QR code is paid, the deposit shows up as an in document with its own status and stages. List deposits with GET /v2/documents/in or read one with GET /v2/documents/in/{id}, and follow each status change through webhook events. The Document lifecycle guide describes the statuses.

Next steps