Tamara Channel Partners API

Allow payment service providers, platforms, and aggregators to onboard merchants onto Tamara on their behalf. Submit merchant KYB/KYC information, retrieve onboarding status and merchant API keys, and register onboarding event webhooks. Hosted on a dedicated partner subdomain (partner-api.tamara.co).

Tamara Channel Partners API is one of 8 APIs that Tamara publishes on the APIs.io network, described by a machine-readable OpenAPI specification.

This API exposes 1 machine-runnable capability that can be deployed as REST, MCP, or Agent Skill surfaces via Naftiko.

Tagged areas include Channel Partners, Onboarding, KYB, KYC, and PSP. The published artifact set on APIs.io includes API documentation, an OpenAPI specification, and 1 Naftiko capability spec.

OpenAPI Specification

tamara-channel-partners-api-openapi.yml Raw ↑
openapi: 3.0.3
info:
  title: Tamara Channel Partners API
  description: |
    Allow payment service providers, platforms, and aggregators to onboard merchants onto
    Tamara on their behalf. Submit merchant KYB/KYC information, retrieve onboarding
    status and merchant API keys, and register onboarding event webhooks.
  version: 1.0.0
  contact:
    name: Tamara Partner Support
    url: https://docs.tamara.co/
servers:
- url: https://partner-api.tamara.co
  description: Production
- url: https://partner-api-sandbox.tamara.co
  description: Sandbox
tags:
- name: Merchant Onboarding
- name: Merchant API Keys
- name: Channel Partner Webhooks
paths:
  /channel-partners/merchant-onboarding/create:
    post:
      operationId: createMerchantOnboarding
      summary: Create Merchant Onboarding
      description: Submit merchant and KYB information to initiate automated onboarding and verification.
      tags: [Merchant Onboarding]
      security:
      - bearerAuth: []
      requestBody:
        required: true
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/OnboardingRequest'
      responses:
        '200':
          description: Onboarding submitted.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/OnboardingResponse'
  /channel-partners/merchant-onboarding/{onboardingCode}:
    get:
      operationId: retrieveMerchantOnboarding
      summary: Retrieve Merchant Onboarding
      tags: [Merchant Onboarding]
      security:
      - bearerAuth: []
      parameters:
      - name: onboardingCode
        in: path
        required: true
        schema:
          type: string
          example: S0777457
      responses:
        '200':
          description: Onboarding details.
  /channel-partners/merchant/{merchantId}/api-key:
    get:
      operationId: retrieveMerchantApiKeys
      summary: Retrieve Merchant API Keys
      description: Retrieve API, public, and notification keys for an onboarded merchant.
      tags: [Merchant API Keys]
      security:
      - bearerAuth: []
      parameters:
      - name: merchantId
        in: path
        required: true
        schema:
          type: string
          format: uuid
      responses:
        '200':
          description: Merchant API keys.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/MerchantApiKeys'
  /channel-partners/webhooks/register:
    post:
      operationId: registerChannelPartnerWebhook
      summary: Register Channel Partner Webhook
      description: Register a new webhook for onboarding status notifications.
      tags: [Channel Partner Webhooks]
      security:
      - bearerAuth: []
      requestBody:
        required: true
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/PartnerWebhookRequest'
      responses:
        '201':
          description: Webhook registered.
  /channel-partners/webhooks:
    get:
      operationId: listChannelPartnerWebhooks
      summary: Retrieve Channel Partner Webhooks
      tags: [Channel Partner Webhooks]
      security:
      - bearerAuth: []
      responses:
        '200':
          description: Channel partner webhooks.
          content:
            application/json:
              schema:
                type: array
                items:
                  $ref: '#/components/schemas/PartnerWebhook'
components:
  securitySchemes:
    bearerAuth:
      type: http
      scheme: bearer
  schemas:
    BusinessKyc:
      type: object
      properties:
        business_name:
          type: string
        country_of_operations:
          type: string
        business_type:
          type: string
          enum: [registered, freelance, sole_proprietor]
        website_url:
          type: string
          format: uri
        online:
          type: boolean
        in_store:
          type: boolean
        annual_gmv:
          type: string
        category:
          type: array
          items:
            type: string
        sub_category:
          type: array
          items:
            type: string
        platform:
          type: string
    BankKyc:
      type: object
      properties:
        iban:
          type: string
        email_for_settlement_report:
          type: string
        beneficiary_name:
          type: string
        swift_code:
          type: string
    LegalKyc:
      type: object
      properties:
        cr_number:
          type: string
        national_id_number:
          type: string
        entity_name:
          type: string
        legal_address:
          type: string
        legal_signatory_name:
          type: string
    OnboardingRequest:
      type: object
      required:
      - first_name
      - last_name
      - country
      - email
      - phone
      - business_kyc
      properties:
        locale:
          type: string
          example: en_AE
        first_name:
          type: string
        last_name:
          type: string
        country:
          type: string
        email:
          type: string
          format: email
        country_code:
          type: string
        phone:
          type: string
        hear_about_tamara:
          type: string
        external_channel_partner_id:
          type: string
        business_kyc:
          $ref: '#/components/schemas/BusinessKyc'
        bank_kyc:
          $ref: '#/components/schemas/BankKyc'
        legal_kyc:
          $ref: '#/components/schemas/LegalKyc'
        user_defined_data:
          type: object
          additionalProperties: true
    OnboardingResponse:
      type: object
      properties:
        onboarding_code:
          type: string
    MerchantApiKeys:
      type: object
      properties:
        api_key:
          type: string
        public_key:
          type: string
        notification_key:
          type: string
        merchant_id:
          type: string
          format: uuid
        merchant_code:
          type: string
        merchant_status:
          type: string
    PartnerWebhookRequest:
      type: object
      required: [url, events]
      properties:
        url:
          type: string
          format: uri
        events:
          type: array
          items:
            type: string
            enum: [qualified, disqualified, ready_to_transact, resubmission_required]
        headers:
          type: object
          additionalProperties:
            type: string
    PartnerWebhook:
      type: object
      properties:
        id:
          type: string
          format: uuid
        url:
          type: string
          format: uri
        events:
          type: array
          items:
            type: string
        headers:
          type: object
          additionalProperties:
            type: string