Decentro · Capability

Decentro Virtual Accounts API — Virtual Accounts

Decentro Virtual Accounts API — Virtual Accounts. 5 operations. Lead operation: Create a virtual account. Self-contained Naftiko capability covering one Decentro business surface.

Run with Naftiko DecentroVirtual Accounts

What You Can Do

POST
Createvirtualaccount — Create a virtual account
/v1/v2/banking/account
GET
Getvirtualaccountbalance — Get virtual account balance
/v1/v2/banking/account/balance
GET
Getvirtualaccountstatement — Get virtual account statement
/v1/v2/banking/account/statement
POST
Whitelistremitter — Whitelist a remitter
/v1/v2/banking/account/whitelist
GET
Getvirtualaccount — Get virtual account details
/v1/v2/banking/account/{accountnumber}

MCP Tools

create-virtual-account

Create a virtual account

get-virtual-account-balance

Get virtual account balance

read-only idempotent
get-virtual-account-statement

Get virtual account statement

read-only idempotent
whitelist-remitter

Whitelist a remitter

read-only
get-virtual-account-details

Get virtual account details

read-only idempotent

Capability Spec

virtual-accounts-virtual-accounts.yaml Raw ↑
naftiko: 1.0.0-alpha2
info:
  label: Decentro Virtual Accounts API — Virtual Accounts
  description: 'Decentro Virtual Accounts API — Virtual Accounts. 5 operations. Lead operation: Create a virtual account.
    Self-contained Naftiko capability covering one Decentro business surface.'
  tags:
  - Decentro
  - Virtual Accounts
  created: '2026-05-19'
  modified: '2026-05-19'
binds:
- namespace: env
  keys:
    DECENTRO_API_KEY: DECENTRO_API_KEY
capability:
  consumes:
  - type: http
    namespace: virtual-accounts-virtual-accounts
    baseUri: https://in.decentro.tech
    description: Decentro Virtual Accounts API — Virtual Accounts business capability. Self-contained, no shared references.
    resources:
    - name: v2-banking-account
      path: /v2/banking/account
      operations:
      - name: createvirtualaccount
        method: POST
        description: Create a virtual account
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
    - name: v2-banking-account-balance
      path: /v2/banking/account/balance
      operations:
      - name: getvirtualaccountbalance
        method: GET
        description: Get virtual account balance
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
    - name: v2-banking-account-statement
      path: /v2/banking/account/statement
      operations:
      - name: getvirtualaccountstatement
        method: GET
        description: Get virtual account statement
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
    - name: v2-banking-account-whitelist
      path: /v2/banking/account/whitelist
      operations:
      - name: whitelistremitter
        method: POST
        description: Whitelist a remitter
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
    - name: v2-banking-account-accountNumber
      path: /v2/banking/account/{accountNumber}
      operations:
      - name: getvirtualaccount
        method: GET
        description: Get virtual account details
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - name: accountNumber
          in: path
          type: string
          required: true
    authentication:
      type: apikey
      key: client_secret
      value: '{{env.DECENTRO_API_KEY}}'
      placement: header
  exposes:
  - type: rest
    namespace: virtual-accounts-virtual-accounts-rest
    port: 8080
    description: REST adapter for Decentro Virtual Accounts API — Virtual Accounts. One Spectral-compliant resource per consumed
      operation, prefixed with /v1.
    resources:
    - path: /v1/v2/banking/account
      name: v2-banking-account
      description: REST surface for v2-banking-account.
      operations:
      - method: POST
        name: createvirtualaccount
        description: Create a virtual account
        call: virtual-accounts-virtual-accounts.createvirtualaccount
        outputParameters:
        - type: object
          mapping: $.
    - path: /v1/v2/banking/account/balance
      name: v2-banking-account-balance
      description: REST surface for v2-banking-account-balance.
      operations:
      - method: GET
        name: getvirtualaccountbalance
        description: Get virtual account balance
        call: virtual-accounts-virtual-accounts.getvirtualaccountbalance
        outputParameters:
        - type: object
          mapping: $.
    - path: /v1/v2/banking/account/statement
      name: v2-banking-account-statement
      description: REST surface for v2-banking-account-statement.
      operations:
      - method: GET
        name: getvirtualaccountstatement
        description: Get virtual account statement
        call: virtual-accounts-virtual-accounts.getvirtualaccountstatement
        outputParameters:
        - type: object
          mapping: $.
    - path: /v1/v2/banking/account/whitelist
      name: v2-banking-account-whitelist
      description: REST surface for v2-banking-account-whitelist.
      operations:
      - method: POST
        name: whitelistremitter
        description: Whitelist a remitter
        call: virtual-accounts-virtual-accounts.whitelistremitter
        outputParameters:
        - type: object
          mapping: $.
    - path: /v1/v2/banking/account/{accountnumber}
      name: v2-banking-account-accountnumber
      description: REST surface for v2-banking-account-accountNumber.
      operations:
      - method: GET
        name: getvirtualaccount
        description: Get virtual account details
        call: virtual-accounts-virtual-accounts.getvirtualaccount
        with:
          accountNumber: rest.accountNumber
        outputParameters:
        - type: object
          mapping: $.
  - type: mcp
    namespace: virtual-accounts-virtual-accounts-mcp
    port: 9090
    transport: http
    description: MCP adapter for Decentro Virtual Accounts API — Virtual Accounts. One tool per consumed operation, routed
      inline through this capability's consumes block.
    tools:
    - name: create-virtual-account
      description: Create a virtual account
      hints:
        readOnly: false
        destructive: false
        idempotent: false
      call: virtual-accounts-virtual-accounts.createvirtualaccount
      outputParameters:
      - type: object
        mapping: $.
    - name: get-virtual-account-balance
      description: Get virtual account balance
      hints:
        readOnly: true
        destructive: false
        idempotent: true
      call: virtual-accounts-virtual-accounts.getvirtualaccountbalance
      outputParameters:
      - type: object
        mapping: $.
    - name: get-virtual-account-statement
      description: Get virtual account statement
      hints:
        readOnly: true
        destructive: false
        idempotent: true
      call: virtual-accounts-virtual-accounts.getvirtualaccountstatement
      outputParameters:
      - type: object
        mapping: $.
    - name: whitelist-remitter
      description: Whitelist a remitter
      hints:
        readOnly: true
        destructive: false
        idempotent: false
      call: virtual-accounts-virtual-accounts.whitelistremitter
      outputParameters:
      - type: object
        mapping: $.
    - name: get-virtual-account-details
      description: Get virtual account details
      hints:
        readOnly: true
        destructive: false
        idempotent: true
      call: virtual-accounts-virtual-accounts.getvirtualaccount
      with:
        accountNumber: tools.accountNumber
      outputParameters:
      - type: object
        mapping: $.