Ton: maquininha, tap e conta icon

Ton merchant data API: balances, Pix, sales and Open Finance

Stone Pagamentos S.A. · Payments

Ton: maquininha, tap e conta is Stone Pagamentos S.A.'s merchant app for Brazilian MEI, CNPJ shops and solo sellers. It pairs a physical Ton card machine and TapTon NFC on the phone with a digital conta at Stone (COMPE 197 / Stone Pagamentos S.A.), so the same login takes card-present debit, credit and Pix on the till, issues payment links and boletos, manages a Stone card wallet, anticipates receivables and runs an Indique e ganhe extra-income program. Home shortcuts also open Open Finance sharing, credit and financing, insurance, payroll, recarga and team profiles. Published for Brazil only, it occupies the same SoftPOS-plus-conta slot as InfinitePay, PagBank, Mercado Pago Point, Cielo Lio and SumUp.

Paid-monthly card receivables pair paidMonthly with futureReceivables on the home widget, while the conta snapshot exposes availableAmount, label and value. Pix dictionaries return key, keyType and isSalesKey; Open Finance consented accounts carry accountId, branchCode, compeCode and companyCnpj, and their statements page transactionId, creditDebitType and partieCnpjCpf. Card-present sales add saleId, charge_id and cardLastDigits per till row. ERP reconcilers, receivables-backed lenders and multi-bank cash-flow tools consume those objects — openData Studio turns them into callable open data.

Screenshots

  • Ton: maquininha, tap e conta screenshot 1
  • Ton: maquininha, tap e conta screenshot 2
  • Ton: maquininha, tap e conta screenshot 3
  • Ton: maquininha, tap e conta screenshot 4
  • Ton: maquininha, tap e conta screenshot 5
  • Ton: maquininha, tap e conta screenshot 6

API surface

