Create RMA
post
https://api.flxpoint.com/rmaUse this when you want to create rma data through the API.
🔑 X-API-TOKEN⏱ 2 req/sToken: Account · Source · Channel
This page explains the endpoint. To send a live test request, use the interactive tester in Stoplight or your own Postman / HTTP client.
Creates a RMA
Request
Body
application/jsonreturnIdintegerrequiredsourceIdintegerWhen using tokens other than source token, this need to be in the request.
rmaNumberstringrequiredreturnToAddressobjectrequiredRequest to create a new address if it does not already exist. State/State Code and Country/Country Code can be populated based on the data available. (i.e. "FL" could be passed to "stateCode" to derive the "state" value "Florida" - also works in the opposite direction).
namestringIf `name` is provided and `firstName` and `lastName` are not provided, we will split this into a `firstName` and `lastName` fields
firstNamestringlastNamestringaddressLine1stringcitystringpostalstringPostal / Zip Code
addressLine2stringstatestringIf "state code" is provided, this field will automatically be populated for US States.
countrystringIf "country code" is populated, this will automatically be populated for most countries.
stateCodestringIf "state" is populated, this will automatically be populated for US States.
countryCodestringIf "country" is populated, this will automatically be populated for most countries. ISO 3166 format
emailstring (email)phonestringcompanyNamestringitemsarray[CreateRmaItem]returnItemIdintegerrequiredskustringtitlestringcostnumberreturnReasonstringIf not provided, the associated return item's returnReason will be assigned.
conditionstringIf not provided, the associated return item's returnCondition will be assigned.
notestringquantityintegerrequiredcreditedAmountnumbercreditAdjustmentnumberautoApprovebooleanWhen `true`, the full quantity for each RMA item will be approved automatically upon creation.
default
falseExample request
post
/rmacurl -X POST "https://api.flxpoint.com/rma" \
-H "Accept: application/json" \
-H "X-API-TOKEN: YOUR_TOKEN" \
-H "Content-Type: application/json" \
-d '{
"returnId": 0,
"sourceId": 0,
"rmaNumber": "string",
"returnToAddress": {
"name": "Joe Smith",
"firstName": "Joe",
"lastName": "Smith",
"addressLine1": "1000 1st Lane",
"city": "Jacksonville",
"postal": "12345",
"addressLine2": "Suite 123",
"state": "Florida",
"country": "United States",
"stateCode": "FL",
"countryCode": "US",
"email": "person@example.com",
"phone": "1-555-123-4567",
"companyName": "string"
},
"items": [
{
"returnItemId": 0,
"sku": "string",
"title": "string",
"cost": 0,
"returnReason": "string",
"condition": "string",
"note": "string",
"quantity": 0,
"creditedAmount": 0
}
],
"creditAdjustment": 0,
"autoApprove": true
}'Example body · application/json
{
"returnId": 0,
"sourceId": 0,
"rmaNumber": "string",
"returnToAddress": {
"name": "Joe Smith",
"firstName": "Joe",
"lastName": "Smith",
"addressLine1": "1000 1st Lane",
"city": "Jacksonville",
"postal": "12345",
"addressLine2": "Suite 123",
"state": "Florida",
"country": "United States",
"stateCode": "FL",
"countryCode": "US",
"email": "person@example.com",
"phone": "1-555-123-4567",
"companyName": "string"
},
"items": [
{
"returnItemId": 0,
"sku": "string",
"title": "string",
"cost": 0,
"returnReason": "string",
"condition": "string",
"note": "string",
"quantity": 0,
"creditedAmount": 0
}
],
"creditAdjustment": 0,
"autoApprove": true
}Responses
200OKapplication/json
idintegerreturnIdintegersourceIdintegerrmaNumberstringaccountIdintegerreturnToAddressobjectidintegernamestringField created real-time by concatenating "firstName" and "lastName"
addressLine1stringaddressLine2stringcitystringstatestringcountrystringstateCodestringcountryCodestringpostalstringPostal / Zip Code of address
emailstringphonestringFree form string field, format isn't enforced
companyNamestringfirstNamestringlastNamestringredactedbooleanRepresents if the address information was related to an Order with a PII (Personably Identifiable Information) retention policy attached. If the Order exceeds the PII retention period, this address will have information redacted.
hashstringRepresents a unique hash of this address.
itemsarray[RmaItem]idintegerreturnItemIdintegerrmaIdintegerskustringtitlestringcostnumberreturnReasonstringreturnConditionstringnotestringquantityintegerapprovedQuantityintegerdeniedQuantityintegercreditedAmountnumberreceivedQuantityintegervoidedQuantityintegerbundleComponentsarray[OrderItemBundleComponent]idintegerorderItemIdintegercomponentVirtualVariantIdintegercomponentQuantityintegerquantityintegerrequiredskustringcostnumbershippedQuantityintegershippedStatusCompletionStatusallowed
Not StartedPartially CompletedCompletedallocatedQuantityintegerallocatedStatusCompletionStatusallowed
Not StartedPartially CompletedCompletedacknowledgedQuantityintegeracknowledgedStatusCompletionStatusallowed
Not StartedPartially CompletedCompletedtotalRmaItemsintegercreatedAtstring (date-time)updatedAtstring (date-time)rmaStatusRmaStatusallowed
WaitingApprovedVoidedDeniedPartially ApprovedCanceledrmaShipmentsarray[RmaShipment]idintegerrmaIdintegeraccountIdintegershipmentobjectidintegernotestringtrackingUrlstringtrackingNumberstringcarrierstringmethodstringshippedAtstring (date-time)insertedAtstring (date-time)shippingCostnumberorderIdintegerpurchaseOrderIdintegerfulfillmentRequestIdintegerrmaIdintegersourceIdintegeraccountIdintegerpartialbooleansuppressedbooleansyncedToChannelbooleansyncErrorstringcrossDockPurchaseOrderIdintegershipmentItemsarray[ShipmentItem]idintegerskustringquantityintegershipmentIdintegerinventoryVariantIdinteger (int64)partialbooleanorderItemIdintegerpurchaseOrderItemIdintegerthis field will soon be deprecated, please start using `fulfillmentRequestItemId` instead.
there are basically the same thing, just there has been a terminology change.
fulfillmentRequestItemIdintegercommittedStockReleasedQuantityintegerrmaItemIdintegercustomFieldsarray[ShipmentCustomField]customFieldsarray[ShipmentCustomField]idintegernamestringvaluestringupdatedAtstring (date-time)accountingSyncedbooleanshippingAddressobjectidintegernamestringField created real-time by concatenating "firstName" and "lastName"
addressLine1stringaddressLine2stringcitystringstatestringcountrystringstateCodestringcountryCodestringpostalstringPostal / Zip Code of address
emailstringphonestringFree form string field, format isn't enforced
companyNamestringfirstNamestringlastNamestringredactedbooleanRepresents if the address information was related to an Order with a PII (Personably Identifiable Information) retention policy attached. If the Order exceeds the PII retention period, this address will have information redacted.
hashstringRepresents a unique hash of this address.
attachmentsarray[RmaShipmentAttachment]idintegerrmaIdintegerrmaShipmentIdintegerattachmentTypestringattachmentUrlstringcreatedAtstring (date-time)sentAtstring (date-time)rmaShipmentStatusRmaShipmentStatusallowed
Shipment CreatedShipment SentShipment ReceivedShipment Partially ReceivedShipment VoidedcreditSubtotalnumbercreditAdjustmentnumbercreditTotalnumbercreditLastSyncedAtstring (date-time)syncCreditChangesToOrderbooleanshipmentReceivedStatusShipmentReceivedStatusallowed
not_receivedpartially_receivedfully_receivedaccountingSyncedAtstring (date-time)accountingErrorstringExample response
{
"id": 0,
"returnId": 0,
"sourceId": 0,
"rmaNumber": "string",
"accountId": 0,
"returnToAddress": {
"id": 0,
"name": "Joe Smith",
"addressLine1": "120 1st Lane",
"addressLine2": "Suite 123",
"city": "Jacksonville",
"state": "Florida",
"country": "United States",
"stateCode": "FL",
"countryCode": "US",
"postal": "12345",
"email": "person@example.com",
"phone": "1-555-123-4567",
"companyName": "string",
"firstName": "Joe",
"lastName": "Smith",
"redacted": true,
"hash": "string"
},
"items": [
{
"id": 0,
"returnItemId": 0,
"rmaId": 0,
"sku": "string",
"title": "string",
"cost": 0,
"returnReason": "string",
"returnCondition": "string",
"note": "string",
"quantity": 0,
"approvedQuantity": 0,
"deniedQuantity": 0,
"creditedAmount": 0,
"receivedQuantity": 0,
"voidedQuantity": 0,
"bundleComponents": [
{
"id": null,
"orderItemId": null,
"componentVirtualVariantId": null,
"componentQuantity": null,
"quantity": null,
"sku": null,
"cost": null,
"shippedQuantity": null,
"shippedStatus": null,
"allocatedQuantity": null,
"allocatedStatus": null,
"acknowledgedQuantity": null,
"acknowledgedStatus": null
}
]
}
],
"totalRmaItems": 0,
"createdAt": "2026-04-20T00:00:00Z",
"updatedAt": "2026-04-20T00:00:00Z",
"rmaStatus": "Waiting",
"rmaShipments": [
{
"id": 0,
"rmaId": 0,
"accountId": 0,
"shipment": {
"id": 0,
"note": "string",
"trackingUrl": "string",
"trackingNumber": "string",
"carrier": "string",
"method": "string",
"shippedAt": "2026-04-20T00:00:00Z",
"insertedAt": "2026-04-20T00:00:00Z",
"shippingCost": 0,
"orderId": 0,
"purchaseOrderId": 0,
"fulfillmentRequestId": 0,
"rmaId": 0,
"sourceId": 0,
"accountId": 0,
"partial": true,
"suppressed": true,
"syncedToChannel": true,
"syncError": "string",
"crossDockPurchaseOrderId": 0,
"shipmentItems": [
null
],
"customFields": [
null
],
"updatedAt": "2026-04-20T00:00:00Z",
"accountingSynced": true
},
"shippingAddress": {
"id": 0,
"name": "Joe Smith",
"addressLine1": "120 1st Lane",
"addressLine2": "Suite 123",
"city": "Jacksonville",
"state": "Florida",
"country": "United States",
"stateCode": "FL",
"countryCode": "US",
"postal": "12345",
"email": "person@example.com",
"phone": "1-555-123-4567",
"companyName": "string",
"firstName": "Joe",
"lastName": "Smith",
"redacted": true,
"hash": "string"
},
"attachments": [
{
"id": null,
"rmaId": null,
"rmaShipmentId": null,
"attachmentType": null,
"attachmentUrl": null
}
],
"createdAt": "2026-04-20T00:00:00Z",
"sentAt": "2026-04-20T00:00:00Z",
"rmaShipmentStatus": "Shipment Created"
}
],
"creditSubtotal": 0,
"creditAdjustment": 0,
"creditTotal": 0,
"creditLastSyncedAt": "2026-04-20T00:00:00Z",
"syncCreditChangesToOrder": true,
"shipmentReceivedStatus": "not_received",
"accountingSyncedAt": "2026-04-20T00:00:00Z",
"accountingError": "string"
}400Bad Request
No schema documented for this status.
401Unauthorized
No schema documented for this status.
OpenAPI fragment
{
"post": {
"summary": "Create RMA",
"description": "Creates a RMA",
"parameters": [],
"requestBody": {
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/CreateRmaRequest"
}
}
}
},
"responses": {
"200": {
"description": "OK",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/Rma"
}
}
}
},
"400": {
"description": "Bad Request"
},
"401": {
"description": "Unauthorized"
}
}
}
}Ready to run it? Send the curl from your terminal or Postman, or use the interactive tester in Stoplight.Open in Stoplight