API Documentation
Webhooks
15 min
sandbox setup if you require setup on a sandbox environment please reach out to integrations\@refundid com you will need to provide the webhook urls for all the endpoints you plan to implement, e g https //examplemerchant com/order https //examplemerchant com/order https //examplemerchant com/refundid https //examplemerchant com/refundid the authentication method (see below for auth methods) you will be using along with any keys/secrets required for configuration, e g api key header some header api key some key authentication and security refundid implements a layered security model, allowing merchants to choose from a number of different means of verifying authenticity of refundid api requests to suit their specific e commerce platform architecture transport layer validation all requests to the merchant provided apis in production and sandbox environments originate from predetermined ip addresses, published under the following dns names in production environment, all requests will originate from “ rapi refundid com ” in sandbox environment, all requests will originate from “ rapi sandbox refundid com " merchants may choose to restrict access to their apis to these originating ip addresses ssl certificate validation all requests to the merchant provided apis in production and sandbox environments are made over the https protocol using publicly verifiable ssl certificates with the following subject names in production environment, “ cn=rapi refundid com ” in sandbox environment, “ cn=rapi sandbox refundid com ” merchants may choose to verify these certificates in their https server bearer token merchants may choose to configure their apis with bearer token authentication, using a merchant provided bearer token if a bearer token is provided to the refundid, all requests to the merchant provided api will be submitted with the following header authorization bearer {{bearer token}} the {{bearer token}} must be no longer than 256 characters and confirm to rfc 6750 requirements, i e , consist entirely of ascii letters, digits and/or characters ' ', ' ', ' ', ' ', '+' and '/', followed by zero or more '=' characters api key in addition to bearer authorisation, merchants may choose to request that all requests to their apis are issued with a merchant provided api key when enabled, all requests to the merchant provided api will be submitted with the following header {{merchant api key header}} {{merchant api key}} under this scheme, both the {{merchant api key header}} and {{merchant api key}} must be provided by the merchant the api key may consist of up to 256 arbitrary printable (i e , non whitespace) ascii characters request signature last but not least, refundid can be configured to protect all requests to the merchant provided apis with the following hmac based signature header x refundid signature {{signature algorithm}} {{signature value}} where {{signature algorithm}} is one of hmac sha1, hmac sha224, hmac sha256, hmac sha384 or hmac sha512 {{signature value}} is a hmac signature computed using the selected hmac algorithm and the merchant provided secret key over a utf 8 string of the form {{request date}} \n {{request body}} or if body is not defined (for example on the get /order request) {{request date}} where {{request date}} is the content of the " date" mime header in the request and {{request body}} is the raw, unprocessed http request body, excluding any mime headers webhooks order webhook return schema models docid 82ltwhnmvb0tu1yenec80 used to fetch order information using either order number and email or merchant order ref when invoking the “ get /order ” api, refundid may choose to identify the order either by a merchant generated unique identifier ("merchant order ref"), or by a combination of a customer "email" and a merchant generated "order number" provided to the customer both variants must be supported when using the customer " email " and " order number ", the api is expected to match the " order number " both with and without any optional or decorative prefixes such as “#”, in accordance with the merchant specific convention consistent with other communication channels between the merchant and their customers for example, if merchant's invoices decorate order numbers with the “#order " prefix and a version suffix ( xxx), then, for best customer experience, an order number of "#order 123456 xxx" should be matched by all of “order number=#order 123456 xxx", "order number=order 123456 xxx", "order number=123456 xxx" and "order number=123456" { "name" "order", "method" "get", "url" "https //{{merchant url}}/order", "description" "\n", "tab" "examples", "examples" { "languages" \[ { "id" "pc7wsmduint7omzloarv ", "language" "curl", "code" "curl location g request get 'https //{{merchant url}}/order?order number=order 123456 xxx\&email=someone\@refundid com' \\\\\n header 'accept application/json' \\\\\n header 'content type application/json'", "customlabel" "" }, { "id" "dd 0m37c1q2kzmdbuq2df", "language" "nodejs", "code" "var request = require('request');\nvar options = {\n 'method' 'get',\n 'url' 'https //{{merchant url}}/order?order number=string\&email=string',\n 'headers' {\n 'accept' 'application/json',\n 'content type' 'application/json'\n }\n};\nrequest(options, function (error, response) {\n if (error) throw new error(error);\n console log(response body);\n});\n", "customlabel" "" }, { "id" "mzh708px8kaedgyvkhanu", "language" "javascript", "code" "var myheaders = new headers();\nmyheaders append(\\"accept\\", \\"application/json\\");\nmyheaders append(\\"content type\\", \\"application/json\\");\n\nvar requestoptions = {\n method 'get',\n headers myheaders,\n redirect 'follow'\n};\n\nfetch(\\"https //{{merchant url}}/order?order number=string\&email=string\\", requestoptions)\n then(response => response text())\n then(result => console log(result))\n catch(error => console log('error', error));", "customlabel" "" }, { "id" "qlhr dw oyy1m9hfuhopg", "language" "python", "code" "import requests\nimport json\n\nurl = \\"https //{{merchant url}}/order?order number=string\&email=string\\"\n\npayload={}\nheaders = {\n 'accept' 'application/json',\n 'content type' 'application/json'\n}\n\nresponse = requests request(\\"get\\", url, headers=headers, data=payload)\n\nprint(response text)\n", "customlabel" "" }, { "id" " lheruytki2uco40to4s4", "language" "ruby", "code" "require \\"uri\\"\nrequire \\"json\\"\nrequire \\"net/http\"\n\nurl = uri(\\"https //{{merchant url}}/order?order number=string\&email=string\\")\n\nhttps = net http new(url host, url port)\nhttps use ssl = true\n\nrequest = net http get new(url)\nrequest\[\\"accept\\"] = \\"application/json\\"\nrequest\[\\"content type\\"] = \\"application/json\\"\n\nresponse = https request(request)\nputs response read body\n", "customlabel" "" } ], "selectedlanguageid" "pc7wsmduint7omzloarv " }, "results" { "languages" \[ { "id" "61wfy aekaaf5oicvzdl3", "language" "200", "customlabel" "", "code" "{\n \\"merchant order ref\\" \\"1\\",\n \\"order number\\" \\"#order 123456 xxx\\",\n \\"email\\" \\"someone\@refundid com\\",\n \\"purchased at\\" \\"2022 08 24t09 33 50\\",\n \\"fulfilled at\\" \\"2022 08 28t09 10 32\\",\n \\"payment method\\" \\"afterpay\\",\n \\"is giftcard used\\" false,\n \\"delivery info\\" {\n \\"address\\" {\n \\"address1\\" \\"89 york street\\",\n \\"address2\\" \\"901\\",\n \\"city\\" \\"sydney\\",\n \\"zip\\" \\"2030\\",\n \\"province\\" \\"new south wales\\",\n \\"country\\" \\"au\\"\n },\n \\"tracking\\" {\n \\"carrier\\" \\"australia post\\",\n \\"tracking number\\" \\"sk40010043214\\",\n \\"status\\" null,\n \\"status date\\" null\n }\n },\n \\"line items\\" \[\n {\n \\"line item ref\\" \\"10000001\\",\n \\"title\\" \\"long line shirt\\",\n \\"variant\\" \\"large\\",\n \\"price\\" {\n \\"amount\\" 33 33,\n \\"currency\\" \\"aud\\"\n },\n \\"quantity\\" 2,\n \\"returnable quantity\\" 2,\n \\"discount\\" {\n \\"amount\\" 0,\n \\"currency\\" \\"aud\\"\n },\n \\"image url\\" \\"https //via placeholder com/150\\",\n \\"weight in kilograms\\" 5 3,\n \\"product ref\\" \\"product 1\\",\n \\"variant ref\\" \\"variant 1\\",\n \\"sku\\" \\"sku 1\\",\n \\"categories\\" \[\n \\"shirt\\",\n \\"summer\\"\n ],\n \\"non returnable reasons\\" \[]\n },\n {\n \\"line item ref\\" \\"10000002\\",\n \\"title\\" \\"tracksuit pants\\",\n \\"variant\\" \\"large black\\",\n \\"price\\" {\n \\"amount\\" 99 99,\n \\"currency\\" \\"aud\\"\n },\n \\"quantity\\" 1,\n \\"returnable quantity\\" 1,\n \\"discount\\" {\n \\"amount\\" 30,\n \\"currency\\" \\"aud\\"\n },\n \\"image url\\" \\"https //via placeholder com/150\\",\n \\"weight in kilograms\\" 5 3,\n \\"product ref\\" \\"product 2\\",\n \\"variant ref\\" \\"variant 2\\",\n \\"sku\\" \\"sku 2\\",\n \\"categories\\" \[\n \\"pants\\",\n \\"summer\\"\n ],\n \\"non returnable reasons\\" \[\n \\"item already refunded\\"\n ]\n }\n ]\n}" } ], "selectedlanguageid" "61wfy aekaaf5oicvzdl3" }, "request" { "pathparameters" \[], "queryparameters" \[ { "name" "order number", "kind" "optional", "type" "string", "description" "merchant generated customer order number", "children" \[] }, { "name" "email", "kind" "optional", "type" "string", "description" "customer email", "children" \[] }, { "name" "merchant order ref", "kind" "optional", "type" "string", "description" "merchant generated unique order identifier", "children" \[] }, { "name" "key", "kind" "optional", "type" "string", "description" "merchant supplied privacy key for this order", "children" \[] } ], "headerparameters" \[], "bodydataparameters" \[], "formdataparameters" \[] }, "currentnewparameter" { "label" "query parameter", "value" "queryparameters" } } return webhook return schema models docid 82ltwhnmvb0tu1yenec80 this api is only called by refundid with merchants who chose to implement the merchant initiated rma flow for these merchants, refundid will call this api immediately after receiving a redirect to https //portal refundid com/order query?merchant rma ref=merchant rma ref https //portal refundid com/order query?merchant rma ref=merchant rma ref merchants who use only refundid initiated rma flow do not need to implement this api the “get /return” api is called by refundid (as a https get request) to obtain information about an rma generated on the merchant's system and managed by the merchant it is first called upon receiving a redirect https //portal refundid com/order query https //portal refundid com/order query mentioning a merchant's rma id in the "mercahnt rma ref" url parameter it may be subsequently called by refundid at any time as required to obtain updates to the rma from the merchant on success, the merchant's e commerce system should respond to the request with a json object of a structure shown in the example below { "name" "return", "method" "get", "url" "https //{{merchant url}}/return", "description" "", "tab" "examples", "examples" { "languages" \[ { "id" "sciwvacvpoav9ot7zflje", "language" "curl", "code" "curl location g request get 'https //{{merchant url}}/return?merchant rma ref=string' \\\\\n header 'accept application/json' \\\\\n header 'content type application/json'", "customlabel" "" }, { "id" "djv4g uqzdnwgbsvfezsm", "language" "nodejs", "code" "var request = require('request');\nvar options = {\n 'method' 'get',\n 'url' 'https //{{merchant url}}/return?merchant rma ref=string',\n 'headers' {\n 'accept' 'application/json',\n 'content type' 'application/json'\n }\n};\nrequest(options, function (error, response) {\n if (error) throw new error(error);\n console log(response body);\n});\n", "customlabel" "" }, { "id" "ixe04gkepzjdfzhz jwx4", "language" "javascript", "code" "var myheaders = new headers();\nmyheaders append(\\"accept\\", \\"application/json\\");\nmyheaders append(\\"content type\\", \\"application/json\\");\n\nvar requestoptions = {\n method 'get',\n headers myheaders,\n redirect 'follow'\n};\n\nfetch(\\"https //{{merchant url}}/return?merchant rma ref=string\\", requestoptions)\n then(response => response text())\n then(result => console log(result))\n catch(error => console log('error', error));", "customlabel" "" }, { "id" "lfc7yfqmfyo89av x06kw", "language" "python", "code" "import requests\nimport json\n\nurl = \\"https //{{merchant url}}/return?merchant rma ref=string\\"\n\npayload={}\nheaders = {\n 'accept' 'application/json',\n 'content type' 'application/json'\n}\n\nresponse = requests request(\\"get\\", url, headers=headers, data=payload)\n\nprint(response text)\n", "customlabel" "" }, { "id" "tfgcnoau6xmlfcckg4xax", "language" "ruby", "code" "require \\"uri\\"\nrequire \\"json\\"\nrequire \\"net/http\"\n\nurl = uri(\\"https //{{merchant url}}/return?merchant rma ref=string\\")\n\nhttps = net http new(url host, url port)\nhttps use ssl = true\n\nrequest = net http get new(url)\nrequest\[\\"accept\\"] = \\"application/json\\"\nrequest\[\\"content type\\"] = \\"application/json\\"\n\nresponse = https request(request)\nputs response read body\n", "customlabel" "" } ], "selectedlanguageid" "sciwvacvpoav9ot7zflje" }, "results" { "languages" \[ { "id" "miaebanlo793t30mvktwb", "language" "200", "customlabel" "", "code" "{\n \\"merchant rma ref\\" \\"rma123\\",\n \\"created at\\" \\"2022 08 30t09 33 50\\",\n \\"line items\\" \[\n {\n \\"merchant order ref\\" \\"1\\",\n \\"line item ref\\" \\"10000001\\",\n \\"quantity\\" 2,\n \\"return reason\\" \\"wrong size\\",\n \\"child return reason\\" \\"too small\\",\n \\"adjustments\\" \[\n {\n \\"adjustment\\" {\n \\"amount\\" 7,\n \\"currency\\" \\"aud\\"\n },\n \\"description\\" \\"loyalty bonus\\"\n },\n {\n \\"adjustment\\" {\n \\"amount\\" 1,\n \\"currency\\" \\"aud\\"\n },\n \\"description\\" \\"missing packaging fee\\"\n }\n ],\n \\"compensation method\\" \\"refund\\"\n },\n {\n \\"merchant order ref\\" \\"1\\",\n \\"line item ref\\" \\"10000002\\",\n \\"quantity\\" 1,\n \\"return reason\\" \\"change of mind\\",\n \\"child return reason\\" null,\n \\"adjustments\\" \[],\n \\"compensation method\\" \\"exchange\\"\n }\n ],\n \\"return shipping\\" {\n \\"from address\\" {\n \\"address1\\" \\"89 york street\\",\n \\"address2\\" \\"901\\",\n \\"city\\" \\"sydney\\",\n \\"zip\\" \\"2030\\",\n \\"province\\" \\"new south wales\\",\n \\"country\\" \\"au\\"\n },\n \\"to address\\" {\n \\"address1\\" \\"89 york street\\",\n \\"address2\\" \\"901\\",\n \\"city\\" \\"sydney\\",\n \\"zip\\" \\"2030\\",\n \\"province\\" \\"new south wales\\",\n \\"country\\" \\"au\\"\n },\n \\"tracking\\" {\n \\"carrier\\" \\"australia post\\",\n \\"tracking number\\" \\"sk40010043214\\",\n \\"status\\" null,\n \\"status date\\" null\n },\n \\"deductions\\" {\n \\"amount\\" 10,\n \\"currency\\" \\"aud\\"\n }\n }\n}" } ], "selectedlanguageid" "miaebanlo793t30mvktwb" }, "request" { "pathparameters" \[], "queryparameters" \[ { "name" "merchant rma ref", "kind" "required", "type" "string", "description" "merchant generated unique rma id", "children" \[] }, { "name" "key", "kind" "optional", "type" "string", "description" "merchant supplied key for this return", "children" \[] } ], "headerparameters" \[], "bodydataparameters" \[], "formdataparameters" \[] }, "currentnewparameter" { "label" "query parameter", "value" "queryparameters" } } refundid webhook this api should be implemented by all merchants who wish to be notified whenever the status of a refundid rma has been updated by the refundid platform merchants are not required to implement this api if they do not wish to be notified of these updates currently, refundid invokes this api as an https post request on the following status changes status description refunding issued after refundid has obtained customer's bank account details and verified their identity, and is ready to deposit the refund into the customer's bank account merchant should respond with a 2xx (recommended 201) message to approve the refund, or a 4xx (recommended 403) message to reject it for example, a 4xx response should be used if a refund or exchange has been simultaneously issued to the customer by some other means, such as over the counter if the merchant approves the " refunding " message, they are responsible for not issuing the refund for this rma by any other means unless and until they receive a " closed " or " failed " status update for the same rma rejecting or cancelling the instant refund refundid issued after refundid has transferred funds to the customer's bank account, typically within minutes of the " refunding " message closed issued after the refundid rma has been finalised (accepted, rejected, or cancelled) by merchant, refundid, or customer failed issued if, after receiving from the merchant a 2xx (approval) response to the " refunding " notification, refundid is unable to proceed with the rma for technical reasons (e g , deposit into the user's account fails ) this notification closes the refund, without issuing a " refundid " and " closed " for the same rma { "name" "refundid", "method" "post", "url" "https //{{merchant url}}/refundid", "description" "", "tab" "examples", "examples" { "languages" \[ { "id" "rixgc9x5rnao4unw5l8zc", "language" "curl", "code" "curl location 'https //{{merchant url}}/refundid' \\\\\n header 'content type application/json' \\\\\n data '{\n \\"refundid id\\" \\"123123123\\",\n \\"merchant rma ref\\" null,\n \\"status\\" \\"refundid\\",\n \\"line items\\" \[\n {\n \\"merchant order ref\\" \\"123 123 123\\",\n \\"line item ref\\" \\"123123123\\",\n \\"quantity\\" 2,\n \\"return reason\\" \\"wrong size\\",\n \\"child return reason\\" \\"too small\\",\n \\"return reason notes\\" \[],\n \\"resolution\\" \\"accept\\",\n \\"restock\\" false,\n \\"notes\\" null,\n },\n {\n \\"merchant order ref\\" \\"123 123 123\\",\n \\"line item ref\\" \\"123123124\\",\n \\"quantity\\" 1,\n \\"return reason\\" \\"wrong size\\",\n \\"child return reason\\" \\"too big\\",\n \\"return reason notes\\" \[\n {\n \\"title\\" \\"extra information\\",\n \\"value\\" \\"the pants were too small around the waste\\"\n }\n ],\n \\"resolution\\" \\"reject used item\\",\n \\"restock\\" false,\n \\"notes\\" null\n }\n ],\n \\"refund breakdown\\" {\n \\"subtotal\\" {\n \\"amount\\" 190 0,\n \\"currency\\" \\"aud\\"\n },\n \\"store return fee\\" {\n \\"amount\\" 5 0,\n \\"currency\\" \\"aud\\"\n },\n \\"customer shipping cost\\" {\n \\"amount\\" 0 0,\n \\"currency\\" \\"aud\\"\n },\n \\"total\\" {\n \\"amount\\" 185 0,\n \\"currency\\" \\"aud\\"\n }\n },\n \\"shipping label\\" {\n \\"tracking\\" {\n \\"carrier\\" \\"australia post\\",\n \\"tracking number\\" \\"4sk5004414651\\",\n \\"status\\" \\"transit\\",\n \\"status date\\" \\"2022 02 16t00 00 00\\"\n },\n \\"purchase price\\" {\n \\"amount\\" 10 0,\n \\"currency\\" \\"aud\\"\n },\n \\"label url\\" null\n },\n \\"reconciliation breakdown\\" null\n}'", "customlabel" "" } ], "selectedlanguageid" "rixgc9x5rnao4unw5l8zc" }, "results" { "languages" \[ { "id" "bnpr1y94outkeg1jmoegm", "language" "200", "customlabel" "", "code" "{\n \\"message\\" \\"success\\"\n}" } ], "selectedlanguageid" "bnpr1y94outkeg1jmoegm" }, "request" { "pathparameters" \[], "queryparameters" \[], "headerparameters" \[], "bodydataparameters" \[ { "name" "refundid id", "kind" "required", "type" "string", "description" "", "children" \[] }, { "name" "merchant rma ref", "kind" "optional", "type" "string", "description" "", "children" \[] }, { "name" "status", "kind" "required", "type" "string", "description" "rapirefundidorderstatus", "children" \[] }, { "name" "line items", "kind" "required", "type" "array", "description" "list of rapirefundidorderlineitem", "children" \[] }, { "name" "refund breakdown", "kind" "required", "type" "object", "description" "rapirefundidbreakdown", "children" \[] }, { "name" "shipping label", "kind" "optional", "type" "object", "description" "rapishippinglabel", "children" \[] }, { "name" "reconciliation breakdown", "kind" "optional", "type" "object", "description" "rapireconciliationbreakdown", "children" \[] } ], "formdataparameters" \[] }, "currentnewparameter" { "label" "body parameter", "value" "bodydataparameters" } } standard returns webhook this api should be implemented by all merchants who wish to be notified whenever the status of a standard returns rma has been updated by the refundid platform merchants are not required to implement this api if they do not wish to be notified of these updates please note, that this webhook will not provide updates on instant refunds as well you'll need to listen to the /refundid webhook above as well currently, refundid invokes this api as an https post request on the following status changes status description lodging issued when refundid is trying to lodge the return merchant should respond with a 2xx (recommended 201) message to approve the return lodgement, or a 4xx (recommended 403) message to reject it for example, a 4xx response should be used if a refund or exchange has been simultaneously issued to the customer by some other means, such as over the counter lodged issued after refundid has created the rma and officially lodged the selected items, typically within minutes of the " lodging " message closing issued after the refundid is trying to close the rma merchant should respond with a 2xx (recommended 201) message to approve the closing decision, or a 4xx (recommended 403) message to reject it closed issued after the refundid rma has been finalised (accepted, rejected, or cancelled) by merchant, refundid, or customer { "name" "standard return", "method" "post", "url" "https //{{merchant url}}/standard return", "description" "", "tab" "examples", "examples" { "languages" \[ { "id" "rixgc9x5rnao4unw5l8zc", "language" "curl", "code" "curl location 'https //{{merchant url}}/standard return' \\\\\n header 'content type application/json' \\\\\n data '{\n \\"standard return id\\" \\"338\\",\n \\"return resolution\\" \\"standard refund\\",\n \\"status\\" \\"lodged\\",\n \\"requested refund breakdown\\" {\n \\"subtotal\\" {\n \\"amount\\" 149,\n \\"currency\\" \\"aud\\"\n },\n \\"store return fee\\" {\n \\"amount\\" 0,\n \\"currency\\" \\"aud\\"\n },\n \\"customer shipping cost\\" {\n \\"amount\\" 12,\n \\"currency\\" \\"aud\\"\n },\n \\"total\\" {\n \\"amount\\" 137,\n \\"currency\\" \\"aud\\"\n }\n },\n \\"line items\\" \[\n {\n \\"merchant order ref\\" \\"5402378174711\\",\n \\"line item ref\\" \\"13534264557815\\",\n \\"quantity\\" 1,\n \\"return reason\\" \\"not as described\\",\n \\"child return reason\\" null,\n \\"return reason notes\\" \[],\n \\"resolution\\" null,\n \\"restock\\" false,\n \\"notes\\" null\n }\n ],\n \\"shipping label\\" {\n \\"tracking\\" {\n \\"carrier\\" \\"australia post\\",\n \\"tracking number\\" \\"111jd730691701000650802\\",\n \\"status\\" null,\n \\"status date\\" null\n },\n \\"purchase price\\" {\n \\"amount\\" 10 11,\n \\"currency\\" \\"aud\\"\n },\n \\"label url\\" \\"https //easypost files s3 us west 2 amazonaws com/files/postage label/20231110/e84d38d90ed3c342bcaaa7233a5c4e8165 png\\"\n },\n \\"close breakdown\\" null\n}'", "customlabel" "" } ], "selectedlanguageid" "rixgc9x5rnao4unw5l8zc" }, "results" { "languages" \[ { "id" "bnpr1y94outkeg1jmoegm", "language" "200", "customlabel" "", "code" "{\n \\"message\\" \\"success\\"\n}" } ], "selectedlanguageid" "bnpr1y94outkeg1jmoegm" }, "request" { "pathparameters" \[], "queryparameters" \[], "headerparameters" \[], "bodydataparameters" \[ { "name" "standard return id", "kind" "required", "type" "string", "description" "", "children" \[] }, { "name" "return resolution", "kind" "required", "type" "string", "description" "the internal name of the standard resolution", "" "the internal name of the standard resolution" }, { "name" "status", "kind" "required", "type" "string", "description" "rapistandardreturnstatus one of \\"lodging\\", \\"lodged\\", \\"closing\\", \\"closed\\"", "" "rapistandardreturnstatus one of \\"lodging\\", \\"lodged\\", \\"closing\\", \\"closed\\"" }, { "name" "requested refund breakdown", "kind" "required", "type" "object", "description" "rapirefundidbreakdown", "" "rapirefundidbreakdown" }, { "name" "line items", "kind" "required", "type" "array", "description" "list of rapirefundidorderlineitem", "children" \[] }, { "name" "rma ref", "kind" "required", "type" "string", "description" "", "" "" }, { "name" "order number", "kind" "required", "type" "string", "description" "the order number of the returned order", "" "the order number of the returned order" }, { "name" "estimated order to store currency exchange rate", "kind" "optional", "type" "object", "description" "rapicurrencyexchangerate", "" "rapicurrencyexchangerate", "children" \[ { "name" "from currency", "kind" "required", "type" "string", "description" "" }, { "name" "to currency", "kind" "required", "type" "string", "description" "" }, { "name" "exchange rate", "kind" "required", "type" "number", "description" "" } ], "schema" \[ { "name" "from currency", "kind" "required", "type" "string", "description" "" }, { "name" "to currency", "kind" "required", "type" "string", "description" "" }, { "name" "exchange rate", "kind" "required", "type" "number", "description" "" } ] }, { "name" "shipping label", "kind" "optional", "type" "object", "description" "rapishippinglabel", "children" \[ { "name" "tracking", "kind" "required", "type" "object", "description" "rapitracking", "children" \[] }, { "name" "purchase price", "kind" "optional", "type" "object", "description" "rapiamount", "children" \[ { "name" "amount", "kind" "required", "type" "number", "description" "" }, { "name" "currency", "kind" "required", "type" "string", "description" "" } ] }, { "name" "customer price", "kind" "optional", "type" "object", "description" "rapiamount", "children" \[ { "name" "amount", "kind" "required", "type" "number", "description" "" }, { "name" "currency", "kind" "required", "type" "string", "description" "" } ] }, { "name" "label url", "kind" "optional", "type" "string", "description" "" } ], "schema" \[ { "name" "tracking", "kind" "required", "type" "object", "description" "rapitracking", "children" \[] }, { "name" "purchase price", "kind" "optional", "type" "object", "description" "rapiamount", "children" \[ { "name" "amount", "kind" "required", "type" "number", "description" "" }, { "name" "currency", "kind" "required", "type" "string", "description" "" } ] }, { "name" "customer price", "kind" "optional", "type" "object", "description" "rapiamount", "children" \[ { "name" "amount", "kind" "required", "type" "number", "description" "" }, { "name" "currency", "kind" "required", "type" "string", "description" "" } ] }, { "name" "label url", "kind" "optional", "type" "string", "description" "" } ] }, { "name" "close breakdown", "kind" "optional", "type" "object", "description" "rapistandardreturnclosebreakdown", "children" \[] }, { "name" "exchange", "kind" "optional", "type" "object", "description" "rapiexchange the information about the requested exchange order if the return is an exchange ", "" "rapiexchange the information about the requested exchange order if the return is an exchange ", "children" \[ { "name" "expected shipping price", "kind" "required", "type" "object", "description" "rapiamount the expected outbound shipping price for the exchange", "children" \[ { "name" "amount", "kind" "required", "type" "number", "description" "" }, { "name" "currency", "kind" "required", "type" "string", "description" "" } ] }, { "name" "fname", "kind" "required", "type" "string", "description" "the first name of the customer" }, { "name" "lname", "kind" "required", "type" "string", "description" "the last name of the customer" }, { "name" "email", "kind" "required", "type" "string", "description" "the customer's email" }, { "name" "phone", "kind" "required", "type" "string", "description" "the customer's phone number" }, { "name" "shipping address", "kind" "required", "type" "object", "description" "rapiaddress the shipping address for the exchange order", "children" \[ { "name" "address1", "kind" "required", "type" "string", "description" "" }, { "name" "address2", "kind" "optional", "type" "string", "description" "" }, { "name" "city", "kind" "required", "type" "string", "description" "" }, { "name" "zip", "kind" "optional", "type" "string", "description" "" }, { "name" "province", "kind" "optional", "type" "string", "description" "" }, { "name" "country", "kind" "required", "type" "string", "description" "" }, { "name" "country code", "kind" "optional", "type" "string", "description" "" } ] }, { "name" "line items", "kind" "required", "type" "array", "description" "list of rapiexchangeitem" }, { "name" "shipping rate ref", "kind" "optional", "type" "string", "description" "optional expected reference for the outbound shipping rate" }, { "name" "shipping rate title", "kind" "optional", "type" "string", "description" "optional expected title for the outbound shipping rate" }, { "name" "purchase request id", "kind" "required", "type" "integer", "description" "the id of the purchase request in refundid" }, { "name" "status", "kind" "required", "type" "string", "description" "the status of the exchange one of rapiexchangestatus ready, purchasing, purchased, voided" }, { "name" "draft order ref", "kind" "optional", "type" "string", "description" "the reference to the draft order created on the ecommerce platform, if one was created " }, { "name" "order ref", "kind" "optional", "type" "string", "description" "the reference to the order created on the ecommerce platform, if one was created this field can only be defined once the exchange has been 'purchased'" }, { "name" "order name", "kind" "optional", "type" "string", "description" "the name of the order created on the ecommerce platform, if one was created this field can only be defined once the exchange has been 'purchased'" } ], "schema" \[ { "name" "expected shipping price", "kind" "required", "type" "object", "description" "rapiamount the expected outbound shipping price for the exchange", "children" \[ { "name" "amount", "kind" "required", "type" "number", "description" "" }, { "name" "currency", "kind" "required", "type" "string", "description" "" } ] }, { "name" "fname", "kind" "required", "type" "string", "description" "the first name of the customer" }, { "name" "lname", "kind" "required", "type" "string", "description" "the last name of the customer" }, { "name" "email", "kind" "required", "type" "string", "description" "the customer's email" }, { "name" "phone", "kind" "required", "type" "string", "description" "the customer's phone number" }, { "name" "shipping address", "kind" "required", "type" "object", "description" "rapiaddress the shipping address for the exchange order", "children" \[ { "name" "address1", "kind" "required", "type" "string", "description" "" }, { "name" "address2", "kind" "optional", "type" "string", "description" "" }, { "name" "city", "kind" "required", "type" "string", "description" "" }, { "name" "zip", "kind" "optional", "type" "string", "description" "" }, { "name" "province", "kind" "optional", "type" "string", "description" "" }, { "name" "country", "kind" "required", "type" "string", "description" "" }, { "name" "country code", "kind" "optional", "type" "string", "description" "" } ] }, { "name" "line items", "kind" "required", "type" "array", "description" "list of rapiexchangeitem" }, { "name" "shipping rate ref", "kind" "optional", "type" "string", "description" "optional expected reference for the outbound shipping rate" }, { "name" "shipping rate title", "kind" "optional", "type" "string", "description" "optional expected title for the outbound shipping rate" }, { "name" "purchase request id", "kind" "required", "type" "integer", "description" "the id of the purchase request in refundid" }, { "name" "status", "kind" "required", "type" "string", "description" "the status of the exchange one of rapiexchangestatus ready, purchasing, purchased, voided" }, { "name" "draft order ref", "kind" "optional", "type" "string", "description" "the reference to the draft order created on the ecommerce platform, if one was created " }, { "name" "order ref", "kind" "optional", "type" "string", "description" "the reference to the order created on the ecommerce platform, if one was created this field can only be defined once the exchange has been 'purchased'" }, { "name" "order name", "kind" "optional", "type" "string", "description" "the name of the order created on the ecommerce platform, if one was created this field can only be defined once the exchange has been 'purchased'" } ] } ], "formdataparameters" \[] }, "currentnewparameter" { "label" "body parameter", "value" "bodydataparameters" } }
