Total System Services · Capability

TSYS Payment Processing

Unified workflow capability for merchant payment processing combining the TSYS Payment Gateway for transaction authorization, capture, void, and refund operations. Designed for merchants, ISVs, and payment facilitators requiring a complete card acceptance workflow.

Run with Naftiko PaymentsPayment ProcessingMerchant ServicesTransactionsCredit Card

What You Can Do

GET
List transactions — List payment transactions
/v1/transactions
GET
Get transaction — Get transaction status
/v1/transactions/{transactionId}

MCP Tools

authorize-payment

Authorize a card payment without capturing funds

process-sale

Process a complete card sale (authorization + capture)

capture-payment

Capture a previously authorized payment

idempotent
void-payment

Void an authorized or captured payment before settlement

idempotent
refund-payment

Process a full or partial refund for a settled transaction

get-transaction

Look up the status and details of a specific transaction

read-only idempotent
list-transactions

List merchant transactions with optional date and status filters

read-only

APIs Used

tsys-gateway

Capability Spec

payment-processing.yaml Raw ↑
naftiko: "1.0.0-alpha1"

info:
  label: "TSYS Payment Processing"
  description: "Unified workflow capability for merchant payment processing combining the TSYS Payment Gateway for transaction authorization, capture, void, and refund operations. Designed for merchants, ISVs, and payment facilitators requiring a complete card acceptance workflow."
  tags:
    - Payments
    - Payment Processing
    - Merchant Services
    - Transactions
    - Credit Card
  created: "2026-05-03"
  modified: "2026-05-03"

binds:
  - namespace: env
    keys:
      TSYS_API_KEY: TSYS_API_KEY

capability:
  consumes:
    - import: tsys-gateway
      location: ./shared/payment-gateway.yaml

  exposes:
    - type: rest
      port: 8080
      namespace: tsys-payments-api
      description: "Unified REST API for TSYS merchant payment processing."
      resources:
        - path: /v1/transactions
          name: transactions
          description: "Transaction management"
          operations:
            - method: GET
              name: list-transactions
              description: "List payment transactions"
              call: "tsys-gateway.list-transactions"
              outputParameters:
                - type: object
                  mapping: "$."
        - path: /v1/transactions/{transactionId}
          name: transaction
          description: "Individual transaction"
          operations:
            - method: GET
              name: get-transaction
              description: "Get transaction status"
              call: "tsys-gateway.get-transaction"
              with:
                transactionId: "rest.transactionId"
              outputParameters:
                - type: object
                  mapping: "$."

    - type: mcp
      port: 9090
      namespace: tsys-payments-mcp
      transport: http
      description: "MCP server for AI-assisted TSYS payment processing workflows."
      tools:
        - name: authorize-payment
          description: "Authorize a card payment without capturing funds"
          hints:
            readOnly: false
          call: "tsys-gateway.authorize-transaction"
          outputParameters:
            - type: object
              mapping: "$."
        - name: process-sale
          description: "Process a complete card sale (authorization + capture)"
          hints:
            readOnly: false
          call: "tsys-gateway.process-sale"
          outputParameters:
            - type: object
              mapping: "$."
        - name: capture-payment
          description: "Capture a previously authorized payment"
          hints:
            readOnly: false
            idempotent: true
          call: "tsys-gateway.capture-transaction"
          with:
            transactionId: "tools.transactionId"
          outputParameters:
            - type: object
              mapping: "$."
        - name: void-payment
          description: "Void an authorized or captured payment before settlement"
          hints:
            readOnly: false
            destructive: true
            idempotent: true
          call: "tsys-gateway.void-transaction"
          with:
            transactionId: "tools.transactionId"
          outputParameters:
            - type: object
              mapping: "$."
        - name: refund-payment
          description: "Process a full or partial refund for a settled transaction"
          hints:
            readOnly: false
          call: "tsys-gateway.refund-transaction"
          with:
            transactionId: "tools.transactionId"
          outputParameters:
            - type: object
              mapping: "$."
        - name: get-transaction
          description: "Look up the status and details of a specific transaction"
          hints:
            readOnly: true
            idempotent: true
          call: "tsys-gateway.get-transaction"
          with:
            transactionId: "tools.transactionId"
          outputParameters:
            - type: object
              mapping: "$."
        - name: list-transactions
          description: "List merchant transactions with optional date and status filters"
          hints:
            readOnly: true
            openWorld: true
          call: "tsys-gateway.list-transactions"
          outputParameters:
            - type: object
              mapping: "$."