Skip to main content

Olist (Tiny)

Native integration · Read-only (pull) · Syncs automatically every 60 min (configurable) + on demand · OAuth connection

Olist, through the Tiny ERP, is a management platform for retail and e-commerce. Connected to Dunning, it brings the contacts and receivables from your Tiny into the collection operation — the open charges become charges and the contacts become people in your portfolio.

Prerequisites

  • An Olist/Tiny account with contacts and receivables.
  • An OAuth application registered in Olist/Tiny's developer portal, pointing to Dunning's callback URL (see the requirement below).

How to connect

:::note No dedicated panel screen (yet) Today only the Kobana Gateway has a ready connect screen in the panel. For this ERP, the connection is made through the API (/api/v1/integrations/... routes) — the steps below describe the authorization flow; the equivalent self-service screen in the panel is on the roadmap. :::

Olist/Tiny uses OAuth2: you authorize access on the platform itself, without pasting tokens by hand.

  1. In Dunning, open Settings → Integrations and click Connect on Olist.
  2. Dunning generates a secure link and redirects you to the Olist/Tiny login.
  3. Log in and review the consent screen with the requested access.
  4. Authorize Dunning's access.
  5. Olist sends you back to Dunning already connected — the tokens are stored encrypted and the integration is active, with the first sync afterward.

Once connected, the token is renewed automatically; you only redo the "Connect" if access is revoked.

Field mapping (source → Dunning)

Olist/Tiny fieldDunning field
ReceivableCharge
valorAmount
dataVencimentoDue date
dataIssue date
dataPagamentoPayment date
numeroDocumentoDocument number
historicoDescription
situacao open / expected / partial / overdue / issuancepending (or overdue if past due)
situacao paid / receivedpaid (settlement + exit from the collection rule)
situacao cancelledcancelled
situacao unknownignored
ContactPerson in the portfolio
cpfCnpjPerson's document
nomePerson's name

Synchronization

Synchronization is idempotent and runs automatically (every 60 min by default) and manually (sync button). Contacts and receivables are synced in the same cycle.

What it does not do / limitations

  • Does not issue charges or write back to Olist/Tiny — it is pull-only.
  • No webhooks. The v3 API does not expose receivable webhooks to applications, so payments and cancellations appear at most on the next sync cycle.
  • No digitable line/Pix/payment URL coming from the source — payment is tracked via status.

Requirement: OAuth application in Olist

"Connect" depends on an OAuth application registered in Olist/Tiny's developer portal, with Dunning's callback URL. That application's credentials (client ID and client secret) can be configured globally in the Dunning environment or per integration. Without that application registered, the connection flow does not open — it is the enablement step that falls to whoever administers Olist.

Disconnecting or reauthorizing

If access is revoked (or you want to switch accounts), redo the "Connect" to reauthorize. While the connection is active, the token is renewed automatically.

Troubleshooting

  • The sync is out of date. Check the interval (default 60 min) and click Sync now.
  • The connection dropped. Access may have been revoked in Olist/Tiny — redo the "Connect".
  • A contact did not appear. The contact sync runs alongside the receivables sync; a contact with no charge is created when their first charge is synced.
  • A charge appears duplicated. Dunning deduplicates by externalId (olist:receivable:{id}); a real duplicate only occurs with the same charge coming from another source.
  • "Connect" does not open. The OAuth application registered in Olist is missing (or its credentials) — see the requirement above.

Security

The authorization link carries a signed state (anti-CSRF) with single use, the tokens are encrypted at rest and the token calls go to the log with the body redacted — code and secrets are never recorded.