XP Investimentos data API: holdings, Tesouro and XP Card
XP Investimentos is XP Inc.'s Android brokerage client for the Brazilian DTVM, branded Minha Carteira. After login, retail investors and advisor-served clients watch B3 stocks, place orders, maintain watchlists, browse funds, COE notes, Tesouro Direto, previdência and consórcio, complete suitability, connect Open Finance, activate an XP Card, check digital-account overdraft and a rotative-loan home, and finish KYC. ChartIQ charts and live quote and order streams sit around that carteira. The app is Brazil-only, competing with BTG Pactual, NuInvest, Inter Invest and Ágora for CVM-regulated brokerage.
Quota and quantity sit on the carteira summary beside accountId and walletId, while ticker rows fill the watchlist and yield describes COE assets. Fund shelves carry a bypassSuitability flag, onboarding carries registrationStatus plus customerID, email and document, digital-account overdraft returns status and enabled, and the XP Card home exposes a limit. Sessions run on an accessToken and refreshToken pair.
Wealth dashboards, Open Finance aggregators, product-shelf matrices and card-limit alerts consume those objects — openData Studio turns them into callable open data.
Screenshots
API surface
The endpoints and request/response examples below are reconstructed from the app's interface — illustrative, not a live capture.
Issue session token
POST
/v1/brokerage/sessions/tokenopenbankingMints accessToken and refreshToken for the retail DTVM session used on later carteira calls.
Auth: Token request (no prior Bearer).
- accessToken
- refreshToken
POST /v1/brokerage/sessions/token HTTP/1.1 Content-Type: application/json {}{ "accessToken": "eyJhbGciOiJSUzI1NiJ9.access", "refreshToken": "eyJhbGciOiJSUzI1NiJ9.refresh" }Issue advisor session token
POST
/v1/brokerage/sessions/advisor-tokenopenbankingMints advisor-channel accessToken and refreshToken for IFA / advisor-served customer sessions.
Auth: Token request on the advisor channel (no prior Bearer).
- accessToken
- refreshToken
POST /v1/brokerage/sessions/advisor-token HTTP/1.1 Content-Type: application/json {}{ "accessToken": "eyJhbGciOiJSUzI1NiJ9.advisor", "refreshToken": "eyJhbGciOiJSUzI1NiJ9.refresh" }Portfolio summary
GET
/v1/holdings/overviewopenfinanceReads the carteira snapshot: accountId, walletId, quota and quantity for the holdings home.
Auth: Bearer accessToken from POST /v1/brokerage/sessions/token.
- accountId
- walletId
- quota
- quantity
GET /v1/holdings/overview HTTP/1.1 Authorization: Bearer <accessToken>{ "accountId": "12345678", "walletId": "w-9f21", "quota": 1500.25, "quantity": 200 }Portfolio risk
GET
/v1/holdings/risk-profileopenfinanceReads the risk view tied to the same accountId as the portfolio summary.
Auth: Bearer accessToken from POST /v1/brokerage/sessions/token.
- accountId
- status
GET /v1/holdings/risk-profile HTTP/1.1 Authorization: Bearer <accessToken>{ "accountId": "12345678", "status": "OK" }Watchlist tickers
GET
/v1/watchlists/itemsopendataLists ticker rows on the stocks watchlist used by trading and quote screens.
Auth: Bearer accessToken from POST /v1/brokerage/sessions/token.
- ticker
GET /v1/watchlists/items HTTP/1.1 Authorization: Bearer <accessToken>{ "tickers": [ {"ticker": "PETR4"}, {"ticker": "VALE3"} ] }Tesouro shelf header
GET
/v1/shelves/treasury/headeropenfinanceLoads the Tesouro Direto shelf header for the treasury product browse.
Auth: Bearer accessToken from POST /v1/brokerage/sessions/token.
GET /v1/shelves/treasury/header HTTP/1.1 Authorization: Bearer <accessToken>{}Investment-fund shelf filters
GET
/v1/shelves/funds/filtersopenfinanceReturns shelf filters for the funds catalog, including the bypassSuitability flag.
Auth: Bearer accessToken from POST /v1/brokerage/sessions/token.
- bypassSuitability
GET /v1/shelves/funds/filters HTTP/1.1 Authorization: Bearer <accessToken>{ "bypassSuitability": false }Fixed-income filter options
GET
/v1/shelves/fixed-income/filtersopenfinanceLoads filter options for the fixed-income offering shelf.
Auth: Bearer accessToken from POST /v1/brokerage/sessions/token.
GET /v1/shelves/fixed-income/filters HTTP/1.1 Authorization: Bearer <accessToken>{}Variable-income view filters
GET
/v1/shelves/equities/filtersopenfinanceLoads customer view-list filters for the variable-income (equities) offering shelf.
Auth: Bearer accessToken from POST /v1/brokerage/sessions/token.
GET /v1/shelves/equities/filters HTTP/1.1 Authorization: Bearer <accessToken>{}COE yield assets
GET
/v1/shelves/structured-notes/assetsopenfinanceLists COE (Certificado de Operações Estruturadas) assets with yield for the structured-note shelf.
Auth: Bearer accessToken from POST /v1/brokerage/sessions/token.
- ticker
- yield
GET /v1/shelves/structured-notes/assets HTTP/1.1 Authorization: Bearer <accessToken>{ "assets": [ {"ticker": "COE-1", "yield": 12.4} ] }Digital-account overdraft status
GET
/v1/accounts/me/overdraftopenbankingReads overdraft status and enabled for the logged-in digital-account customer.
Auth: Bearer accessToken from POST /v1/brokerage/sessions/token.
- status
- enabled
GET /v1/accounts/me/overdraft HTTP/1.1 Authorization: Bearer <accessToken>{ "status": "AVAILABLE", "enabled": true }XP Card home limit
GET
/v1/cards/home/limitopenbankingReads the XP Card home-screen limit for the logged-in customer.
Auth: Bearer accessToken from POST /v1/brokerage/sessions/token.
GET /v1/cards/home/limit HTTP/1.1 Authorization: Bearer <accessToken>{}Navigation profile
GET
/v1/customers/me/profileopendataReturns the mobile-first navigation profile: customerID, email, document and phone.
Auth: Bearer accessToken from POST /v1/brokerage/sessions/token.
- customerID
- document
- phone
GET /v1/customers/me/profile HTTP/1.1 Authorization: Bearer <accessToken>{ "customerID": "c-4412", "email": "[email protected]", "document": "12345678901", "phone": "+5511999990000" }Personal-data registration status
GET
/v1/onboarding/personal-data/statusopendataReads registrationStatus for the personal-data onboarding step.
Auth: Bearer accessToken from POST /v1/brokerage/sessions/token.
- registrationStatus
GET /v1/onboarding/personal-data/status HTTP/1.1 Authorization: Bearer <accessToken>{ "registrationStatus": "COMPLETE" }Previdência fund filters
GET
/v1/shelves/pension/filtersopenfinanceLoads shelf filters for previdência (Corprev) funds.
Auth: Bearer accessToken from POST /v1/brokerage/sessions/token.
GET /v1/shelves/pension/filters HTTP/1.1 Authorization: Bearer <accessToken>{}
Data categories
- portfolio
- watchlists
- treasury
- funds
- fixed-income
- equities
- structured-notes
- overdraft
- cards
- profile
- onboarding
Where teams use this data
Wealth dashboard on carteira lots
A family-office or PFMstyle board pulls quota and quantity with accountId from the portfolio summary and overlays portfolio risk status for the same wallet.
Watchlist and COE yield sync
A research terminal mirrors ticker rows from the stocks watchlist and joins COE assets on yield for structured-note coverage.
Shelf filter catalog
An allocator copies Tesouro, funds, fixed-income, variable-income and Corprev previdência shelf filters, including bypassSuitability, into an internal product matrix.
Card limit and overdraft alerts
A treasury bot reads digital-account overdraft status and enabled plus the XP Card home limit and pages operations when either flips.
Frequently asked questions
What holdings fields does XP Investimentos return on the carteira summary?
The portfolio summary carries accountId, walletId, quota and quantity for the holdings home, with a sibling risk view on the same accountId.
How does XP Investimentos authenticate API calls?
Retail sessions mint accessToken and refreshToken from a token call that needs no prior Bearer; advisor-served sessions use a separate advisor token call. Later carteira, shelf and card calls send the accessToken as Bearer.
Which investment shelves are exposed besides stocks?
Tesouro Direto has a treasury shelf header; funds, fixed income, variable income and Corprev previdência each expose shelf filters, and COE assets include yield.
Does the app cover banking products as well as brokerage?
Yes. Digital-account overdraft reports status and enabled, and the XP Card home returns a limit, alongside Open Finance connection screens in the client.
Apps similar to XP Investimentos
- BTG Pactual — BTG Pactual's digital investment platform gives Brazilian retail clients access to funds, CDB, LCI, LCA and LF notes, PGBL and VGBL private pensions, and COE structured notes, with the BTG+ digital bank launched in 2020.
- Nu Investimentos — Nubank's investment brokerage lists Tesouro Direto from R$30, CDBs, tax-exempt LCI and LCA, managed funds, and bolsa products including Brazilian stocks, ETFs, FIIs and BDRs, all tracked in the Nubank app.
- Inter Investimentos — Inter Investimentos is Banco Inter's in-app brokerage, combining a digital bank and corretora so clients can buy CDBs from R$1, Tesouro Direto, funds, Brazilian and international stocks, and cryptocurrencies.
- Ágora Investimentos — Ágora Investimentos is Bradesco's investment house, offering B3 stocks, more than 600 fixed-income options including Tesouro Direto and FGC-backed notes, funds, COE structures and previdência.
- Rico — Rico is XP Inc.'s retail brokerage app for Brazilian self-directed investing in stocks, ETFs, real estate funds (FIIs) and Tesouro Direto.
- Toro Investimentos — Toro Investimentos is Santander Corretora's trading platform in Brazil, offering Home Broker, Profit Toro Trader and Profit Pro with advertised zero brokerage and co-location DMA4 for day trading.
Topics
- XP Investimentos API
- XP carteira portfolio
- Tesouro Direto shelf
- XP Card limit
- B3 watchlist tickers
- Brazilian brokerage data
- COE yield
- digital account overdraft
Need this app's data API integrated?
We deliver scoped integrations for any named app — from USD 500 with source-code handoff, or hosted access billed per call. Tell us the data you need.
- NDA + SOW on every engagement
- Delivery in 3–7 days
- Payment only after acceptance
- Work scoped to authorized use