The endpoints and request/response examples below are reconstructed from the app's interface — illustrative, not a live capture.

  • Read conta digital balance

    GET /v1/wallet/{account_id}/snapshot openbanking

    Reads the signed-in merchant's digital-account snapshot for the home balance widget, including the display label/value pair and any otherBalances or revolving-credit tiles.

    Auth: Bearer session token issued at merchant sign-in and attached to every call after login.

    • status
    • balanceInfo
    • label
    • value
    • otherBalances
    • benefits
    • availableAmount
    • investments
    • creditRevolving
    GET /v1/wallet/acc-ton-8841/snapshot HTTP/1.1
    Authorization: Bearer <access_token>
    {
      "status": "show_balance",
      "balanceInfo": {
        "label": "Saldo disponível",
        "value": "R$ 12.430,50",
        "otherBalances": [],
        "benefits": []
      },
      "availableAmount": {
        "amount": 1243050,
        "currency": "BRL"
      },
      "investments": null,
      "creditRevolving": null
    }
  • List merchant accounts

    GET /v1/wallet/accounts openbanking

    Lists the Stone digital accounts bound to the signed-in merchant so the account selector can switch the till, Pix and statement context.

    Auth: Bearer session token issued at merchant sign-in and attached to every call after login.

    • accounts
    • account_id
    • stone_account_id
    • stoneCode
    • document
    GET /v1/wallet/accounts HTTP/1.1
    Authorization: Bearer <access_token>
    {
      "accounts": [
        {
          "account_id": "acc-ton-8841",
          "stone_account_id": "sa-197-8841",
          "stoneCode": "123456789",
          "document": "12345678000190"
        }
      ]
    }
  • List Pix keys

    GET /v1/instant-pay/{account_id}/aliases openfinance

    Returns the Pix keys registered on the merchant account, including the till sales key flagged by isSalesKey.

    Auth: Bearer session token issued at merchant sign-in and attached to every call after login.

    • data
    • id
    • key
    • keyType
    • isSalesKey
    • nickname
    GET /v1/instant-pay/acc-ton-8841/aliases HTTP/1.1
    Authorization: Bearer <access_token>
    {
      "data": [
        {
          "id": "pix-key-01",
          "key": "12345678000190",
          "keyType": "CNPJ",
          "isSalesKey": true,
          "nickname": "Loja Centro"
        }
      ]
    }
  • Create static Pix QR

    POST /v1/instant-pay/{account_id}/static-codes openfinance

    Issues a static Pix QR for the till (maquininha Pix QR / chave) from a registered key, returning the EMV payload and image.

    Auth: Bearer session token issued at merchant sign-in and attached to every call after login.

    • accountId
    • key
    • amount
    • additionalInformation
    • transactionId
    • type
    • qrCodeImage
    • qrCodeContent
    POST /v1/instant-pay/acc-ton-8841/static-codes HTTP/1.1
    Authorization: Bearer <access_token>
    Content-Type: application/json
    
    {
      "accountId": "acc-ton-8841",
      "key": "12345678000190",
      "amount": 15000,
      "additionalInformation": "Pedido 4412",
      "transactionId": "txn-pix-4412",
      "type": "STATIC"
    }
    {
      "key": "12345678000190",
      "amount": 15000,
      "qrCodeImage": "data:image/png;base64,...",
      "qrCodeContent": "00020101021226870014br.gov.bcb.pix...",
      "additionalInformation": "Pedido 4412",
      "transactionId": "txn-pix-4412"
    }
  • Send outbound Pix

    POST /v1/instant-pay/transfers openfinance

    Starts an outbound Pix from the merchant conta; a follow-up status lookup on the returned pixId polls the transfer.

    Auth: Bearer session token issued at merchant sign-in and attached to every call after login.

    • account_id
    • amount
    • key
    • keyType
    • pixId
    • status
    POST /v1/instant-pay/transfers HTTP/1.1
    Authorization: Bearer <access_token>
    Content-Type: application/json
    
    {
      "account_id": "acc-ton-8841",
      "amount": 25000,
      "key": "11999990000",
      "keyType": "PHONE"
    }
    {
      "pixId": "pix-out-7781",
      "status": "PENDING",
      "amount": 25000,
      "key": "11999990000"
    }
  • Sales transactions home

    GET /v1/merchants/{document}/sales/overview opendata

    Loads the maquininha / TapTon / payment-link sales home for a CNPJ, with per-sale saleId, charge_id and cardLastDigits for the filter bar.

    Auth: Bearer session token issued at merchant sign-in and attached to every call after login.

    • document
    • stoneCode
    • sales
    • saleId
    • charge_id
    • cardLastDigits
    • amount
    • status
    GET /v1/merchants/12345678000190/sales/overview HTTP/1.1
    Authorization: Bearer <access_token>
    {
      "document": "12345678000190",
      "stoneCode": "123456789",
      "sales": [
        {
          "saleId": "sale-10021",
          "charge_id": "chg-10021",
          "cardLastDigits": "4421",
          "amount": 8990,
          "status": "CAPTURED"
        }
      ]
    }
  • Sale transaction detail

    GET /v1/merchants/{document}/sales/{sale_id} opendata

    Returns one captured or pending sale so the merchant can send a receipt (email/SMS/link) or retry/reprocess the charge.

    Auth: Bearer session token issued at merchant sign-in and attached to every call after login.

    • saleId
    • charge_id
    • transaction_id
    • document
    • stoneCode
    • cardLastDigits
    • amount
    • status
    GET /v1/merchants/12345678000190/sales/sale-10021 HTTP/1.1
    Authorization: Bearer <access_token>
    {
      "saleId": "sale-10021",
      "charge_id": "chg-10021",
      "transaction_id": "trx-10021",
      "document": "12345678000190",
      "stoneCode": "123456789",
      "cardLastDigits": "4421",
      "amount": 8990,
      "status": "CAPTURED"
    }
  • Receivables summary

    GET /v1/merchants/{document}/settlements/summary opendata

    Returns this month's settled card receivables versus the outstanding futureReceivables used by the home widget and prepayment simulator.

    Auth: Bearer session token issued at merchant sign-in and attached to every call after login.

    • status
    • paidMonthly
    • futureReceivables
    • title
    • amount
    GET /v1/merchants/12345678000190/settlements/summary HTTP/1.1
    Authorization: Bearer <access_token>
    {
      "status": "success",
      "paidMonthly": {
        "title": "Recebido no mês",
        "amount": {"text": "R$ 48.200,00"}
      },
      "futureReceivables": {
        "title": "A receber",
        "amount": {"text": "R$ 19.350,00"}
      }
    }
  • Receivable contracts summary

    GET /v1/merchants/{document}/settlements/agreements opendata

    Lists agenda-de-recebíveis contracts for the CNPJ, including contractKey used to contest a reserved contract.

    Auth: Bearer session token issued at merchant sign-in and attached to every call after login.

    • document
    • contracts
    • contractKey
    • stoneCode
    • status
    GET /v1/merchants/12345678000190/settlements/agreements HTTP/1.1
    Authorization: Bearer <access_token>
    {
      "document": "12345678000190",
      "contracts": [
        {
          "contractKey": "ctr-stone-01",
          "stoneCode": "123456789",
          "status": "ACTIVE"
        }
      ]
    }
  • Open Finance consented accounts

    GET /v1/linked-banks/accounts openfinance

    Returns bank accounts the merchant consented to share into Ton via Open Finance TPP, with ISPB-style branch/compe identifiers and the latest availableAmount.

    Auth: Bearer session token issued at merchant sign-in and attached to every call after login.

    • accountId
    • balance
    • availableAmount
    • updatedAt
    • updatedAtOrigin
    • branchCode
    • checkDigit
    • companyCnpj
    • compeCode
    • number
    • organisationId
    • organizationName
    • type
    GET /v1/linked-banks/accounts HTTP/1.1
    Authorization: Bearer <access_token>
    {
      "accountId": "of-acc-55",
      "balance": {
        "availableAmount": {"amount": 320045, "currency": "BRL"},
        "updatedAt": "2026-10-17T11:02:01Z",
        "updatedAtOrigin": "2026-10-17T11:01:40Z"
      },
      "branchCode": "0001",
      "checkDigit": "7",
      "companyCnpj": "00000000000191",
      "compeCode": "260",
      "number": "12345678",
      "organisationId": "bank-example",
      "organizationName": "Banco Exemplo S.A.",
      "type": "CACC",
      "updatedAt": "2026-10-17T11:02:01Z"
    }
  • Open Finance account transactions

    GET /v1/linked-banks/entries openfinance

    Pages the consented-bank statement used by Ton's Open Finance home, with counterparty CPF/CNPJ and creditDebitType per row.

    Auth: Bearer session token issued at merchant sign-in and attached to every call after login.

    • data
    • hasNext
    • nextCursor
    • pageSize
    • accountId
    • transactionId
    • amount
    • currency
    • creditDebitType
    • type
    • transactionName
    • partieCnpjCpf
    • partiePersonType
    • consentId
    • transactionDate
    GET /v1/linked-banks/entries?accountId=of-acc-55&pageSize=20 HTTP/1.1
    Authorization: Bearer <access_token>
    {
      "data": [
        {
          "accountId": "of-acc-55",
          "transactionId": "of-txn-901",
          "amount": {"amount": 15000, "currency": "BRL"},
          "currency": "BRL",
          "creditDebitType": "CREDIT",
          "type": "PIX",
          "transactionName": "Pix recebido",
          "partieCnpjCpf": "11122233344",
          "partiePersonType": "NATURAL_PERSON",
          "consentId": "urn:example:consent:aa11",
          "transactionDate": "2026-10-16"
        }
      ],
      "hasNext": false,
      "nextCursor": null,
      "pageSize": 20
    }
  • List Stone cards

    GET /v1/cards openbanking

    Lists debit, credit and prepaid virtual/physical cards in the Ton wallet so the merchant can block, unblock or reissue a card_id.

    Auth: Bearer session token issued at merchant sign-in and attached to every call after login.

    • cards
    • card_id
    • cardLastDigits
    • status
    GET /v1/cards HTTP/1.1
    Authorization: Bearer <access_token>
    {
      "cards": [
        {
          "card_id": "card-778",
          "cardLastDigits": "4421",
          "status": "ACTIVE"
        }
      ]
    }
  • Merchant onboarding profile

    GET /v1/merchants/profiles/{stone_account_id} osint

    Reads the KYC/onboarding profile for a Stone account (document, stoneCode, MCC) used by the merchant profile and pending-update screens.

    Auth: Bearer session token issued at merchant sign-in and attached to every call after login.

    • stone_account_id
    • document
    • stoneCode
    • mcc
    GET /v1/merchants/profiles/sa-197-8841 HTTP/1.1
    Authorization: Bearer <access_token>
    {
      "stone_account_id": "sa-197-8841",
      "document": "12345678000190",
      "stoneCode": "123456789",
      "mcc": "5411"
    }

