fabric · Capability

fabric Cart — Payments

fabric Cart — Payments. 8 operations. Lead operation: Create Payment. Self-contained Naftiko capability covering one fabric business surface.

fabric Cart — Payments is a Naftiko capability published by fabric, one of 25 capabilities the APIs.io network indexes for this provider. It bundles 8 operations across the POST and DELETE methods rooted at /v1/carts/{…}.

The capability includes 8 state-changing operations. Lead operation: Create Payment. Can be deployed as a REST endpoint, MCP tool, or Agent Skill via Naftiko.

Tagged areas include Fabric and Payments.

Run with Naftiko FabricPayments

What You Can Do

POST
Create payment — Create Payment
/v1/carts/{cartId}/payments
POST
Delete payment attributes — Delete Payment Attributes
/v1/carts/{cartId}/payments/{id}/actions/delete-attributes
POST
Add payment attributes — Add Payment Attributes
/v1/carts/{cartId}/payments/{id}/actions/add-attributes
POST
Delete customer attributes — Delete Customer Attributes
/v1/carts/{cartId}/customer/actions/delete-attributes
POST
Add customer attributes — Add Customer Attributes
/v1/carts/{cartId}/customer/actions/add-attributes
POST
Add coupon — Add Coupon
/v1/carts/{cartId}/coupons/{couponId}
DELETE
Removes coupon — Removes Coupon
/v1/carts/{cartId}/coupons/{couponId}
POST
Create address — Create Address
/v1/carts/{cartId}/addresses

MCP Tools

fabric-create-payment

Create Payment

fabric-delete-payment-attributes

Delete Payment Attributes

fabric-add-payment-attributes

Add Payment Attributes

fabric-delete-customer-attributes

Delete Customer Attributes

fabric-add-customer-attributes

Add Customer Attributes

fabric-add-coupon

Add Coupon

fabric-removes-coupon

Removes Coupon

idempotent
fabric-create-address

Create Address

Capability Spec

cart-payments.yaml Raw ↑
naftiko: 1.0.0-alpha2
info:
  label: fabric Cart — Payments
  description: 'fabric Cart — Payments. 8 operations. Lead operation: Create Payment. Self-contained Naftiko capability covering one fabric business surface.'
  tags:
  - Fabric
  - Payments
  created: '2026-05-25'
  modified: '2026-05-25'
binds:
- namespace: env
  keys:
    FABRIC_ACCESS_TOKEN: FABRIC_ACCESS_TOKEN
