naftiko: 1.0.0-alpha2 info: label: Global System for Mobile Communications GSMA Camara Project Carrier Billing — Two Step Payment description: 'Global System for Mobile Communications GSMA Camara Project Carrier Billing — Two Step Payment. 4 operations. Lead operation: Global System for Mobile Communications Prepare (reserve) a payment. Self-contained Naftiko capability covering one Global System For Mobile Communications business surface.' tags: - Global System For Mobile Communications - Two Step Payment created: '2026-05-19' modified: '2026-05-19' binds: - namespace: env keys: GLOBAL_SYSTEM_FOR_MOBILE_COMMUNICATIONS_API_KEY: GLOBAL_SYSTEM_FOR_MOBILE_COMMUNICATIONS_API_KEY capability: consumes: - type: http namespace: carrier-billing-two-step-payment baseUri: '' description: Global System for Mobile Communications GSMA Camara Project Carrier Billing — Two Step Payment business capability. Self-contained, no shared references. resources: - name: payments-prepare path: /payments/prepare operations: - name: preparepayment method: POST description: Global System for Mobile Communications Prepare (reserve) a payment outputRawFormat: json outputParameters: - name: result type: object value: $. inputParameters: - name: body in: body type: object description: Request body (JSON). required: true - name: payments-paymentId-cancel path: /payments/{paymentId}/cancel operations: - name: cancelpayment method: POST description: Global System for Mobile Communications Cancel a payment outputRawFormat: json outputParameters: - name: result type: object value: $. inputParameters: - name: paymentId in: path type: string description: The payment identifier returned when the payment preparation was created. required: true - name: body in: body type: object description: Request body (JSON). required: true - name: payments-paymentId-confirm path: /payments/{paymentId}/confirm operations: - name: confirmpayment method: POST description: Global System for Mobile Communications Confirm a payment outputRawFormat: json outputParameters: - name: result type: object value: $. inputParameters: - name: paymentId in: path type: string description: The payment identifier returned when the payment preparation was created. required: true - name: body in: body type: object description: Request body (JSON). required: true - name: payments-paymentId-validate path: /payments/{paymentId}/validate operations: - name: validatepayment method: POST description: Global System for Mobile Communications Validate a payment outputRawFormat: json outputParameters: - name: result type: object value: $. inputParameters: - name: paymentId in: path type: string description: The payment identifier returned when the payment preparation was created. required: true - name: body in: body type: object description: Request body (JSON). required: true authentication: type: bearer token: '{{env.GLOBAL_SYSTEM_FOR_MOBILE_COMMUNICATIONS_API_KEY}}' exposes: - type: rest namespace: carrier-billing-two-step-payment-rest port: 8080 description: REST adapter for Global System for Mobile Communications GSMA Camara Project Carrier Billing — Two Step Payment. One Spectral-compliant resource per consumed operation, prefixed with /v1. resources: - path: /v1/payments/prepare name: payments-prepare description: REST surface for payments-prepare. operations: - method: POST name: preparepayment description: Global System for Mobile Communications Prepare (reserve) a payment call: carrier-billing-two-step-payment.preparepayment with: body: rest.body outputParameters: - type: object mapping: $. - path: /v1/payments/{paymentid}/cancel name: payments-paymentid-cancel description: REST surface for payments-paymentId-cancel. operations: - method: POST name: cancelpayment description: Global System for Mobile Communications Cancel a payment call: carrier-billing-two-step-payment.cancelpayment with: paymentId: rest.paymentId body: rest.body outputParameters: - type: object mapping: $. - path: /v1/payments/{paymentid}/confirm name: payments-paymentid-confirm description: REST surface for payments-paymentId-confirm. operations: - method: POST name: confirmpayment description: Global System for Mobile Communications Confirm a payment call: carrier-billing-two-step-payment.confirmpayment with: paymentId: rest.paymentId body: rest.body outputParameters: - type: object mapping: $. - path: /v1/payments/{paymentid}/validate name: payments-paymentid-validate description: REST surface for payments-paymentId-validate. operations: - method: POST name: validatepayment description: Global System for Mobile Communications Validate a payment call: carrier-billing-two-step-payment.validatepayment with: paymentId: rest.paymentId body: rest.body outputParameters: - type: object mapping: $. - type: mcp namespace: carrier-billing-two-step-payment-mcp port: 9090 transport: http description: MCP adapter for Global System for Mobile Communications GSMA Camara Project Carrier Billing — Two Step Payment. One tool per consumed operation, routed inline through this capability's consumes block. tools: - name: global-system-mobile-communications-prepare description: Global System for Mobile Communications Prepare (reserve) a payment hints: readOnly: false destructive: false idempotent: false call: carrier-billing-two-step-payment.preparepayment with: body: tools.body outputParameters: - type: object mapping: $. - name: global-system-mobile-communications-cancel description: Global System for Mobile Communications Cancel a payment hints: readOnly: false destructive: false idempotent: false call: carrier-billing-two-step-payment.cancelpayment with: paymentId: tools.paymentId body: tools.body outputParameters: - type: object mapping: $. - name: global-system-mobile-communications-confirm description: Global System for Mobile Communications Confirm a payment hints: readOnly: false destructive: false idempotent: false call: carrier-billing-two-step-payment.confirmpayment with: paymentId: tools.paymentId body: tools.body outputParameters: - type: object mapping: $. - name: global-system-mobile-communications-validate description: Global System for Mobile Communications Validate a payment hints: readOnly: true destructive: false idempotent: false call: carrier-billing-two-step-payment.validatepayment with: paymentId: tools.paymentId body: tools.body outputParameters: - type: object mapping: $.