Orchestra Internal API Mapping

Post Fulfillment

Returns, exchanges, and cancellation management with 3-layer architecture: API Gateway -> Order Management Service -> Core Microservices

View Postman Documentation

3-Layer Architecture

API Gateway Public (Internet)
Order Management Service Internal Orchestration
Core Microservices Internal Services

1. Eligibility Check

APIs for checking return, exchange, and cancellation eligibility

Check Order Eligibility

Order

Check if an order is eligible for return, exchange, or cancellation (1 step)

GET
API Gateway Layer 1 - Public
GET /orders/:order_id/eligibility
Order Management Service Layer 2 - Orchestration
GET /orders/:order_id/eligibility

Orchestrates 1 service call

Layer 3 - Service Calls (1 Step)
1 Post Order Fulfillment Service Core Microservices
GET /api/orders/:order_id/eligibility

Get Order Eligibility

Check Item Eligibility

Item

Check if a specific item is eligible for return or exchange (1 step)

GET
API Gateway Layer 1 - Public
GET /orders/:order_id/items/:item_id/eligibility
Order Management Service Layer 2 - Orchestration
GET /orders/:order_id/items/:item_id/eligibility

Orchestrates 1 service call

Layer 3 - Service Calls (1 Step)
1 Post Order Fulfillment Service Core Microservices
GET /api/orders/:order_id/items/:item_id/eligibility

Get Item Eligibility

2. Create Requests

APIs for creating return, exchange, and cancellation requests

Create Return Request

Return

Create a return request for order items with pickup scheduling (1 step)

POST
API Gateway Layer 1 - Public
POST /order-actions
Order Management Service Layer 2 - Orchestration
POST /order-actions

Orchestrates 1 service call

Layer 3 - Service Calls (1 Step)
1 Post Order Fulfillment Service Core Microservices
POST /api/order-actions

Create Return Request

Request Payload
{
  "action_type": "RETURN",
  "order_id": "ORD123456789",
  "items": [
    {
      "item_id": "ITEM987654321",
      "quantity": 1,
      "reason": "SIZE_ISSUE",
      "reason_description": "Product is too small",
      "images": []
    }
  ],
  "pickup_address_id": "ADDR456789",
  "refund_method": "ORIGINAL_PAYMENT",
  "additional_comments": "Please process refund quickly"
}

Create Exchange Request

Exchange

Create an exchange request with new variant selection (1 step)

POST
API Gateway Layer 1 - Public
POST /order-actions
Order Management Service Layer 2 - Orchestration
POST /order-actions

Orchestrates 1 service call

Layer 3 - Service Calls (1 Step)
1 Post Order Fulfillment Service Core Microservices
POST /api/order-actions

Create Exchange Request

Request Payload
{
  "action_type": "EXCHANGE",
  "order_id": "ORD123456789",
  "items": [
    {
      "item_id": "ITEM987654321",
      "quantity": 1,
      "reason": "SIZE_ISSUE",
      "reason_description": "Need larger size",
      "exchange_with": {
        "product_id": "PROD12345",
        "variant_id": "VAR67890",
        "sku": "TSH-BLU-L",
        "size": "L",
        "color": "Blue"
      }
    }
  ],
  "pickup_address_id": "ADDR456789",
  "delivery_address_id": "ADDR456789",
  "additional_comments": "Please send size L"
}

Create Cancellation Request

Cancel

Create a cancellation request for order items or entire order (1 step)

POST
API Gateway Layer 1 - Public
POST /order-actions
Order Management Service Layer 2 - Orchestration
POST /order-actions

Orchestrates 1 service call

Layer 3 - Service Calls (1 Step)
1 Post Order Fulfillment Service Core Microservices
POST /api/order-actions

Create Cancellation Request

Request Payload
{
  "action_type": "CANCEL",
  "order_id": "ORD123456789",
  "items": [
    {
      "item_id": "ITEM987654321",
      "quantity": 1,
      "reason": "CHANGED_MIND",
      "reason_description": "No longer need this product"
    }
  ],
  "cancel_entire_order": false,
  "refund_method": "ORIGINAL_PAYMENT",
  "additional_comments": "Please cancel as soon as possible"
}

3. Check Status

APIs for checking request status and history

Get All Requests for Order

Status

Get all return, exchange, and cancellation requests for an order (1 step)

GET
API Gateway Layer 1 - Public
GET /orders/:order_id/actions
Order Management Service Layer 2 - Orchestration
GET /orders/:order_id/actions

Orchestrates 1 service call

Layer 3 - Service Calls (1 Step)
1 Post Order Fulfillment Service Core Microservices
GET /api/orders/:order_id/actions

Get Order Actions

Get Request Details

Details

Get detailed information about a specific return, exchange, or cancellation request (1 step)

GET
API Gateway Layer 1 - Public
GET /order-actions/:action_id
Order Management Service Layer 2 - Orchestration
GET /order-actions/:action_id

Orchestrates 1 service call

Layer 3 - Service Calls (1 Step)
1 Post Order Fulfillment Service Core Microservices
GET /api/order-actions/:action_id

Get Request Details

Services Used in Post Fulfillment Module

🎯

Order Management Service

Orchestration layer for post-fulfillment operations

📦

Post Order Fulfillment Service

Returns, exchanges, cancellations, eligibility checks

Post Fulfillment Module - Orchestra Internal API Mapping | 7 APIs | 7 Total Steps