Lago · Capability

Lago API documentation — Wallets

Lago API documentation — Wallets. 7 operations. Lead operation: Lago Top up a wallet. Self-contained Naftiko capability covering one Lago business surface.

Run with Naftiko LagoWallets

What You Can Do

POST
Createwallettransaction — Lago Top up a wallet
/v1/wallet-transactions
POST
Createwallet — Lago Create a wallet
/v1/wallets
GET
Findallwallets — Lago List all wallets
/v1/wallets
PUT
Updatewallet — Lago Update a wallet
/v1/wallets/{lago-id}
GET
Findwallet — Lago Retrieve a wallet
/v1/wallets/{lago-id}
DELETE
Destroywallet — Lago Terminate a wallet
/v1/wallets/{lago-id}
GET
Findallwallettransactions — Lago List all wallet transactions
/v1/wallets/{lago-id}/wallet-transactions

MCP Tools

lago-top-up-wallet

Lago Top up a wallet

lago-create-wallet

Lago Create a wallet

lago-list-all-wallets

Lago List all wallets

read-only idempotent
lago-update-wallet

Lago Update a wallet

idempotent
lago-retrieve-wallet

Lago Retrieve a wallet

read-only idempotent
lago-terminate-wallet

Lago Terminate a wallet

idempotent
lago-list-all-wallet-transactions

Lago List all wallet transactions

read-only idempotent

Capability Spec

lago-wallets.yaml Raw ↑
naftiko: 1.0.0-alpha2
info:
  label: Lago API documentation — Wallets
  description: 'Lago API documentation — Wallets. 7 operations. Lead operation: Lago Top up a wallet. Self-contained Naftiko
    capability covering one Lago business surface.'
  tags:
  - Lago
  - Wallets
  created: '2026-05-19'
  modified: '2026-05-19'
binds:
- namespace: env
  keys:
    LAGO_API_KEY: LAGO_API_KEY
