naftiko: 1.0.0-alpha2 info: label: Pin Payments API — Refunds description: 'Pin Payments API — Refunds. 4 operations. Lead operation: List refunds for a charge. Self-contained Naftiko capability covering one Pin Payments business surface.' tags: - Pin Payments - Refunds created: '2026-05-19' modified: '2026-05-19' binds: - namespace: env keys: PIN_PAYMENTS_API_KEY: PIN_PAYMENTS_API_KEY capability: consumes: - type: http namespace: pin-payments-refunds baseUri: https://api.pinpayments.com/1 description: Pin Payments API — Refunds business capability. Self-contained, no shared references. resources: - name: charges-charge_token-refunds path: /charges/{charge_token}/refunds operations: - name: get method: GET description: List refunds for a charge outputRawFormat: json outputParameters: - name: result type: object value: $. - name: post method: POST description: Create a refund outputRawFormat: json outputParameters: - name: result type: object value: $. inputParameters: - name: body in: body type: object description: Request body (JSON). required: false - name: refunds path: /refunds operations: - name: get method: GET description: List refunds outputRawFormat: json outputParameters: - name: result type: object value: $. - name: refunds-refund_token path: /refunds/{refund_token} operations: - name: get method: GET description: Retrieve a refund outputRawFormat: json outputParameters: - name: result type: object value: $. inputParameters: - name: refund_token in: path type: string required: true authentication: type: basic username: '{{env.PIN_PAYMENTS_USER}}' password: '{{env.PIN_PAYMENTS_PASS}}' exposes: - type: rest namespace: pin-payments-refunds-rest port: 8080 description: REST adapter for Pin Payments API — Refunds. One Spectral-compliant resource per consumed operation, prefixed with /v1. resources: - path: /v1/charges/{charge-token}/refunds name: charges-charge-token-refunds description: REST surface for charges-charge_token-refunds. operations: - method: GET name: get description: List refunds for a charge call: pin-payments-refunds.get outputParameters: - type: object mapping: $. - method: POST name: post description: Create a refund call: pin-payments-refunds.post with: body: rest.body outputParameters: - type: object mapping: $. - path: /v1/refunds name: refunds description: REST surface for refunds. operations: - method: GET name: get description: List refunds call: pin-payments-refunds.get outputParameters: - type: object mapping: $. - path: /v1/refunds/{refund-token} name: refunds-refund-token description: REST surface for refunds-refund_token. operations: - method: GET name: get description: Retrieve a refund call: pin-payments-refunds.get with: refund_token: rest.refund_token outputParameters: - type: object mapping: $. - type: mcp namespace: pin-payments-refunds-mcp port: 9090 transport: http description: MCP adapter for Pin Payments API — Refunds. One tool per consumed operation, routed inline through this capability's consumes block. tools: - name: list-refunds-charge description: List refunds for a charge hints: readOnly: true destructive: false idempotent: true call: pin-payments-refunds.get outputParameters: - type: object mapping: $. - name: create-refund description: Create a refund hints: readOnly: false destructive: false idempotent: false call: pin-payments-refunds.post with: body: tools.body outputParameters: - type: object mapping: $. - name: list-refunds description: List refunds hints: readOnly: true destructive: false idempotent: true call: pin-payments-refunds.get outputParameters: - type: object mapping: $. - name: retrieve-refund description: Retrieve a refund hints: readOnly: true destructive: false idempotent: true call: pin-payments-refunds.get with: refund_token: tools.refund_token outputParameters: - type: object mapping: $.