openapi: 3.1.0 info: title: Clover Ecommerce CHARGES REFUNDS API description: 'Clover Ecommerce API v1 — online (card-not-present) payments: charges, captures, refunds, tokenization, and hosted checkout. Authentication uses OAuth 2.0 / PAKMS Ecommerce API keys. Schemas and operations are derived from the Clover developer reference at docs.clover.com.' version: v1 contact: name: Clover Developer Platform url: https://docs.clover.com/dev/reference x-generated-from: documentation x-last-validated: '2026-06-02' servers: - url: https://scl.clover.com description: Production Ecommerce - url: https://scl-sandbox.dev.clover.com description: Sandbox Ecommerce security: - OAuth2: [] tags: - name: REFUNDS paths: /v1/refunds: post: summary: Clover Create a Refund description: Creates a new refund that must be associated with an existing charge. Refunds are applied to the `source` used for the original payment. Partial refunds are allowed up to the original charge amount. operationId: CreateRefund tags: - REFUNDS requestBody: required: true content: application/json: schema: $ref: '#/components/schemas/Refund' examples: CreateRefundRequestExample: summary: Default CreateRefund request x-microcks-default: true value: id: example-value charge: example-value amount: 1 status: example-value responses: '200': description: Successful response. content: application/json: schema: $ref: '#/components/schemas/Refund' examples: CreateRefund200Example: summary: Default CreateRefund 200 response x-microcks-default: true value: id: example-value charge: example-value amount: 1 status: example-value '401': description: Authentication required or invalid token. '429': description: Too many requests; rate limit exceeded. x-microcks-operation: delay: 0 dispatcher: FALLBACK get: summary: Clover Get Refunds List description: Returns a list of all existing refunds. The newest refund is first in the list. The ten most recent refunds appear by default on the `charge` object. operationId: ListRefunds tags: - REFUNDS parameters: - name: charge in: query required: false description: Retrieve refunds applied to a specific charge. schema: type: string example: example-charge - name: created in: query required: false description: List filter based on the object's `created` field. The value can be a string with a Unix timestamp (in milliseconds) or a dictionary of multiple options describing a time range. schema: type: string example: example-created - name: ending_before in: query required: false description: Cursor used in pagination. The ending_before object ID sets your place in the list. For example, if you receive 100 objects in a list starting with obj_bar, add ending_before=obj_bar in your subsequent request to retrieve the previous page of the list. schema: type: string example: example-ending_before - name: limit in: query required: false description: The number of objects returned by the request, ranging between `1` and `100`. The default value is `10`. schema: type: integer example: 1 - name: starting_after in: query required: false description: Cursor used in pagination. The starting_after object ID sets your place in the list. For example, if you receive 100 objects in a list starting with obj_foo, add starting_after=obj_foo in your subsequent request to retrieve the next page of the list. schema: type: string example: example-starting_after responses: '200': description: Successful response. content: application/json: schema: type: object properties: elements: type: array items: $ref: '#/components/schemas/Refund' examples: ListRefunds200Example: summary: Default ListRefunds 200 response x-microcks-default: true value: elements: - {} '401': description: Authentication required or invalid token. '429': description: Too many requests; rate limit exceeded. x-microcks-operation: delay: 0 dispatcher: FALLBACK /v1/refunds/{refundId}: get: summary: Clover Get a Refund description: Returns details of a specific refund. operationId: GetRefund tags: - REFUNDS parameters: - name: refundId in: path required: true description: Universal unique identifier (UUID) of the refund to retrieve. schema: type: string example: 9ABCDEF1234567 responses: '200': description: Successful response. content: application/json: schema: $ref: '#/components/schemas/Refund' examples: GetRefund200Example: summary: Default GetRefund 200 response x-microcks-default: true value: id: example-value charge: example-value amount: 1 status: example-value '401': description: Authentication required or invalid token. '429': description: Too many requests; rate limit exceeded. x-microcks-operation: delay: 0 dispatcher: FALLBACK components: schemas: Refund: type: object properties: id: type: string example: 9ABCDEF1234567 charge: type: string example: example-charge amount: type: integer example: 1099 status: type: string example: open x-schema-source: documentation securitySchemes: OAuth2: type: oauth2 flows: authorizationCode: authorizationUrl: https://www.clover.com/oauth/authorize tokenUrl: https://api.clover.com/oauth/token scopes: {} description: OAuth 2.0 token or Ecommerce (PAKMS) API key.