Tamara · Arazzo Workflow

Tamara Authorise, Capture and Refund Order

Version 1.0.0

Run the full post-checkout money lifecycle — authorise, capture, then refund.

1 workflow 2 source APIs 1 provider
View Spec View on GitHub BNPLBuy Now Pay LaterFintechPaymentsCheckoutShariah CompliantMENASaudi ArabiaUAEInstallmentsPay LaterMerchant ServicesOrderRefundsCaptureWebhookDisputesChannel PartnersE-CommercePoint-of-SaleArazzoWorkflows

Provider

tamara

Workflows

authorise-capture-refund-order
Authorise, capture, and then refund a Tamara order end to end.
Authorises an approved order, captures the supplied amount, and finally refunds part or all of it using the simplified-refund surface.
3 steps inputs: captureAmount, merchantRefundId, merchantToken, orderId, refundAmount, refundComment, shippingInfo outputs: authorisedStatus, captureId, orderId, refundId, refundStatus
1
authorise
authoriseOrder
Transition the approved order to authorised so funds can be captured.
2
capture
captureOrder
Perform a full or partial capture against the authorised order, confirming shipment or fulfilment of items to the customer.
3
refund
simplifiedRefund
Process a partial or full refund against the captured order using the modern simplified-refund surface (no capture ids required).

Source API Descriptions

Arazzo Workflow Specification

Raw ↑
arazzo: 1.0.1
info:
  title: Tamara Authorise, Capture and Refund Order
  summary: Run the full post-checkout money lifecycle — authorise, capture, then refund.
  description: >-
    Exercises the complete merchant-side money lifecycle for a single Tamara
    order in one pass: it authorises an approved order, captures funds against
    it, and then issues a simplified refund. This is useful for end-to-end
    reconciliation tests and for orders that are returned shortly after capture.
    Every step spells out its request inline so the flow can be read and executed
    without opening the underlying OpenAPI descriptions.
  version: 1.0.0
sourceDescriptions:
- name: ordersApi
  url: ../openapi/tamara-orders-api-openapi.yml
  type: openapi
- name: paymentsApi
  url: ../openapi/tamara-payments-api-openapi.yml
  type: openapi
workflows:
- workflowId: authorise-capture-refund-order
  summary: Authorise, capture, and then refund a Tamara order end to end.
  description: >-
    Authorises an approved order, captures the supplied amount, and finally
    refunds part or all of it using the simplified-refund surface.
  inputs:
    type: object
    required:
    - merchantToken
    - orderId
    - captureAmount
    - shippingInfo
    - refundAmount
    - refundComment
    properties:
      merchantToken:
        type: string
        description: Tamara-issued merchant API bearer token.
      orderId:
        type: string
        description: The Tamara order_id (uuid) to process.
      captureAmount:
        type: object
        description: Money object (amount + currency) to capture.
      shippingInfo:
        type: object
        description: Shipping info (shipped_at, shipping_company, tracking_number, tracking_url).
      refundAmount:
        type: object
        description: Money object (amount + currency) to refund.
      refundComment:
        type: string
        description: Reason/comment recorded against the refund.
      merchantRefundId:
        type: string
        description: Optional merchant-side refund id for idempotency/reconciliation.
  steps:
  - stepId: authorise
    description: >-
      Transition the approved order to authorised so funds can be captured.
    operationId: authoriseOrder
    parameters:
    - name: order_id
      in: path
      value: $inputs.orderId
    - name: Authorization
      in: header
      value: "Bearer $inputs.merchantToken"
    successCriteria:
    - condition: $statusCode == 200
    outputs:
      authorisedStatus: $response.body#/status
      authorizedAmount: $response.body#/authorized_amount
  - stepId: capture
    description: >-
      Perform a full or partial capture against the authorised order, confirming
      shipment or fulfilment of items to the customer.
    operationId: captureOrder
    parameters:
    - name: Authorization
      in: header
      value: "Bearer $inputs.merchantToken"
    requestBody:
      contentType: application/json
      payload:
        order_id: $inputs.orderId
        total_amount: $inputs.captureAmount
        shipping_info: $inputs.shippingInfo
    successCriteria:
    - condition: $statusCode == 200
    outputs:
      captureId: $response.body#/capture_id
      captureStatus: $response.body#/status
      capturedAmount: $response.body#/captured_amount
  - stepId: refund
    description: >-
      Process a partial or full refund against the captured order using the modern
      simplified-refund surface (no capture ids required).
    operationId: simplifiedRefund
    parameters:
    - name: order_id
      in: path
      value: $inputs.orderId
    - name: Authorization
      in: header
      value: "Bearer $inputs.merchantToken"
    requestBody:
      contentType: application/json
      payload:
        total_amount: $inputs.refundAmount
        comment: $inputs.refundComment
        merchant_refund_id: $inputs.merchantRefundId
    successCriteria:
    - condition: $statusCode == 200
    outputs:
      refundId: $response.body#/refund_id
      refundStatus: $response.body#/status
      refundedAmount: $response.body#/refunded_amount
  outputs:
    orderId: $inputs.orderId
    authorisedStatus: $steps.authorise.outputs.authorisedStatus
    captureId: $steps.capture.outputs.captureId
    refundId: $steps.refund.outputs.refundId
    refundStatus: $steps.refund.outputs.refundStatus

Work with this as data

Every workflow here is available over the APIs.io API and to AI agents over MCP.

MCP server

One button, every client — Claude, Cursor, VS Code and the rest.

https://apis.io/mcp

Tools for arazzo workflows

4 MCP tools reach this
  • find_arazzoBrowse and filter every workflow in the catalog.
  • apis_io_searchSTART HERE — APIs, providers and tags for one query, each with its total.
  • resolveTurn a domain, URL or GitHub org into the provider it belongs to.
  • find_cohortsEvery scored population of providers in the catalog.
All 92 tools

Call it yourself

curl for this page
This workflow
curl "https://apis.io/api/v1/arazzo/tamara-authorise-capture-refund-order-workflow"
All arazzo workflows
curl "https://apis.io/api/v1/arazzo?limit=25"

Discovery needs no key. Ratings and market analysis are Pro.

Get an API key

Free tier, no email required.

A second provider on the same verified email joins the account you already have.