capability:
  consumes:
  - type: http
    namespace: lago-wallets
    baseUri: https://api.getlago.com/api/v1
    description: Lago API documentation — Wallets business capability. Self-contained, no shared references.
    resources:
    - name: wallet_transactions
      path: /wallet_transactions
      operations:
      - name: createwallettransaction
        method: POST
        description: Lago Top up a wallet
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - name: body
          in: body
          type: object
          description: Request body (JSON).
          required: true
    - name: wallets
      path: /wallets
      operations:
      - name: createwallet
        method: POST
        description: Lago Create a wallet
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - name: body
          in: body
          type: object
          description: Request body (JSON).
          required: true
      - name: findallwallets
        method: GET
        description: Lago List all wallets
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - name: external_customer_id
          in: query
          type: string
          description: The customer external unique identifier (provided by your own application).
          required: true
    - name: wallets-lago_id
      path: /wallets/{lago_id}
      operations:
      - name: updatewallet
        method: PUT
        description: Lago Update a wallet
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - name: body
          in: body
          type: object
          description: Request body (JSON).
          required: true
      - name: findwallet
        method: GET
        description: Lago Retrieve a wallet
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
      - name: destroywallet
        method: DELETE
        description: Lago Terminate a wallet
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
    - name: wallets-lago_id-wallet_transactions
      path: /wallets/{lago_id}/wallet_transactions
      operations:
      - name: findallwallettransactions
        method: GET
        description: Lago List all wallet transactions
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - name: lago_id
          in: path
          type: string
          description: 'Unique identifier assigned to the wallet within the Lago application. This ID is exclusively created
            by Lago and serves as a unique identifier for the wallet''s '
          required: true
        - name: status
          in: query
          type: string
          description: The status of the wallet transaction. Possible values are `pending` or `settled`.
        - name: transaction_status
          in: query
          type: string
          description: 'The transaction status of the wallet transaction. Possible values are `purchased` (with pending or
            settled status), `granted` (without invoice_id), `voided` or '
        - name: transaction_type
          in: query
          type: string
          description: The transaction type of the wallet transaction. Possible values are `inbound` (increasing the wallet
            balance) or `outbound` (decreasing the wallet balance).
    authentication:
      type: bearer
      token: '{{env.LAGO_API_KEY}}'
  exposes:
  - type: rest
    namespace: lago-wallets-rest
    port: 8080
    description: REST adapter for Lago API documentation — Wallets. One Spectral-compliant resource per consumed operation,
      prefixed with /v1.
    resources:
    - path: /v1/wallet-transactions
      name: wallet-transactions
      description: REST surface for wallet_transactions.
      operations:
      - method: POST
        name: createwallettransaction
        description: Lago Top up a wallet
        call: lago-wallets.createwallettransaction
        with:
          body: rest.body
        outputParameters:
        - type: object
          mapping: $.
    - path: /v1/wallets
      name: wallets
      description: REST surface for wallets.
      operations:
      - method: POST
        name: createwallet
        description: Lago Create a wallet
        call: lago-wallets.createwallet
        with:
          body: rest.body
        outputParameters:
        - type: object
          mapping: $.
      - method: GET
        name: findallwallets
        description: Lago List all wallets
        call: lago-wallets.findallwallets
        with:
          external_customer_id: rest.external_customer_id
        outputParameters:
        - type: object
          mapping: $.
    - path: /v1/wallets/{lago-id}
      name: wallets-lago-id
      description: REST surface for wallets-lago_id.
      operations:
      - method: PUT
        name: updatewallet
        description: Lago Update a wallet
        call: lago-wallets.updatewallet
        with:
          body: rest.body
        outputParameters:
        - type: object
          mapping: $.
      - method: GET
        name: findwallet
        description: Lago Retrieve a wallet
        call: lago-wallets.findwallet
        outputParameters:
        - type: object
          mapping: $.
      - method: DELETE
        name: destroywallet
        description: Lago Terminate a wallet
        call: lago-wallets.destroywallet
        outputParameters:
        - type: object
          mapping: $.
    - path: /v1/wallets/{lago-id}/wallet-transactions
      name: wallets-lago-id-wallet-transactions
      description: REST surface for wallets-lago_id-wallet_transactions.
      operations:
      - method: GET
        name: findallwallettransactions
        description: Lago List all wallet transactions
        call: lago-wallets.findallwallettransactions
        with:
          lago_id: rest.lago_id
          status: rest.status
          transaction_status: rest.transaction_status
          transaction_type: rest.transaction_type
        outputParameters:
        - type: object
          mapping: $.
  - type: mcp
    namespace: lago-wallets-mcp
    port: 9090
    transport: http
    description: MCP adapter for Lago API documentation — Wallets. One tool per consumed operation, routed inline through
      this capability's consumes block.
    tools:
    - name: lago-top-up-wallet
      description: Lago Top up a wallet
      hints:
        readOnly: false
        destructive: false
        idempotent: false
      call: lago-wallets.createwallettransaction
      with:
        body: tools.body
      outputParameters:
      - type: object
        mapping: $.
    - name: lago-create-wallet
      description: Lago Create a wallet
      hints:
        readOnly: false
        destructive: false
        idempotent: false
      call: lago-wallets.createwallet
      with:
        body: tools.body
      outputParameters:
      - type: object
        mapping: $.
    - name: lago-list-all-wallets
      description: Lago List all wallets
      hints:
        readOnly: true
        destructive: false
        idempotent: true
      call: lago-wallets.findallwallets
      with:
        external_customer_id: tools.external_customer_id
      outputParameters:
      - type: object
        mapping: $.
    - name: lago-update-wallet
      description: Lago Update a wallet
      hints:
        readOnly: false
        destructive: false
        idempotent: true
      call: lago-wallets.updatewallet
      with:
        body: tools.body
      outputParameters:
      - type: object
        mapping: $.
    - name: lago-retrieve-wallet
      description: Lago Retrieve a wallet
      hints:
        readOnly: true
        destructive: false
        idempotent: true
      call: lago-wallets.findwallet
      outputParameters:
      - type: object
        mapping: $.
    - name: lago-terminate-wallet
      description: Lago Terminate a wallet
      hints:
        readOnly: false
        destructive: true
        idempotent: true
      call: lago-wallets.destroywallet
      outputParameters:
      - type: object
        mapping: $.
    - name: lago-list-all-wallet-transactions
      description: Lago List all wallet transactions
      hints:
        readOnly: true
        destructive: false
        idempotent: true
      call: lago-wallets.findallwallettransactions
      with:
        lago_id: tools.lago_id
        status: tools.status
        transaction_status: tools.transaction_status
        transaction_type: tools.transaction_type
      outputParameters:
      - type: object
        mapping: $.