Hoppa till innehållet

Returer

Customer-initiated returns: check what an order is eligible to return, register the return, print the label and follow it. Registering moves no stock — receiving at the warehouse does.

6 anrop GET POST Bas-URL https://api.erp.fluit.cloud/ecom

Autentisering, felkoder, rate limits, idempotens och paginering gäller alla anrop och står samlade under Kom igång.

GET /portal/orders/{orderId}/return-eligibility

Check return eligibility

Checks whether an order is eligible for return and returns returnable line details.

Sökvägsparametrar

Fält Typ
orderId Krävs string(uuid)

Svar

200 PortalReturnEligibilityResponse
Fält Typ
allowPartialReturn boolean
currencyCode string · nullable
eligible boolean
ineligibleReason string · nullable
lines PortalReturnEligibleLine[] · nullable
orderId string(uuid)
orderNumber string · nullable
requireReason boolean
returnInstructions string · nullable
429 Rate limit exceeded. Wait the number of seconds given in Retry-After. The body is problem-shaped application/json, not application/problem+json. This API sends no X-RateLimit-* headers — the quota is discovered here.
  • Retry-After — Seconds to wait before retrying.

Standardfel: 401 404 Felhantering

Exempel

curl
curl "https://api.erp.fluit.cloud/ecom/portal/orders/{orderId}/return-eligibility" \
  -H "Authorization: Bearer $SESSION_TOKEN" \
  -H "X-Tenant-Id: $FLUIT_TENANT_ID" \
  -H "X-Channel: web"
Svar 200
{
  "allowPartialReturn": true,
  "currencyCode": "SEK",
  "eligible": true,
  "ineligibleReason": "string",
  "lines": [
    {
      "alreadyReturnedQuantity": 42,
      "deliveredQuantity": 42,
      "itemName": "Widget A",
      "itemNumber": "WIDGET-A",
      "maxReturnableQuantity": 42,
      "orderLineId": "0f8b2c1e-4d3a-4b7e-9f10-2a6c5d8e1b44",
      "taxPercent": "12.50",
      "unitPrice": "299.00"
    }
  ],
  "orderId": "0f8b2c1e-4d3a-4b7e-9f10-2a6c5d8e1b44",
  "orderNumber": "SO-2026-1041",
  "requireReason": true,
  "returnInstructions": "string"
}

Bas-URL https://api.erp.fluit.cloud/ecom. Svarsexemplet är genererat ur schemat: formen stämmer, värdena är påhittade.

GET /portal/returns

List returns

Returns a paginated list of returns for the authenticated customer.

Frågeparametrar

Fält Typ
page integer
pageSize integer
status string

Svar

200 PortalReturnListResponse
Fält Typ
items PortalReturnSummary[] · nullable
page integer
pageSize integer
totalCount integer
429 Rate limit exceeded. Wait the number of seconds given in Retry-After. The body is problem-shaped application/json, not application/problem+json. This API sends no X-RateLimit-* headers — the quota is discovered here.
  • Retry-After — Seconds to wait before retrying.

Standardfel: 401 403 Felhantering

Exempel

curl
curl "https://api.erp.fluit.cloud/ecom/portal/returns" \
  -H "Authorization: Bearer $SESSION_TOKEN" \
  -H "X-Tenant-Id: $FLUIT_TENANT_ID" \
  -H "X-Channel: web"
Svar 200
{
  "items": [
    {
      "currencyCode": "SEK",
      "id": "0f8b2c1e-4d3a-4b7e-9f10-2a6c5d8e1b44",
      "lineCount": 42,
      "orderNumber": "SO-2026-1041",
      "returnDate": "string",
      "returnNumber": "RMA-2026-0037",
      "rmaNumber": "ABC-001",
      "status": "string",
      "totalAmount": "299.00"
    }
  ],
  "page": 1,
  "pageSize": 50,
  "totalCount": 137
}

Bas-URL https://api.erp.fluit.cloud/ecom. Svarsexemplet är genererat ur schemat: formen stämmer, värdena är påhittade.

POST /portal/returns

Submit return

Creates a new return request from the customer portal.

Body krävs

Fält Typ
lines SubmitPortalReturnRequestLine[] · nullable
notes string · nullable
orderId string(uuid)
reason integer

Svar

201 SubmitPortalReturnResponse
Fält Typ
returnId string(uuid)
returnNumber string · nullable
rmaNumber string · nullable
status string · nullable
429 Rate limit exceeded. Wait the number of seconds given in Retry-After. The body is problem-shaped application/json, not application/problem+json. This API sends no X-RateLimit-* headers — the quota is discovered here.
  • Retry-After — Seconds to wait before retrying.

Standardfel: 400 401 403 Felhantering

Exempel

curl
curl -X POST "https://api.erp.fluit.cloud/ecom/portal/returns" \
  -H "Authorization: Bearer $SESSION_TOKEN" \
  -H "X-Tenant-Id: $FLUIT_TENANT_ID" \
  -H "X-Channel: web" \
  -H "Content-Type: application/json" \
  -d @body.json
Svar 201
{
  "returnId": "0f8b2c1e-4d3a-4b7e-9f10-2a6c5d8e1b44",
  "returnNumber": "RMA-2026-0037",
  "rmaNumber": "ABC-001",
  "status": "string"
}

Bas-URL https://api.erp.fluit.cloud/ecom. Svarsexemplet är genererat ur schemat: formen stämmer, värdena är påhittade.

GET /portal/returns/{id}

