arazzo: 1.0.1 info: title: Ziina - refund a payment and confirm version: 1.0.0 description: >- Issue a refund against an existing payment intent, then poll the refund until it reaches a terminal status. sourceDescriptions: - name: ziina url: ../openapi/ziina-openapi.yml type: openapi workflows: - workflowId: refund-payment summary: Create a refund against a payment intent and confirm its status. inputs: type: object properties: refund_id: type: string description: Client-generated UUID for this refund (idempotency key). payment_intent_id: type: string amount: type: number description: Optional partial amount in minor units; omit for a full refund. test: type: boolean default: true required: [refund_id, payment_intent_id] steps: - stepId: initiate-refund operationId: RefundController_initiateRefund requestBody: contentType: application/json payload: id: $inputs.refund_id payment_intent_id: $inputs.payment_intent_id amount: $inputs.amount test: $inputs.test outputs: refund_id: $response.body#/id - stepId: get-refund operationId: RefundController_getRefund parameters: - name: id in: path value: $steps.initiate-refund.outputs.refund_id outputs: status: $response.body#/status outputs: refund_id: $steps.initiate-refund.outputs.refund_id status: $steps.get-refund.outputs.status