Pix2DePix API
    • 📜 API Overview
    • Docs
      • 🔑 Authentication
      • 💻 Examples
      • 🪝 Webhook
      • ✅ Possible Statuses
        • 📥💰 Deposit Statuses
        • 📤💸 Withdraw Statuses
      • 🛡️ Security & Limits
        • ✅ Best Practices
        • 🪲 Bug Bounty
        • 🧱 Firewall
        • 🚦 API Limits
      • 🧩 Advanced (optional)
        • 🎲 Nonce
        • 🔀 Sync / Async call
      • 🚀 Features
        • ⏱️ QR Delay
    • API Endpoints
      • Ping
        GET
      • Deposit (PIX ➔ DePix)
        POST
      • Deposit Status
        GET
      • Deposits
        GET
      • User Info
        GET
      • Withdraw
        POST
      • Withdraw Status
        GET
    • Schemas
      • AsyncResponse
      • AllPossibleObjResponses
      • StandardResponse
      • PingObjOrError
      • JWTClaims
      • ObjResponse
      • ErrorObj
      • PingObj
      • ErrorResponse
      • DepositRequest
      • DepositObjOrError
      • DepositObj
      • PingResponse
      • DepositResponse
      • DepositStatusObj
      • DepositStatusResponse
      • DepositWebhookBody
      • DepositsResponse
      • DepositStatus
      • UserInfoResponse
      • WithdrawStatusResponse
      • WithdrawStatusObj
      • WithdrawResponse
      • WithdrawObj
      • WithdrawStatus
      • WithdrawWebhookBody
      • MEDWebhookBody

    📜 API Overview

    The Pix2Depix RESTful HTTP API connects Brazil's PIX payment system to DePix, a Liquid Network asset issued by Eulen. It converts BRL to DePix and back.

    Base URL#

    https://depix.eulen.app/api/
    More about DePix at depix.info.

    Integration best practices#

    Don't assume instant settlement
    A deposit may be held before the DePix is sent — e.g. delayed or under_review. Drive your UX off the deposit-status endpoint (or the webhook) and treat approved as the confirmation signal, rather than assuming every paid deposit settles immediately.
    Use only the generated QR code (or copy-and-paste Pix code)
    Payments must be made strictly using the generated QR code (or copy-and-paste Pix code) returned by the deposit flow. Do not use the bank app's retry transfer option, do not send a direct transfer to the destination account, do not use standalone banking details, and do not rely on built-in AI agents in the banking app to create or modify the payment. Always instruct the user to pay only through the QR code generated for that specific deposit.
    Do not reuse QR codes
    Each QR code is single-use and tied to a specific deposit ID. Attempting to pay the same QR code multiple times or reusing it for a different deposit will not work. Generate a new deposit for every new payment.
    Pay within the time limit
    Pix QR codes may have an expiration window. Complete the payment immediately after generating the deposit. If the payment times out, create a new deposit to receive a fresh QR code instead of retrying the same one.
    A new end user's first deposit may be verified
    First deposits from a new end user can receive extra verification or be temporarily held. Design your flow to wait/retry on the held statuses above instead of failing hard — the deposit typically proceeds once cleared.
    Always identify the beneficiary on withdrawals
    Send taxNumber (CPF/CNPJ) and/or euid on every /withdraw. The Pix key must belong to the informed identification, otherwise the withdrawal may be automatically rejected by the banking system.
    Modified at 2026-06-18 20:34:23
    Next
    🔑 Authentication
    Built with