Data categories

  • balances
  • transactions
  • pix
  • receivables
  • cards
  • openfinance
  • merchant-profile

Where teams use this data

  • ERP till reconciliation

    Nightly jobs pull transactions-home saleId, charge_id, cardLastDigits and amount, then match them to the conta availableAmount so the shop's ERP can close the till without CSV exports from the app.

  • Receivables-backed underwriting

    Lenders read paidMonthly versus futureReceivables and the contracts/summary contractKey list to size a working-capital offer against Stone's agenda de recebíveis instead of a generic bureau pull.

  • Pix checkout automation

    A storefront posts a static Pix QR with key, amount and transactionId, then stores qrCodeContent for the customer while isSalesKey tells the till which chave is the default maquininha key.

  • Multi-bank Open Finance dashboard

    Cash-flow tools list consented accounts (accountId, compeCode, availableAmount) and page statement rows (transactionId, creditDebitType, partieCnpjCpf) so a merchant sees Nu, Stone and other ISPBs in one ledger.

Frequently asked questions

What merchant data does Ton expose?

The signed-in session returns the digital-account balance (availableAmount, label, value), Pix keys (key, keyType, isSalesKey), maquininha sales (saleId, charge_id, cardLastDigits), receivables (paidMonthly, futureReceivables, contractKey) and Open Finance consented accounts (accountId, compeCode, partieCnpjCpf).

