Ticket Edenred Brazil PAT card, PIX and merchant APIs
Ticket is the employee-benefits wallet from Ticket Serviços S/A, Edenred’s Brazilian issuer of PAT meal and food vouchers plus culture, mobility, health, flex, gift and fuel plastics. After a CPF login through Azure AD B2C, the home wallet lists every card the worker holds — Ticket Alimentação, Ticket Restaurante, Ticket Flex, Ticket Super Flex, Ticket Car, Ticket Cultura, Ticket Saúde, Ticket Transporte, Ticket Plus and digital gift cards — with saldo, extrato, PIN/CVV, block-after-loss, delivery tracking and Google Pay / Apple Pay provisioning. From those balances holders pay PIX, run TED-style credit transfers, split Flex purses between meal and food, buy Cuponeria e-gift vouchers, pay boletos, tap NFC, and look up the accredited merchant map (including Rappi and Cielo Pay partners). Published for Brazil, it competes for the same PAT wallets as Alelo, Pluxee Brasil, VR Benefícios, Caju and Flash Benefícios.
Meal-voucher purse totals land in totalAvailableAmount beside per-plastic cardBalance, with cardProductType distinguishing Ticket Alimentação from Ticket Restaurante, Flex, Car, Cultura and Saúde. The same session pages TransactionAmount and MerchantName on the extrato, lists registered pixKey / pixKeyType pairs, and returns endToEndId after a PIX cash-out.
Accredited-network rows carry cnpj, fantasyName and partnerProduct; Google Pay state sits in isTokenized and walletDeviceTokenId. Payroll reconcilers, PIX-policy bots and coverage maps consume those fields; 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.
List wallet cards
GET
/v1/benefit-cardsopenfinanceReturns every Ticket plastic and digital card on the signed-in beneficiary — product type (Alimentação, Restaurante, Flex, Car), PAN tail, nickname and tokenization flag — for the home wallet carousel.
Auth: Azure AD B2C Bearer accessToken plus Ocp-Apim-Subscription-Key and X-Request-Id.
- cardId
- cardLastNumbers
- lastNumbers
- cardBin
- cardType
- cardProductType
- cardProductId
- nickName
- cardNickName
- cardHolder
- brand
- status
- isTokenized
- DigitalCard
GET /v1/benefit-cards HTTP/1.1 Authorization: Bearer <access_token> Ocp-Apim-Subscription-Key: <subscription-key> X-Request-Id: <uuid>{ "cards": [ { "cardId": "crd_88100214", "cardLastNumbers": "4419", "lastNumbers": "4419", "cardBin": "650485", "cardType": "TAE", "cardProductType": "ALIMENTACAO", "cardProductId": "TAE", "nickName": "Alimentação empresa", "cardNickName": "Alimentação empresa", "cardHolder": "ANA SOUZA", "brand": "Elo", "status": "ACTIVE", "isTokenized": false, "DigitalCard": true } ] }Card balance
GET
/v1/benefit-cards/{cardId}/balanceopenbankingReads the current PAT purse on one card — totalAvailableAmount, per-line benefitBalance and any blocked amount — for the saldo tile and hide/show-balance control.
Auth: Azure AD B2C Bearer accessToken plus Ocp-Apim-Subscription-Key and X-Request-Id.
- cardId
- balance
- cardBalance
- benefitBalance
- lineBalance
- totalAvailableAmount
- balances
- blocked
- limit
GET /v1/benefit-cards/crd_88100214/balance HTTP/1.1 Authorization: Bearer <access_token> Ocp-Apim-Subscription-Key: <subscription-key> X-Request-Id: <uuid>{ "cardId": "crd_88100214", "balance": 842.50, "cardBalance": 842.50, "benefitBalance": 842.50, "lineBalance": 842.50, "totalAvailableAmount": 842.50, "balances": [ { "cardProductType": "ALIMENTACAO", "balance": 842.50 } ], "blocked": 0, "limit": 842.50 }Card statement
GET
/v1/benefit-cards/{cardId}/transactionsopenbankingPages the extrato for one card: merchant, amount, credit/debit-of-transfer flags and settle date, matching the home statement search and filter screens.
Auth: Azure AD B2C Bearer accessToken plus Ocp-Apim-Subscription-Key and X-Request-Id.
- cardId
- transactionId
- transactionDate
- TransactionAmount
- MerchantName
- description
- CreditOfTransfer
- DebitOfTransfer
- status
- settleDate
- isLastPage
- endDateUtc
GET /v1/benefit-cards/crd_88100214/transactions?endDateUtc=2026-10-19T23:59:59Z HTTP/1.1 Authorization: Bearer <access_token> Ocp-Apim-Subscription-Key: <subscription-key> X-Request-Id: <uuid>{ "cardId": "crd_88100214", "items": [ { "transactionId": "txn_9f21aa", "transactionDate": "2026-10-18T12:41:00Z", "TransactionAmount": 32.90, "MerchantName": "Padaria Central", "description": "Compra alimentacao", "CreditOfTransfer": false, "DebitOfTransfer": false, "status": "APPROVED", "settleDate": "2026-10-18" } ], "isLastPage": false }Card status and blocks
GET
/v1/benefit-cards/{cardId}/controlsopenfinanceReturns whether the plastic is active, HR/risk/security blocked, password-locked or eligible for mobile pay — the flags behind block, unblock and password-reset screens.
Auth: Azure AD B2C Bearer accessToken plus Ocp-Apim-Subscription-Key and X-Request-Id.
- cardId
- status
- walletBlocked
- isBlockCard
- blockedPassword
- blockedRH
- blockedRisk
- blockedSecurity
- needSetPassword
- mobilePayStatus
GET /v1/benefit-cards/crd_88100214/controls HTTP/1.1 Authorization: Bearer <access_token> Ocp-Apim-Subscription-Key: <subscription-key> X-Request-Id: <uuid>{ "cardId": "crd_88100214", "status": "ACTIVE", "walletBlocked": false, "isBlockCard": false, "blockedPassword": false, "blockedRH": false, "blockedRisk": false, "blockedSecurity": false, "needSetPassword": false, "mobilePayStatus": "ENABLED" }Transfer-enable flag
GET
/v1/cash-out/eligibilityopenfinanceTells the app whether benefit-to-benefit and PIX cash-out rails are open for this session, including pixLimit and pixMinValue used on the amount picker.
Auth: Azure AD B2C Bearer accessToken plus Ocp-Apim-Subscription-Key and X-Request-Id.
- status
- pixLimit
- pixMinValue
- pixFee
- walletBlocked
GET /v1/cash-out/eligibility HTTP/1.1 Authorization: Bearer <access_token> Ocp-Apim-Subscription-Key: <subscription-key> X-Request-Id: <uuid>{ "status": "ENABLED", "pixLimit": 500.00, "pixMinValue": 1.00, "pixFee": 0, "walletBlocked": false }Registered PIX keys
GET
/v1/cash-out/pix-keysopenfinanceLists PIX keys (CPF, email, phone or random) registered against the beneficiary so the PIX amount screen can address a transfer.
Auth: Azure AD B2C Bearer accessToken plus Ocp-Apim-Subscription-Key and X-Request-Id.
- pixKey
- pixKeyType
- branch
- status
GET /v1/cash-out/pix-keys HTTP/1.1 Authorization: Bearer <access_token> Ocp-Apim-Subscription-Key: <subscription-key> X-Request-Id: <uuid>{ "keys": [ { "pixKey": "[email protected]", "pixKeyType": "EMAIL", "branch": "0001", "status": "ACTIVE" } ] }Submit PIX transfer
POST
/v1/cash-out/pix-paymentsopenfinanceMoves benefit balance out over PIX after the amount picker and optional face-match challenge, returning endToEndId for the receipt screen.
Auth: Azure AD B2C Bearer accessToken plus Ocp-Apim-Subscription-Key and X-Request-Id; money movement may require a step-up challenge.
- cardId
- pixKey
- pixKeyType
- amount
- challengeId
- transactionId
- endToEndId
- pixFee
- status
- payerName
POST /v1/cash-out/pix-payments HTTP/1.1 Authorization: Bearer <access_token> Ocp-Apim-Subscription-Key: <subscription-key> X-Request-Id: <uuid> Content-Type: application/json { "cardId": "crd_88100214", "pixKey": "11987654321", "pixKeyType": "PHONE", "amount": 50.00, "challengeId": "chg_44ab" }{ "transactionId": "pix_e2e_20261019", "endToEndId": "E60746948202610191241s0a1b2c3d4", "amount": 50.00, "pixFee": 0, "status": "COMPLETED", "payerName": "ANA SOUZA", "receipt": { "transactionId": "pix_e2e_20261019" } }PIX receipt
GET
/v1/cash-out/pix-payments/{transactionId}/voucheropenbankingReloads a completed PIX voucher for the share/copy receipt screen.
Auth: Azure AD B2C Bearer accessToken plus Ocp-Apim-Subscription-Key and X-Request-Id.
- transactionId
- endToEndId
- amount
- pixFee
- payerName
- transactionDate
- status
GET /v1/cash-out/pix-payments/pix_e2e_20261019/voucher HTTP/1.1 Authorization: Bearer <access_token> Ocp-Apim-Subscription-Key: <subscription-key> X-Request-Id: <uuid>{ "transactionId": "pix_e2e_20261019", "endToEndId": "E60746948202610191241s0a1b2c3d4", "amount": 50.00, "pixFee": 0, "payerName": "ANA SOUZA", "transactionDate": "2026-10-19T12:41:00Z", "status": "COMPLETED" }Credit transfer (TED / purse move)
POST
/v1/purse-transfersopenbankingPosts a funds-exchange credit transfer used by benefit-to-benefit moves (Ticket Restaurante ↔ Alimentação Flex split) and bank-style TED; the returned transactionId can then be polled for its final status.
Auth: Azure AD B2C Bearer accessToken plus Ocp-Apim-Subscription-Key and X-Request-Id; money movement may require a step-up challenge.
- cardId
- amount
- cardProductType
- challengeId
- transactionId
- status
- CreditOfTransfer
POST /v1/purse-transfers HTTP/1.1 Authorization: Bearer <access_token> Ocp-Apim-Subscription-Key: <subscription-key> X-Request-Id: <uuid> Content-Type: application/json { "cardId": "crd_88100214", "amount": 100.00, "cardProductType": "RESTAURANTE", "challengeId": "chg_55cd" }{ "transactionId": "xfer_10482", "status": "COMPLETED", "amount": 100.00, "CreditOfTransfer": true, "cardProductType": "RESTAURANTE" }Beneficiary profile
GET
/v1/beneficiaries/me/profileosintReturns the signed-in beneficiary — name, masked CPF, email, mobile, birth date and mother name — for profile, contact-update and MFA enrollment screens.
Auth: Azure AD B2C Bearer accessToken plus Ocp-Apim-Subscription-Key and X-Request-Id.
- userId
- fullName
- socialName
- maskedCpf
- maskedEmail
- cellPhoneNumber
- birthDate
- motherName
GET /v1/beneficiaries/me/profile HTTP/1.1 Authorization: Bearer <access_token> Ocp-Apim-Subscription-Key: <subscription-key> X-Request-Id: <uuid>{ "userId": "usr_10482", "fullName": "Ana Souza", "socialName": "Ana", "maskedCpf": "123.***.***-01", "email": "[email protected]", "maskedEmail": "a***@empresa.com.br", "cellPhoneNumber": "11987654321", "birthDate": "1992-04-17", "motherName": "Maria Souza" }Accredited merchant network
GET
/v1/merchants/nearbyopendataGeosearches the Ticket acceptance network (where-accept map) by benefit product, returning CNPJ, trade name, coordinates and distance.
Auth: Azure AD B2C Bearer accessToken plus Ocp-Apim-Subscription-Key and X-Request-Id.
- partnerId
- partnerName
- fantasyName
- cnpj
- latitude
- longitude
- distance
- placeId
- partnerLogo
- partnerProduct
GET /v1/merchants/nearby?latitude=-23.5505&longitude=-46.6333&distance=5 HTTP/1.1 Authorization: Bearer <access_token> Ocp-Apim-Subscription-Key: <subscription-key> X-Request-Id: <uuid>{ "merchants": [ { "partnerId": "mct_9921", "partnerName": "Restaurante da Esquina", "fantasyName": "Da Esquina", "cnpj": "12345678000199", "latitude": -23.5512, "longitude": -46.6341, "distance": 0.4, "placeId": "ChIJxxxxxxxx", "partnerLogo": "https://cdn.example.com/logos/esquina.png", "partnerProduct": ["RESTAURANTE", "ALIMENTACAO"] } ] }Cuponeria e-gift catalog
GET
/v1/gift-vouchersopendataLists Cuponeria e-gift SKUs the wallet can buy (store list, purchase and receipt screens) with discount and expiry for the voucher shop.
Auth: Azure AD B2C Bearer accessToken plus Ocp-Apim-Subscription-Key and X-Request-Id.
- couponId
- voucherId
- storeId
- storeImage
- discount
- valueWithDiscount
- expirationDate
- status
GET /v1/gift-vouchers HTTP/1.1 Authorization: Bearer <access_token> Ocp-Apim-Subscription-Key: <subscription-key> X-Request-Id: <uuid>{ "coupons": [ { "couponId": "cpn_50", "voucherId": "vch_50", "storeId": "str_ifood", "storeImage": "https://cdn.example.com/gifts/ifood.png", "discount": 10, "valueWithDiscount": 45.00, "expirationDate": "2026-12-31", "status": "AVAILABLE" } ] }SDUI home wallet
GET
/v1/home/wallet-viewopendataServer-driven home payload that composes the wallet carousel — per-card saldo plus unseen-notification count — without a client layout change.
Auth: Azure AD B2C Bearer accessToken plus Ocp-Apim-Subscription-Key and X-Request-Id.
- featureToggle
- cardId
- cardLastNumbers
- cardBalance
- totalAvailableAmount
- cardProductType
- unseenCount
GET /v1/home/wallet-view HTTP/1.1 Authorization: Bearer <access_token> Ocp-Apim-Subscription-Key: <subscription-key> X-Request-Id: <uuid>{ "featureToggle": "wallet_home", "cards": [ { "cardId": "crd_88100214", "cardLastNumbers": "4419", "cardBalance": 842.50, "totalAvailableAmount": 842.50, "cardProductType": "ALIMENTACAO" } ], "unseenCount": 2 }Device card provisioning details
GET
/v1/devices/current/wallet-tokensopenfinanceLists which Ticket cards are already tokenized on this device (Google Pay / Apple Pay) versus pending, for the push-provisioning and registered-cards screens.
Auth: Azure AD B2C Bearer accessToken plus Ocp-Apim-Subscription-Key and X-Request-Id.
- deviceId
- cardId
- tokenId
- walletDeviceTokenId
- isTokenized
- activeTokens
- pendingTokens
- mobilePayStatus
GET /v1/devices/current/wallet-tokens HTTP/1.1 Authorization: Bearer <access_token> Ocp-Apim-Subscription-Key: <subscription-key> X-Request-Id: <uuid>{ "deviceId": "dev_pixel_8", "cards": [ { "cardId": "crd_88100214", "tokenId": "dpan_77ab", "walletDeviceTokenId": "gpay_token_77ab", "isTokenized": true, "activeTokens": 1, "pendingTokens": 0, "mobilePayStatus": "ENABLED" } ] }
Data categories
- card balances
- transactions
- PIX transfers
- beneficiary profile
- merchant network
- e-gift coupons
Where teams use this data
PAT purse reconciliation
Payroll and benefits desks pull totalAvailableAmount and per-product cardBalance nightly, then match TransactionAmount plus MerchantName on the extrato against the employer's PAT contribution file.
PIX cash-out monitoring
Treasury bots watch pixLimit / pixMinValue and each completed endToEndId so meal-voucher cash-out stays inside the employer's PIX policy.
Acceptance-network coverage
Expansion teams geosearch partnerName, cnpj and partnerProduct around office sites to see whether Ticket Restaurante and Ticket Alimentação are accepted nearby.
Google Pay tokenization audit
Device-fleet tools read isTokenized, activeTokens and walletDeviceTokenId to confirm which plastics are already in Google Pay before a card reissue.
Frequently asked questions
Which Ticket products show a balance?
The wallet carousel returns one card per product type — Ticket Alimentação, Ticket Restaurante, Ticket Flex / Super Flex, Ticket Car, Ticket Cultura, Ticket Saúde, Ticket Transporte, Ticket Plus and digital gifts — each with cardBalance, benefitBalance and totalAvailableAmount.
Does the app expose PIX, not only card spend?
Yes. Registered keys arrive as pixKey plus pixKeyType; a transfer returns endToEndId, pixFee and payerName, and the receipt screen reloads the same voucher for share/copy.
How do callers authenticate?
The beneficiary signs in with CPF through Azure AD B2C. Later calls send the issued Bearer accessToken, an Ocp-Apim-Subscription-Key and an X-Request-Id. PIX and purse-to-purse moves may add a wallet challenge.
Can I list merchants that accept Ticket?
The accredited-network call geosearches by latitude, longitude and distance and returns partnerName, fantasyName, cnpj and the partnerProduct list (Restaurante, Alimentação, and so on).
Apps similar to Ticket
- Meu Alelo — Alelo issues Brazilian PAT Refeição and Alimentação cards plus culture, mobility and multi-benefit plastics, and Meu Alelo is the worker app for saldo, extrato, QR pay and Google Pay / Apple Pay.
- Pluxee Brasil — Pluxee Brasil, formerly Sodexo Benefícios e Incentivos, is the cardholder app for Pluxee meal, food, culture, gift, fuel and Multibenefícios cards used under Brazil's PAT.
- SuperApp VR — SuperApp VR is VR Benefícios' worker app for PAT Vale-Refeição and Vale-Alimentação plus home-office and auto balances, with virtual-card and QR checkout.
- Flash Benefícios — Flash is a Brazilian multi-benefit Visa card and worker app for PAT food and meal vouchers plus mobility, culture, health, education and home-office categories.
- Caju — Caju is a Brazilian benefits-and-spend platform that puts CLT, PAT and flexible-benefit balances on one Visa-accepted card with a worker app for those purses.
- iFood Benefícios — iFood Benefícios is a PAT-registered multi-balance card for meal, food, mobility, culture, health, education and home-office stipends that can be spent in the iFood app and at Elo merchants.
- Swile Brasil — Swile Brasil is a PAT-registered multi-benefit Mastercard that consolidates meal, food and other employee-benefit wallets on one card, with a worker app for live balances and contactless pay.
Topics
- Ticket Edenred API
- Ticket Alimentação saldo
- Ticket Restaurante extrato
- Ticket PIX
- PAT meal voucher Brazil
- Edenred Brazil card balance
- Ticket where accept merchants
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