Get return detail

Returns the full detail of a specific return for the authenticated customer.

Sökvägsparametrar

Fält Typ
id Krävs string(uuid)

Svar

200 PortalReturnDetailResponse
Fält Typ
canCancel boolean
currencyCode string · nullable
externalNotes string · nullable
id string(uuid)
lines PortalReturnLineDetail[] · nullable
orderId string(uuid)
orderNumber string · nullable
reason string · nullable
receivedDate string · nullable
returnDate string · nullable
returnLabelUrl string · nullable
returnNumber string · nullable
returnTrackingUrl string · nullable
rmaNumber string · nullable
status string · nullable
totalAmount decimal
totalVat decimal
429 Rate limit exceeded. Wait the number of seconds given in Retry-After. The body is problem-shaped application/json, not application/problem+json. This API sends no X-RateLimit-* headers — the quota is discovered here.
  • Retry-After — Seconds to wait before retrying.

Standardfel: 401 404 Felhantering

Exempel

curl
curl "https://api.erp.fluit.cloud/ecom/portal/returns/{id}" \
  -H "Authorization: Bearer $SESSION_TOKEN" \
  -H "X-Tenant-Id: $FLUIT_TENANT_ID" \
  -H "X-Channel: web"
Svar 200
{
  "canCancel": true,
  "currencyCode": "SEK",
  "externalNotes": "string",
  "id": "0f8b2c1e-4d3a-4b7e-9f10-2a6c5d8e1b44",
  "lines": [
    {
      "id": "0f8b2c1e-4d3a-4b7e-9f10-2a6c5d8e1b44",
      "itemName": "Widget A",
      "itemNumber": "WIDGET-A",
      "lineTotal": "299.00",
      "quantity": 42,
      "reason": "string",
      "unitPrice": "299.00"
    }
  ],
  "orderId": "0f8b2c1e-4d3a-4b7e-9f10-2a6c5d8e1b44",
  "orderNumber": "SO-2026-1041",
  "reason": "string",
  "receivedDate": "string",
  "returnDate": "string",
  "returnLabelUrl": "https://cdn.fluit.cloud/assets/widget-a-front.jpg",
  "returnNumber": "RMA-2026-0037",
  "returnTrackingUrl": "https://cdn.fluit.cloud/assets/widget-a-front.jpg",
  "rmaNumber": "ABC-001",
  "status": "string",
  "totalAmount": "299.00",
  "totalVat": "299.00"
}

Bas-URL https://api.erp.fluit.cloud/ecom. Svarsexemplet är genererat ur schemat: formen stämmer, värdena är påhittade.

POST /portal/returns/{id}/cancel

Cancel return

Cancels a return request that has not yet been received.

Sökvägsparametrar

Fält Typ
id Krävs string(uuid)

Svar

204 Tom body.
429 Rate limit exceeded. Wait the number of seconds given in Retry-After. The body is problem-shaped application/json, not application/problem+json. This API sends no X-RateLimit-* headers — the quota is discovered here.
  • Retry-After — Seconds to wait before retrying.

Standardfel: 400 401 404 Felhantering

Exempel

curl
curl -X POST "https://api.erp.fluit.cloud/ecom/portal/returns/{id}/cancel" \
  -H "Authorization: Bearer $SESSION_TOKEN" \
  -H "X-Tenant-Id: $FLUIT_TENANT_ID" \
  -H "X-Channel: web"

Bas-URL https://api.erp.fluit.cloud/ecom.

GET /portal/returns/{id}/label

Get return label

Downloads or redirects to the return shipping label for a return.

Sökvägsparametrar

Fält Typ
id Krävs string(uuid)

Svar

302 Tom body.
429 Rate limit exceeded. Wait the number of seconds given in Retry-After. The body is problem-shaped application/json, not application/problem+json. This API sends no X-RateLimit-* headers — the quota is discovered here.
  • Retry-After — Seconds to wait before retrying.

Standardfel: 401 404 Felhantering

Exempel

curl
curl "https://api.erp.fluit.cloud/ecom/portal/returns/{id}/label" \
  -H "Authorization: Bearer $SESSION_TOKEN" \
  -H "X-Tenant-Id: $FLUIT_TENANT_ID" \
  -H "X-Channel: web"

Bas-URL https://api.erp.fluit.cloud/ecom.

Scheman

Objekten som gruppens anrop refererar till. Fälttabellerna ovan går ett steg djupt och länkar hit i stället för att upprepa samma schema på varje endpoint.

PortalReturnEligibleLine

PortalReturnEligibleLine
Fält Typ
alreadyReturnedQuantity integer
deliveredQuantity integer
itemName string · nullable
itemNumber string · nullable
maxReturnableQuantity integer
orderLineId string(uuid)
taxPercent decimal
unitPrice decimal

PortalReturnLineDetail

PortalReturnLineDetail
Fält Typ
id string(uuid)
itemName string · nullable
itemNumber string · nullable
lineTotal decimal
quantity integer
reason string · nullable
unitPrice decimal

PortalReturnSummary

PortalReturnSummary
Fält Typ
currencyCode string · nullable
id string(uuid)
lineCount integer
orderNumber string · nullable
returnDate string · nullable
returnNumber string · nullable
rmaNumber string · nullable
status string · nullable
totalAmount decimal

SubmitPortalReturnRequestLine

SubmitPortalReturnRequestLine
Fält Typ
notes string · nullable
orderLineId string(uuid)
quantity integer