How does Ton authenticate API calls?

Calls after login attach a Bearer session token issued by Stone's merchant sign-in service. There is no anonymous access to balances, Pix, sales or Open Finance.

Does Ton include Open Finance, not only the till?

Yes. As a TPP it lists consented external accounts and pages their statements; as an account-holding institution it also supports payment-consent and share-consent flows for the merchant's own conta.

Apps similar to Ton: maquininha, tap e conta

  • InfinitePay Tap, Conta, Cartão — CloudWalk's InfinitePay turns an NFC phone into a free InfiniteTap till for Brazilian CNPJ, CPF and MEI sellers, with a free digital account, 0% Pix, payment links and an optional Smart POS.
  • Stone — Stone's TapStone turns an NFC phone into a card reader at the same rates as a Stone maquininha, sitting on a free Conta PJ with Pix, payment links, boletos and working-capital credit for larger Brazilian shops.
  • PagBank — PagBank Tap On accepts contactless debit and credit on the phone at no hardware cost, next to Moderninha card machines, a free PF/PJ digital account and unlimited Pix for Brazilian merchants.
  • Mercado Pago Point Tap — Mercado Pago Point Tap turns a smartphone into a contactless till, alongside Point card machines, Pix QR and a Mercado Pago digital account for in-person Brazilian sales.
  • Cielo Tap — Cielo Tap, inside the Cielo Gestão app, takes contactless debit, credit and wallets on the phone with no monthly fee, next to Cielo Flash and Smart terminals and instant Pix.
  • SumUp — SumUp Brazil lets sellers take contactless payments on the phone at no extra hardware cost, sell on a physical maquininha, and run 0% Pix through a SumUp digital account.
  • Getnet Get Tap — Getnet Get Tap turns a smartphone into a till for debit, credit in up to 12x and Pix, with Get Mini and Smart terminals and a free Get Conta that settles in two business days.

Topics

  • Ton API
  • Ton maquininha data
  • Stone Pagamentos API
  • Pix keys Ton
  • Open Finance Stone
  • receivables paidMonthly
  • TapTon sales API
  • conta digital availableAmount

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

Get a quote