capability:
  consumes:
  - type: http
    namespace: cart-payments
    baseUri: https://api.fabric.inc/v3
    description: fabric Cart — Payments consumed operations from fabric-cart-openapi.yml.
    resources:
    - name: carts-cartid-payments
      path: /carts/{cartId}/payments
      operations:
      - name: create-payment
        method: POST
        description: 'Create Payment'
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - name: cartId
          in: path
          type: string
          required: true
        - name: body
          in: body
          type: object
          description: Request body (JSON).
          required: true
    - name: carts-cartid-payments-id-actions-delete-attributes
      path: /carts/{cartId}/payments/{id}/actions/delete-attributes
      operations:
      - name: delete-payment-attributes
        method: POST
        description: 'Delete Payment Attributes'
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - name: cartId
          in: path
          type: string
          required: true
        - name: id
          in: path
          type: string
          required: true
        - name: body
          in: body
          type: object
          description: Request body (JSON).
          required: true
    - name: carts-cartid-payments-id-actions-add-attributes
      path: /carts/{cartId}/payments/{id}/actions/add-attributes
      operations:
      - name: add-payment-attributes
        method: POST
        description: 'Add Payment Attributes'
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - name: cartId
          in: path
          type: string
          required: true
        - name: id
          in: path
          type: string
          required: true
        - name: body
          in: body
          type: object
          description: Request body (JSON).
          required: true
    - name: carts-cartid-customer-actions-delete-attributes
      path: /carts/{cartId}/customer/actions/delete-attributes
      operations:
      - name: delete-customer-attributes
        method: POST
        description: 'Delete Customer Attributes'
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - name: cartId
          in: path
          type: string
          required: true
        - name: body
          in: body
          type: object
          description: Request body (JSON).
          required: true
    - name: carts-cartid-customer-actions-add-attributes
      path: /carts/{cartId}/customer/actions/add-attributes
      operations:
      - name: add-customer-attributes
        method: POST
        description: 'Add Customer Attributes'
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - name: cartId
          in: path
          type: string
          required: true
        - name: body
          in: body
          type: object
          description: Request body (JSON).
          required: true
    - name: carts-cartid-coupons-couponid
      path: /carts/{cartId}/coupons/{couponId}
      operations:
      - name: add-coupon
        method: POST
        description: 'Add Coupon'
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - name: cartId
          in: path
          type: string
          required: true
        - name: couponId
          in: path
          type: string
          required: true
        - name: body
          in: body
          type: object
          description: Request body (JSON).
          required: true
      - name: removes-coupon
        method: DELETE
        description: 'Removes Coupon'
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - name: cartId
          in: path
          type: string
          required: true
        - name: couponId
          in: path
          type: string
          required: true
    - name: carts-cartid-addresses
      path: /carts/{cartId}/addresses
      operations:
      - name: create-address
        method: POST
        description: 'Create Address'
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - name: cartId
          in: path
          type: string
          required: true
        - name: body
          in: body
          type: object
          description: Request body (JSON).
          required: true
    authentication:
      type: bearer
      value: '{{env.FABRIC_ACCESS_TOKEN}}'
      placement: header
  exposes:
  - type: rest
    namespace: cart-payments-rest
    port: 8080
    description: REST adapter for fabric Cart — Payments. One Spectral-compliant resource per consumed operation, prefixed with /v1.
    resources:
    - path: /v1/carts/{cartId}/payments
      name: carts-cartid-payments
      description: REST surface for carts-cartid-payments.
      operations:
      - method: POST
        name: create-payment
        description: 'Create Payment'
        call: cart-payments.create-payment
        with:
          cartId: rest.path.cartId
          body: rest.body
        outputParameters:
        - type: object
          mapping: $.
    - path: /v1/carts/{cartId}/payments/{id}/actions/delete-attributes
      name: carts-cartid-payments-id-actions-delete-attributes
      description: REST surface for carts-cartid-payments-id-actions-delete-attributes.
      operations:
      - method: POST
        name: delete-payment-attributes
        description: 'Delete Payment Attributes'
        call: cart-payments.delete-payment-attributes
        with:
          cartId: rest.path.cartId
          id: rest.path.id
          body: rest.body
        outputParameters:
        - type: object
          mapping: $.
    - path: /v1/carts/{cartId}/payments/{id}/actions/add-attributes
      name: carts-cartid-payments-id-actions-add-attributes
      description: REST surface for carts-cartid-payments-id-actions-add-attributes.
      operations:
      - method: POST
        name: add-payment-attributes
        description: 'Add Payment Attributes'
        call: cart-payments.add-payment-attributes
        with:
          cartId: rest.path.cartId
          id: rest.path.id
          body: rest.body
        outputParameters:
        - type: object
          mapping: $.
    - path: /v1/carts/{cartId}/customer/actions/delete-attributes
      name: carts-cartid-customer-actions-delete-attributes
      description: REST surface for carts-cartid-customer-actions-delete-attributes.
      operations:
      - method: POST
        name: delete-customer-attributes
        description: 'Delete Customer Attributes'
        call: cart-payments.delete-customer-attributes
        with:
          cartId: rest.path.cartId
          body: rest.body
        outputParameters:
        - type: object
          mapping: $.
    - path: /v1/carts/{cartId}/customer/actions/add-attributes
      name: carts-cartid-customer-actions-add-attributes
      description: REST surface for carts-cartid-customer-actions-add-attributes.
      operations:
      - method: POST
        name: add-customer-attributes
        description: 'Add Customer Attributes'
        call: cart-payments.add-customer-attributes
        with:
          cartId: rest.path.cartId
          body: rest.body
        outputParameters:
        - type: object
          mapping: $.
    - path: /v1/carts/{cartId}/coupons/{couponId}
      name: carts-cartid-coupons-couponid
      description: REST surface for carts-cartid-coupons-couponid.
      operations:
      - method: POST
        name: add-coupon
        description: 'Add Coupon'
        call: cart-payments.add-coupon
        with:
          cartId: rest.path.cartId
          couponId: rest.path.couponId
          body: rest.body
        outputParameters:
        - type: object
          mapping: $.
      - method: DELETE
        name: removes-coupon
        description: 'Removes Coupon'
        call: cart-payments.removes-coupon
        with:
          cartId: rest.path.cartId
          couponId: rest.path.couponId
        outputParameters:
        - type: object
          mapping: $.
    - path: /v1/carts/{cartId}/addresses
      name: carts-cartid-addresses
      description: REST surface for carts-cartid-addresses.
      operations:
      - method: POST
        name: create-address
        description: 'Create Address'
        call: cart-payments.create-address
        with:
          cartId: rest.path.cartId
          body: rest.body
        outputParameters:
        - type: object
          mapping: $.
  - type: mcp
    namespace: cart-payments-mcp
    port: 9090
    transport: http
    description: MCP adapter for fabric Cart — Payments. One tool per consumed operation, routed inline through this capability's consumes block.
    tools:
    - name: fabric-create-payment
      description: 'Create Payment'
      hints:
        readOnly: false
        destructive: false
        idempotent: false
      call: cart-payments.create-payment
      with:
        cartId: tools.cartId
        body: tools.body
      outputParameters:
      - type: object
        mapping: $.
    - name: fabric-delete-payment-attributes
      description: 'Delete Payment Attributes'
      hints:
        readOnly: false
        destructive: false
        idempotent: false
      call: cart-payments.delete-payment-attributes
      with:
        cartId: tools.cartId
        id: tools.id
        body: tools.body
      outputParameters:
      - type: object
        mapping: $.
    - name: fabric-add-payment-attributes
      description: 'Add Payment Attributes'
      hints:
        readOnly: false
        destructive: false
        idempotent: false
      call: cart-payments.add-payment-attributes
      with:
        cartId: tools.cartId
        id: tools.id
        body: tools.body
      outputParameters:
      - type: object
        mapping: $.
    - name: fabric-delete-customer-attributes
      description: 'Delete Customer Attributes'
      hints:
        readOnly: false
        destructive: false
        idempotent: false
      call: cart-payments.delete-customer-attributes
      with:
        cartId: tools.cartId
        body: tools.body
      outputParameters:
      - type: object
        mapping: $.
    - name: fabric-add-customer-attributes
      description: 'Add Customer Attributes'
      hints:
        readOnly: false
        destructive: false
        idempotent: false
      call: cart-payments.add-customer-attributes
      with:
        cartId: tools.cartId
        body: tools.body
      outputParameters:
      - type: object
        mapping: $.
    - name: fabric-add-coupon
      description: 'Add Coupon'
      hints:
        readOnly: false
        destructive: false
        idempotent: false
      call: cart-payments.add-coupon
      with:
        cartId: tools.cartId
        couponId: tools.couponId
        body: tools.body
      outputParameters:
      - type: object
        mapping: $.
    - name: fabric-removes-coupon
      description: 'Removes Coupon'
      hints:
        readOnly: false
        destructive: true
        idempotent: true
      call: cart-payments.removes-coupon
      with:
        cartId: tools.cartId
        couponId: tools.couponId
      outputParameters:
      - type: object
        mapping: $.
    - name: fabric-create-address
      description: 'Create Address'
      hints:
        readOnly: false
        destructive: false
        idempotent: false
      call: cart-payments.create-address
      with:
        cartId: tools.cartId
        body: tools.body
      outputParameters:
      - type: object
        mapping: $.