Cardtonic · Authentication Profile

Cardtonic Authentication

Authentication

The Cardtonic Business API publishes no OpenAPI securitySchemes (components.securitySchemes is empty and every operation carries security: []), so this profile is read from the documented operations themselves rather than derived from the spec. Access is a two-stage model: a business user signs up and logs in to obtain a session token, then mints a long-lived API key through POST /users/generate-key. Every documented request additionally requires an X-Tonic-Env environment-selector header.

Cardtonic declares 3 security scheme(s) across its OpenAPI definitions.

AfricaBill PaymentseSIMFinanceFintechGift CardsGhanaNigeriaPaymentsVirtual Dollar Cards
Methods: Schemes: 3 OAuth flows: API key in:

Security Schemes

X-Tonic-Env apiKey
· in: header ()
http
scheme: bearer
apiKey

Source

Authentication Profile

Raw ↑
specification: API Commons Authentication
specificationVersion: '0.1'
provider: Cardtonic
providerId: cardtonic
generated: '2026-09-05'
method: searched
source: https://docs.cardtonic.com - the Auth and User operation pages of Cardtonic's published API documentation
modified: '2026-09-05'
description: >-
  The Cardtonic Business API publishes no OpenAPI securitySchemes (components.securitySchemes is
  empty and every operation carries security: []), so this profile is read from the documented
  operations themselves rather than derived from the spec. Access is a two-stage model: a business
  user signs up and logs in to obtain a session token, then mints a long-lived API key through
  POST /users/generate-key. Every documented request additionally requires an X-Tonic-Env
  environment-selector header.
docs:
  - https://docs.cardtonic.com
  - https://cardtonic.com/developer
schemes:
  - id: tonic-env-header
    type: apiKey
    in: header
    name: X-Tonic-Env
    required: true
    description: >-
      Environment selector, required on all 14 documented operations. The only value published in
      Cardtonic's own examples is "development". This is a routing header, not a credential.
    evidence: 'parameters[] on every operation in openapi/cardtonic-openapi.yml'
    source: https://docs.cardtonic.com/sign-up-business-user-11716510e0.md
  - id: business-session-token
    type: http
    scheme: bearer
    description: >-
      POST /auth/login/business exchanges an email + password for a session token. Cardtonic does
      not document the header the token is presented in; the login response body carries a "token"
      field. Email verification is enforced before login succeeds - an unverified account returns
      403 "you're yet to verify your email".
    operations:
      - loginBusiness
      - verifyEmail
      - resendEmailVerification
      - forgotPassword
      - resetPassword
    evidence: 'responses of loginBusiness / verifyEmail in openapi/cardtonic-openapi.yml'
    source: https://docs.cardtonic.com/login-business-11716513e0.md
    gap: >-
      The presentation header (Authorization: Bearer vs a custom header) is not published. An
      integrator cannot construct an authenticated call from the documentation alone.
  - id: cardtonic-api-key
    type: apiKey
    description: >-
      POST /users/generate-key issues a private API key; GET /users/show-api-key returns the
      current one. Cardtonic's own response example shows the key carries a "PRIV_" prefix followed
      by 64 hex characters. The transport header for the key is not documented.
    operations:
      - generateApiKey
      - fetchApiKey
    key_prefix: PRIV_
    evidence: 'data.apiKey in the 200 response of generateApiKey'
    source: https://docs.cardtonic.com/generate-api-key-11716518e0.md
    gap: >-
      No securityScheme, no header name, no rotation or revocation operation is published.
mfa:
  supported: true
  description: >-
    Account-level two-factor authentication is togglable through POST /users/enable-2fa and
    POST /users/disable-2fa. Neither the factor type (TOTP, SMS, email) nor the challenge/verify
    step is documented.
  operations:
    - enable2fa
    - disable2fa
identity_verification:
  description: >-
    Business accounts are KYC-gated. POST /users/kyc/verify-bvn submits a Nigerian Bank Verification
    Number; POST /users/kyc/verify-kyc submits corporate documents and shareholder identity records
    (firstName, lastName, email, phoneNumber, id) with document URLs previously obtained from
    PUT /users/upload.
  operations:
    - addBvn
    - verifyKyc
    - uploadFile
  jurisdiction: Nigeria (BVN is a Central Bank of Nigeria identifier)
oauth2: false
openid_connect: false
mutual_tls: false
notes: >-
  /.well-known/openid-configuration and /.well-known/oauth-authorization-server return 404 on every
  Cardtonic host (see well-known/cardtonic-well-known.yml). There is no OAuth surface to describe.
maintainers:
  - FN: Kin Lane
    email: kin@apievangelist.com

Work with this as data

Every security artifact here is available over the APIs.io API and to AI agents over MCP.

MCP server

One button, every client — Claude, Cursor, VS Code and the rest.

https://apis.io/mcp

Tools for security posture

4 MCP tools reach this
  • find_securityBrowse and filter every security artifact in the catalog.
  • apis_io_searchSTART HERE — APIs, providers and tags for one query, each with its total.
  • resolveTurn a domain, URL or GitHub org into the provider it belongs to.
  • find_cohortsEvery scored population of providers in the catalog.
All 92 tools →

Call it yourself

curl for this page
This security artifact
curl "https://apis.io/api/v1/security/cardtonic-authentication"
All security posture
curl "https://apis.io/api/v1/security?limit=25"

Discovery needs no key. Ratings and market analysis are Pro.

Get an API key

Free tier, no form to fill in. Signing in shares your email address with us — we store it to create your key and to recognise you if you sign in with another provider. See our Privacy Policy and Terms.

A second provider on the same verified email joins the account you already have.