Documentation

Updates

Keeping your order information up to date is essential to ensure smooth transactions and an optimal customer experience. Ecart Pay provides the flexibility to modify specific details of an order using its API capabilities.

When to Make Updates?

The Update Order endpoint is primarily used to make changes to the shipping address of an order. This feature is particularly useful in scenarios such as:

  • You initially created an order without a shipping address and need to add the customer’s address later.
  • The customer has provided a different address after placing the order.
  • There is an error in the shipping information that requires correction before the order is processed.

By updating the shipping address, you ensure that the order reaches the correct destination without delays or additional costs.

Updating an Order

To update the shipping address of an order, send a request to the following:

Endpoint

PUT {{baseURL}}/api/orders/{{order_id}}

Headers

  • Authorization: {token}

Request Payload

Request Body Example

The request body should include the new shipping address details:

{  
    "shipping_address": {  
        "first_name": "Stefany",  
        "last_name": "Garcia",  
        "address1": "Belisario Dominguez",  
        "address2": "Semillero",  
        "country": {  
            "code": "MX",  
            "name": "Mexico"  
        },  
        "state": {  
            "code": "TB"  
        },  
        "city": "Monterrey",  
        "postal_code": "64000",  
        "reference": "reference",  
        "phone": "123456789"  
    }
}

Example Request

curl --location --request PUT 'https://sandbox.ecartpay.com/api/orders/60a43fe9ffd1ec212bab3902' \
--header 'Authorization: eyJhbGciOiJIUzUxMiIsInR5cCI6IkpXVCJ9.eyJpZCI6IjY3MmE4NTAzNzFiZTBlY2Y1NTRkMDUxNiIsImFjY291bnRfaWQiOiI2NzJhODUwMzcxYmUwZWNmNTU0ZDA1MGMiLCJpYXQiOjE3MzgwODY3MzEsImV4cCI6MTczODA5MDMzMX0.sRQIqx5XcoTOsVPTkuBvrXE8bnHlsrnnEVcRkWwW6CaFDpd4-_VGn4DoNJ9DeTDudcI8MqJb7orXB7aWGq0rjQ' \
--header 'Content-Type: application/json' \
--header 'Cookie: lang=en' \
--data '{
        "shipping_address": {
        "first_name": "Stefany",
        "address1": "Belisario Dominguez",
        "address2": "Semillero",
        "country": {
            "code": "MX",
            "name": "Mexico"
        },
        "state": {
            "code": "TB"
        },
        "city": "Monterrey",
        "postal_code": "64000",
        "reference": "reference",
        "phone": "123456789"
    }
}'
package main

import (
  "fmt"
  "strings"
  "net/http"
  "io"
)

func main() {

  url := "https://sandbox.ecartpay.com/api/orders/60a43fe9ffd1ec212bab3902"
  method := "PUT"

  payload := strings.NewReader(`{`+"
"+`
        "shipping_address": {`+"
"+`
        "first_name": "Stefany",`+"
"+`
        "address1": "Belisario Dominguez",`+"
"+`
        "address2": "Semillero",`+"
"+`
        "country": {`+"
"+`
            "code": "MX",`+"
"+`
            "name": "Mexico"`+"
"+`
        },`+"
"+`
        "state": {`+"
"+`
            "code": "TB"`+"
"+`
        },`+"
"+`
        "city": "Monterrey",`+"
"+`
        "postal_code": "64000",`+"
"+`
        "reference": "reference",`+"
"+`
        "phone": "123456789"`+"
"+`
    }`+"
"+`
}`)

  client := &http.Client {
  }
  req, err := http.NewRequest(method, url, payload)

  if err != nil {
    fmt.Println(err)
    return
  }
  req.Header.Add("Authorization", "eyJhbGciOiJIUzUxMiIsInR5cCI6IkpXVCJ9.eyJpZCI6IjY3MmE4NTAzNzFiZTBlY2Y1NTRkMDUxNiIsImFjY291bnRfaWQiOiI2NzJhODUwMzcxYmUwZWNmNTU0ZDA1MGMiLCJpYXQiOjE3MzgwODY3MzEsImV4cCI6MTczODA5MDMzMX0.sRQIqx5XcoTOsVPTkuBvrXE8bnHlsrnnEVcRkWwW6CaFDpd4-_VGn4DoNJ9DeTDudcI8MqJb7orXB7aWGq0rjQ")
  req.Header.Add("Content-Type", "application/json")
  req.Header.Add("Cookie", "lang=en")

  res, err := client.Do(req)
  if err != nil {
    fmt.Println(err)
    return
  }
  defer res.Body.Close()

  body, err := io.ReadAll(res.Body)
  if err != nil {
    fmt.Println(err)
    return
  }
  fmt.Println(string(body))
}
PUT /api/orders/60a43fe9ffd1ec212bab3902 HTTP/1.1
Host: sandbox.ecartpay.com
Authorization: eyJhbGciOiJIUzUxMiIsInR5cCI6IkpXVCJ9.eyJpZCI6IjY3MmE4NTAzNzFiZTBlY2Y1NTRkMDUxNiIsImFjY291bnRfaWQiOiI2NzJhODUwMzcxYmUwZWNmNTU0ZDA1MGMiLCJpYXQiOjE3MzgwODY3MzEsImV4cCI6MTczODA5MDMzMX0.sRQIqx5XcoTOsVPTkuBvrXE8bnHlsrnnEVcRkWwW6CaFDpd4-_VGn4DoNJ9DeTDudcI8MqJb7orXB7aWGq0rjQ
Content-Type: application/json
Cookie: lang=en
Content-Length: 431

{
        "shipping_address": {
        "first_name": "Stefany",
        "address1": "Belisario Dominguez",
        "address2": "Semillero",
        "country": {
            "code": "MX",
            "name": "Mexico"
        },
        "state": {
            "code": "TB"
        },
        "city": "Monterrey",
        "postal_code": "64000",
        "reference": "reference",
        "phone": "123456789"
    }
}
// OkHttp

OkHttpClient client = new OkHttpClient().newBuilder()
  .build();
MediaType mediaType = MediaType.parse("application/json");
RequestBody body = RequestBody.create(mediaType, "{\r\n        \"shipping_address\": {\r\n        \"first_name\": \"Stefany\",\r\n        \"address1\": \"Belisario Dominguez\",\r\n        \"address2\": \"Semillero\",\r\n        \"country\": {\r\n            \"code\": \"MX\",\r\n            \"name\": \"Mexico\"\r\n        },\r\n        \"state\": {\r\n            \"code\": \"TB\"\r\n        },\r\n        \"city\": \"Monterrey\",\r\n        \"postal_code\": \"64000\",\r\n        \"reference\": \"reference\",\r\n        \"phone\": \"123456789\"\r\n    }\r\n}");
Request request = new Request.Builder()
  .url("https://sandbox.ecartpay.com/api/orders/60a43fe9ffd1ec212bab3902")
  .method("PUT", body)
  .addHeader("Authorization", "eyJhbGciOiJIUzUxMiIsInR5cCI6IkpXVCJ9.eyJpZCI6IjY3MmE4NTAzNzFiZTBlY2Y1NTRkMDUxNiIsImFjY291bnRfaWQiOiI2NzJhODUwMzcxYmUwZWNmNTU0ZDA1MGMiLCJpYXQiOjE3MzgwODY3MzEsImV4cCI6MTczODA5MDMzMX0.sRQIqx5XcoTOsVPTkuBvrXE8bnHlsrnnEVcRkWwW6CaFDpd4-_VGn4DoNJ9DeTDudcI8MqJb7orXB7aWGq0rjQ")
  .addHeader("Content-Type", "application/json")
  .addHeader("Cookie", "lang=en")
  .build();
Response response = client.newCall(request).execute();

// -------------------------------------------------------------

// Unirest

Unirest.setTimeouts(0, 0);
HttpResponse<String> response = Unirest.put("https://sandbox.ecartpay.com/api/orders/60a43fe9ffd1ec212bab3902")
  .header("Authorization", "eyJhbGciOiJIUzUxMiIsInR5cCI6IkpXVCJ9.eyJpZCI6IjY3MmE4NTAzNzFiZTBlY2Y1NTRkMDUxNiIsImFjY291bnRfaWQiOiI2NzJhODUwMzcxYmUwZWNmNTU0ZDA1MGMiLCJpYXQiOjE3MzgwODY3MzEsImV4cCI6MTczODA5MDMzMX0.sRQIqx5XcoTOsVPTkuBvrXE8bnHlsrnnEVcRkWwW6CaFDpd4-_VGn4DoNJ9DeTDudcI8MqJb7orXB7aWGq0rjQ")
  .header("Content-Type", "application/json")
  .header("Cookie", "lang=en")
  .body("{\r\n        \"shipping_address\": {\r\n        \"first_name\": \"Stefany\",\r\n        \"address1\": \"Belisario Dominguez\",\r\n        \"address2\": \"Semillero\",\r\n        \"country\": {\r\n            \"code\": \"MX\",\r\n            \"name\": \"Mexico\"\r\n        },\r\n        \"state\": {\r\n            \"code\": \"TB\"\r\n        },\r\n        \"city\": \"Monterrey\",\r\n        \"postal_code\": \"64000\",\r\n        \"reference\": \"reference\",\r\n        \"phone\": \"123456789\"\r\n    }\r\n}")
  .asString();
// Fetch

const myHeaders = new Headers();
myHeaders.append("Authorization", "eyJhbGciOiJIUzUxMiIsInR5cCI6IkpXVCJ9.eyJpZCI6IjY3MmE4NTAzNzFiZTBlY2Y1NTRkMDUxNiIsImFjY291bnRfaWQiOiI2NzJhODUwMzcxYmUwZWNmNTU0ZDA1MGMiLCJpYXQiOjE3MzgwODY3MzEsImV4cCI6MTczODA5MDMzMX0.sRQIqx5XcoTOsVPTkuBvrXE8bnHlsrnnEVcRkWwW6CaFDpd4-_VGn4DoNJ9DeTDudcI8MqJb7orXB7aWGq0rjQ");
myHeaders.append("Content-Type", "application/json");
myHeaders.append("Cookie", "lang=en");

const raw = JSON.stringify({
  "shipping_address": {
    "first_name": "Stefany",
    "address1": "Belisario Dominguez",
    "address2": "Semillero",
    "country": {
      "code": "MX",
      "name": "Mexico"
    },
    "state": {
      "code": "TB"
    },
    "city": "Monterrey",
    "postal_code": "64000",
    "reference": "reference",
    "phone": "123456789"
  }
});

const requestOptions = {
  method: "PUT",
  headers: myHeaders,
  body: raw,
  redirect: "follow"
};

fetch("https://sandbox.ecartpay.com/api/orders/60a43fe9ffd1ec212bab3902", requestOptions)
  .then((response) => response.text())
  .then((result) => console.log(result))
  .catch((error) => console.error(error));

// -------------------------------------------------------------

// jQuery

var settings = {
  "url": "https://sandbox.ecartpay.com/api/orders/60a43fe9ffd1ec212bab3902",
  "method": "PUT",
  "timeout": 0,
  "headers": {
    "Authorization": "eyJhbGciOiJIUzUxMiIsInR5cCI6IkpXVCJ9.eyJpZCI6IjY3MmE4NTAzNzFiZTBlY2Y1NTRkMDUxNiIsImFjY291bnRfaWQiOiI2NzJhODUwMzcxYmUwZWNmNTU0ZDA1MGMiLCJpYXQiOjE3MzgwODY3MzEsImV4cCI6MTczODA5MDMzMX0.sRQIqx5XcoTOsVPTkuBvrXE8bnHlsrnnEVcRkWwW6CaFDpd4-_VGn4DoNJ9DeTDudcI8MqJb7orXB7aWGq0rjQ",
    "Content-Type": "application/json",
    "Cookie": "lang=en"
  },
  "data": JSON.stringify({
    "shipping_address": {
      "first_name": "Stefany",
      "address1": "Belisario Dominguez",
      "address2": "Semillero",
      "country": {
        "code": "MX",
        "name": "Mexico"
      },
      "state": {
        "code": "TB"
      },
      "city": "Monterrey",
      "postal_code": "64000",
      "reference": "reference",
      "phone": "123456789"
    }
  }),
};

$.ajax(settings).done(function (response) {
  console.log(response);
});

// -------------------------------------------------------------

// XHR

var data = JSON.stringify({
  "shipping_address": {
    "first_name": "Stefany",
    "address1": "Belisario Dominguez",
    "address2": "Semillero",
    "country": {
      "code": "MX",
      "name": "Mexico"
    },
    "state": {
      "code": "TB"
    },
    "city": "Monterrey",
    "postal_code": "64000",
    "reference": "reference",
    "phone": "123456789"
  }
});

var xhr = new XMLHttpRequest();
xhr.withCredentials = true;

xhr.addEventListener("readystatechange", function() {
  if(this.readyState === 4) {
    console.log(this.responseText);
  }
});

xhr.open("PUT", "https://sandbox.ecartpay.com/api/orders/60a43fe9ffd1ec212bab3902");
xhr.setRequestHeader("Authorization", "eyJhbGciOiJIUzUxMiIsInR5cCI6IkpXVCJ9.eyJpZCI6IjY3MmE4NTAzNzFiZTBlY2Y1NTRkMDUxNiIsImFjY291bnRfaWQiOiI2NzJhODUwMzcxYmUwZWNmNTU0ZDA1MGMiLCJpYXQiOjE3MzgwODY3MzEsImV4cCI6MTczODA5MDMzMX0.sRQIqx5XcoTOsVPTkuBvrXE8bnHlsrnnEVcRkWwW6CaFDpd4-_VGn4DoNJ9DeTDudcI8MqJb7orXB7aWGq0rjQ");
xhr.setRequestHeader("Content-Type", "application/json");
// WARNING: Cookies will be stripped away by the browser before sending the request.
xhr.setRequestHeader("Cookie", "lang=en");

xhr.send(data);
CURL *curl;
CURLcode res;
curl = curl_easy_init();
if(curl) {
  curl_easy_setopt(curl, CURLOPT_CUSTOMREQUEST, "PUT");
  curl_easy_setopt(curl, CURLOPT_URL, "https://sandbox.ecartpay.com/api/orders/60a43fe9ffd1ec212bab3902");
  curl_easy_setopt(curl, CURLOPT_FOLLOWLOCATION, 1L);
  curl_easy_setopt(curl, CURLOPT_DEFAULT_PROTOCOL, "https");
  struct curl_slist *headers = NULL;
  headers = curl_slist_append(headers, "Authorization: eyJhbGciOiJIUzUxMiIsInR5cCI6IkpXVCJ9.eyJpZCI6IjY3MmE4NTAzNzFiZTBlY2Y1NTRkMDUxNiIsImFjY291bnRfaWQiOiI2NzJhODUwMzcxYmUwZWNmNTU0ZDA1MGMiLCJpYXQiOjE3MzgwODY3MzEsImV4cCI6MTczODA5MDMzMX0.sRQIqx5XcoTOsVPTkuBvrXE8bnHlsrnnEVcRkWwW6CaFDpd4-_VGn4DoNJ9DeTDudcI8MqJb7orXB7aWGq0rjQ");
  headers = curl_slist_append(headers, "Content-Type: application/json");
  headers = curl_slist_append(headers, "Cookie: lang=en");
  curl_easy_setopt(curl, CURLOPT_HTTPHEADER, headers);
  const char *data = "{\r\n        \"shipping_address\": {\r\n        \"first_name\": \"Stefany\",\r\n        \"address1\": \"Belisario Dominguez\",\r\n        \"address2\": \"Semillero\",\r\n        \"country\": {\r\n            \"code\": \"MX\",\r\n            \"name\": \"Mexico\"\r\n        },\r\n        \"state\": {\r\n            \"code\": \"TB\"\r\n        },\r\n        \"city\": \"Monterrey\",\r\n        \"postal_code\": \"64000\",\r\n        \"reference\": \"reference\",\r\n        \"phone\": \"123456789\"\r\n    }\r\n}";
  curl_easy_setopt(curl, CURLOPT_POSTFIELDS, data);
  res = curl_easy_perform(curl);
  curl_slist_free_all(headers);
}
curl_easy_cleanup(curl);
// Axios

const axios = require('axios');
let data = JSON.stringify({
  "shipping_address": {
    "first_name": "Stefany",
    "address1": "Belisario Dominguez",
    "address2": "Semillero",
    "country": {
      "code": "MX",
      "name": "Mexico"
    },
    "state": {
      "code": "TB"
    },
    "city": "Monterrey",
    "postal_code": "64000",
    "reference": "reference",
    "phone": "123456789"
  }
});

let config = {
  method: 'put',
  maxBodyLength: Infinity,
  url: 'https://sandbox.ecartpay.com/api/orders/60a43fe9ffd1ec212bab3902',
  headers: { 
    'Authorization': 'eyJhbGciOiJIUzUxMiIsInR5cCI6IkpXVCJ9.eyJpZCI6IjY3MmE4NTAzNzFiZTBlY2Y1NTRkMDUxNiIsImFjY291bnRfaWQiOiI2NzJhODUwMzcxYmUwZWNmNTU0ZDA1MGMiLCJpYXQiOjE3MzgwODY3MzEsImV4cCI6MTczODA5MDMzMX0.sRQIqx5XcoTOsVPTkuBvrXE8bnHlsrnnEVcRkWwW6CaFDpd4-_VGn4DoNJ9DeTDudcI8MqJb7orXB7aWGq0rjQ', 
    'Content-Type': 'application/json', 
    'Cookie': 'lang=en'
  },
  data : data
};

axios.request(config)
.then((response) => {
  console.log(JSON.stringify(response.data));
})
.catch((error) => {
  console.log(error);
});

// -------------------------------------------------------------

// Native

var https = require('follow-redirects').https;
var fs = require('fs');

var options = {
  'method': 'PUT',
  'hostname': 'sandbox.ecartpay.com',
  'path': '/api/orders/60a43fe9ffd1ec212bab3902',
  'headers': {
    'Authorization': 'eyJhbGciOiJIUzUxMiIsInR5cCI6IkpXVCJ9.eyJpZCI6IjY3MmE4NTAzNzFiZTBlY2Y1NTRkMDUxNiIsImFjY291bnRfaWQiOiI2NzJhODUwMzcxYmUwZWNmNTU0ZDA1MGMiLCJpYXQiOjE3MzgwODY3MzEsImV4cCI6MTczODA5MDMzMX0.sRQIqx5XcoTOsVPTkuBvrXE8bnHlsrnnEVcRkWwW6CaFDpd4-_VGn4DoNJ9DeTDudcI8MqJb7orXB7aWGq0rjQ',
    'Content-Type': 'application/json',
    'Cookie': 'lang=en'
  },
  'maxRedirects': 20
};

var req = https.request(options, function (res) {
  var chunks = [];

  res.on("data", function (chunk) {
    chunks.push(chunk);
  });

  res.on("end", function (chunk) {
    var body = Buffer.concat(chunks);
    console.log(body.toString());
  });

  res.on("error", function (error) {
    console.error(error);
  });
});

var postData = JSON.stringify({
  "shipping_address": {
    "first_name": "Stefany",
    "address1": "Belisario Dominguez",
    "address2": "Semillero",
    "country": {
      "code": "MX",
      "name": "Mexico"
    },
    "state": {
      "code": "TB"
    },
    "city": "Monterrey",
    "postal_code": "64000",
    "reference": "reference",
    "phone": "123456789"
  }
});

req.write(postData);

req.end();

// -------------------------------------------------------------

// Request

var request = require('request');
var options = {
  'method': 'PUT',
  'url': 'https://sandbox.ecartpay.com/api/orders/60a43fe9ffd1ec212bab3902',
  'headers': {
    'Authorization': 'eyJhbGciOiJIUzUxMiIsInR5cCI6IkpXVCJ9.eyJpZCI6IjY3MmE4NTAzNzFiZTBlY2Y1NTRkMDUxNiIsImFjY291bnRfaWQiOiI2NzJhODUwMzcxYmUwZWNmNTU0ZDA1MGMiLCJpYXQiOjE3MzgwODY3MzEsImV4cCI6MTczODA5MDMzMX0.sRQIqx5XcoTOsVPTkuBvrXE8bnHlsrnnEVcRkWwW6CaFDpd4-_VGn4DoNJ9DeTDudcI8MqJb7orXB7aWGq0rjQ',
    'Content-Type': 'application/json',
    'Cookie': 'lang=en'
  },
  body: JSON.stringify({
    "shipping_address": {
      "first_name": "Stefany",
      "address1": "Belisario Dominguez",
      "address2": "Semillero",
      "country": {
        "code": "MX",
        "name": "Mexico"
      },
      "state": {
        "code": "TB"
      },
      "city": "Monterrey",
      "postal_code": "64000",
      "reference": "reference",
      "phone": "123456789"
    }
  })

};
request(options, function (error, response) {
  if (error) throw new Error(error);
  console.log(response.body);
});

// -------------------------------------------------------------

// Unirest

var unirest = require('unirest');
var req = unirest('PUT', 'https://sandbox.ecartpay.com/api/orders/60a43fe9ffd1ec212bab3902')
  .headers({
    'Authorization': 'eyJhbGciOiJIUzUxMiIsInR5cCI6IkpXVCJ9.eyJpZCI6IjY3MmE4NTAzNzFiZTBlY2Y1NTRkMDUxNiIsImFjY291bnRfaWQiOiI2NzJhODUwMzcxYmUwZWNmNTU0ZDA1MGMiLCJpYXQiOjE3MzgwODY3MzEsImV4cCI6MTczODA5MDMzMX0.sRQIqx5XcoTOsVPTkuBvrXE8bnHlsrnnEVcRkWwW6CaFDpd4-_VGn4DoNJ9DeTDudcI8MqJb7orXB7aWGq0rjQ',
    'Content-Type': 'application/json',
    'Cookie': 'lang=en'
  })
  .send(JSON.stringify({
    "shipping_address": {
      "first_name": "Stefany",
      "address1": "Belisario Dominguez",
      "address2": "Semillero",
      "country": {
        "code": "MX",
        "name": "Mexico"
      },
      "state": {
        "code": "TB"
      },
      "city": "Monterrey",
      "postal_code": "64000",
      "reference": "reference",
      "phone": "123456789"
    }
  }))
  .end(function (res) { 
    if (res.error) throw new Error(res.error); 
    console.log(res.raw_body);
  });
#import <Foundation/Foundation.h>

dispatch_semaphore_t sema = dispatch_semaphore_create(0);

NSMutableURLRequest *request = [NSMutableURLRequest requestWithURL:[NSURL URLWithString:@"https://sandbox.ecartpay.com/api/orders/60a43fe9ffd1ec212bab3902"]
  cachePolicy:NSURLRequestUseProtocolCachePolicy
  timeoutInterval:10.0];
NSDictionary *headers = @{
  @"Authorization": @"eyJhbGciOiJIUzUxMiIsInR5cCI6IkpXVCJ9.eyJpZCI6IjY3MmE4NTAzNzFiZTBlY2Y1NTRkMDUxNiIsImFjY291bnRfaWQiOiI2NzJhODUwMzcxYmUwZWNmNTU0ZDA1MGMiLCJpYXQiOjE3MzgwODY3MzEsImV4cCI6MTczODA5MDMzMX0.sRQIqx5XcoTOsVPTkuBvrXE8bnHlsrnnEVcRkWwW6CaFDpd4-_VGn4DoNJ9DeTDudcI8MqJb7orXB7aWGq0rjQ",
  @"Content-Type": @"application/json",
  @"Cookie": @"lang=en"
};

[request setAllHTTPHeaderFields:headers];
NSData *postData = [[NSData alloc] initWithData:[@"{\r\n        \"shipping_address\": {\r\n        \"first_name\": \"Stefany\",\r\n        \"address1\": \"Belisario Dominguez\",\r\n        \"address2\": \"Semillero\",\r\n        \"country\": {\r\n            \"code\": \"MX\",\r\n            \"name\": \"Mexico\"\r\n        },\r\n        \"state\": {\r\n            \"code\": \"TB\"\r\n        },\r\n        \"city\": \"Monterrey\",\r\n        \"postal_code\": \"64000\",\r\n        \"reference\": \"reference\",\r\n        \"phone\": \"123456789\"\r\n    }\r\n}" dataUsingEncoding:NSUTF8StringEncoding]];
[request setHTTPBody:postData];

[request setHTTPMethod:@"PUT"];

NSURLSession *session = [NSURLSession sharedSession];
NSURLSessionDataTask *dataTask = [session dataTaskWithRequest:request
completionHandler:^(NSData *data, NSURLResponse *response, NSError *error) {
  if (error) {
    NSLog(@"%@", error);
    dispatch_semaphore_signal(sema);
  } else {
    NSHTTPURLResponse *httpResponse = (NSHTTPURLResponse *) response;
    NSError *parseError = nil;
    NSDictionary *responseDictionary = [NSJSONSerialization JSONObjectWithData:data options:0 error:&parseError];
    NSLog(@"%@",responseDictionary);
    dispatch_semaphore_signal(sema);
  }
}];
[dataTask resume];
dispatch_semaphore_wait(sema, DISPATCH_TIME_FOREVER);
open Lwt
open Cohttp
open Cohttp_lwt_unix

let postData = ref "{\r\n        \"shipping_address\": {\r\n        \"first_name\": \"Stefany\",\r\n        \"address1\": \"Belisario Dominguez\",\r\n        \"address2\": \"Semillero\",\r\n        \"country\": {\r\n            \"code\": \"MX\",\r\n            \"name\": \"Mexico\"\r\n        },\r\n        \"state\": {\r\n            \"code\": \"TB\"\r\n        },\r\n        \"city\": \"Monterrey\",\r\n        \"postal_code\": \"64000\",\r\n        \"reference\": \"reference\",\r\n        \"phone\": \"123456789\"\r\n    }\r\n}";;

let reqBody = 
  let uri = Uri.of_string "https://sandbox.ecartpay.com/api/orders/60a43fe9ffd1ec212bab3902" in
  let headers = Header.init ()
    |> fun h -> Header.add h "Authorization" "eyJhbGciOiJIUzUxMiIsInR5cCI6IkpXVCJ9.eyJpZCI6IjY3MmE4NTAzNzFiZTBlY2Y1NTRkMDUxNiIsImFjY291bnRfaWQiOiI2NzJhODUwMzcxYmUwZWNmNTU0ZDA1MGMiLCJpYXQiOjE3MzgwODY3MzEsImV4cCI6MTczODA5MDMzMX0.sRQIqx5XcoTOsVPTkuBvrXE8bnHlsrnnEVcRkWwW6CaFDpd4-_VGn4DoNJ9DeTDudcI8MqJb7orXB7aWGq0rjQ"
    |> fun h -> Header.add h "Content-Type" "application/json"
    |> fun h -> Header.add h "Cookie" "lang=en"
  in
  let body = Cohttp_lwt.Body.of_string !postData in

  Client.call ~headers ~body `PUT uri >>= fun (_resp, body) ->
  body |> Cohttp_lwt.Body.to_string >|= fun body -> body

let () =
  let respBody = Lwt_main.run reqBody in
  print_endline (respBody)
// cURL

<?php

$curl = curl_init();

curl_setopt_array($curl, array(
  CURLOPT_URL => 'https://sandbox.ecartpay.com/api/orders/60a43fe9ffd1ec212bab3902',
  CURLOPT_RETURNTRANSFER => true,
  CURLOPT_ENCODING => '',
  CURLOPT_MAXREDIRS => 10,
  CURLOPT_TIMEOUT => 0,
  CURLOPT_FOLLOWLOCATION => true,
  CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
  CURLOPT_CUSTOMREQUEST => 'PUT',
  CURLOPT_POSTFIELDS =>'{
        "shipping_address": {
        "first_name": "Stefany",
        "address1": "Belisario Dominguez",
        "address2": "Semillero",
        "country": {
            "code": "MX",
            "name": "Mexico"
        },
        "state": {
            "code": "TB"
        },
        "city": "Monterrey",
        "postal_code": "64000",
        "reference": "reference",
        "phone": "123456789"
    }
}',
  CURLOPT_HTTPHEADER => array(
    'Authorization: eyJhbGciOiJIUzUxMiIsInR5cCI6IkpXVCJ9.eyJpZCI6IjY3MmE4NTAzNzFiZTBlY2Y1NTRkMDUxNiIsImFjY291bnRfaWQiOiI2NzJhODUwMzcxYmUwZWNmNTU0ZDA1MGMiLCJpYXQiOjE3MzgwODY3MzEsImV4cCI6MTczODA5MDMzMX0.sRQIqx5XcoTOsVPTkuBvrXE8bnHlsrnnEVcRkWwW6CaFDpd4-_VGn4DoNJ9DeTDudcI8MqJb7orXB7aWGq0rjQ',
    'Content-Type: application/json',
    'Cookie: lang=en'
  ),
));

$response = curl_exec($curl);

curl_close($curl);
echo $response;

// -------------------------------------------------------------

// Guzzle

<?php
$client = new Client();
$headers = [
  'Authorization' => 'eyJhbGciOiJIUzUxMiIsInR5cCI6IkpXVCJ9.eyJpZCI6IjY3MmE4NTAzNzFiZTBlY2Y1NTRkMDUxNiIsImFjY291bnRfaWQiOiI2NzJhODUwMzcxYmUwZWNmNTU0ZDA1MGMiLCJpYXQiOjE3MzgwODY3MzEsImV4cCI6MTczODA5MDMzMX0.sRQIqx5XcoTOsVPTkuBvrXE8bnHlsrnnEVcRkWwW6CaFDpd4-_VGn4DoNJ9DeTDudcI8MqJb7orXB7aWGq0rjQ',
  'Content-Type' => 'application/json',
  'Cookie' => 'lang=en'
];
$body = '{
  "shipping_address": {
    "first_name": "Stefany",
    "address1": "Belisario Dominguez",
    "address2": "Semillero",
    "country": {
      "code": "MX",
      "name": "Mexico"
    },
    "state": {
      "code": "TB"
    },
    "city": "Monterrey",
    "postal_code": "64000",
    "reference": "reference",
    "phone": "123456789"
  }
}';
$request = new Request('PUT', 'https://sandbox.ecartpay.com/api/orders/60a43fe9ffd1ec212bab3902', $headers, $body);
$res = $client->sendAsync($request)->wait();
echo $res->getBody();

// -------------------------------------------------------------

// HTTP_Request2

<?php
require_once 'HTTP/Request2.php';
$request = new HTTP_Request2();
$request->setUrl('https://sandbox.ecartpay.com/api/orders/60a43fe9ffd1ec212bab3902');
$request->setMethod(HTTP_Request2::METHOD_PUT);
$request->setConfig(array(
  'follow_redirects' => TRUE
));
$request->setHeader(array(
  'Authorization' => 'eyJhbGciOiJIUzUxMiIsInR5cCI6IkpXVCJ9.eyJpZCI6IjY3MmE4NTAzNzFiZTBlY2Y1NTRkMDUxNiIsImFjY291bnRfaWQiOiI2NzJhODUwMzcxYmUwZWNmNTU0ZDA1MGMiLCJpYXQiOjE3MzgwODY3MzEsImV4cCI6MTczODA5MDMzMX0.sRQIqx5XcoTOsVPTkuBvrXE8bnHlsrnnEVcRkWwW6CaFDpd4-_VGn4DoNJ9DeTDudcI8MqJb7orXB7aWGq0rjQ',
  'Content-Type' => 'application/json',
  'Cookie' => 'lang=en'
));
$request->setBody('{
\n        "shipping_address": {
\n        "first_name": "Stefany",
\n        "address1": "Belisario Dominguez",
\n        "address2": "Semillero",
\n        "country": {
\n            "code": "MX",
\n            "name": "Mexico"
\n        },
\n        "state": {
\n            "code": "TB"
\n        },
\n        "city": "Monterrey",
\n        "postal_code": "64000",
\n        "reference": "reference",
\n        "phone": "123456789"
\n    }
\n}');
try {
  $response = $request->send();
  if ($response->getStatus() == 200) {
    echo $response->getBody();
  }
  else {
    echo 'Unexpected HTTP status: ' . $response->getStatus() . ' ' .
    $response->getReasonPhrase();
  }
}
catch(HTTP_Request2_Exception $e) {
  echo 'Error: ' . $e->getMessage();
}

// -------------------------------------------------------------

// pecl_http

<?php
$client = new http\Client;
$request = new http\Client\Request;
$request->setRequestUrl('https://sandbox.ecartpay.com/api/orders/60a43fe9ffd1ec212bab3902');
$request->setRequestMethod('PUT');
$body = new http\Message\Body;
$body->append('{
        "shipping_address": {
        "first_name": "Stefany",
        "address1": "Belisario Dominguez",
        "address2": "Semillero",
        "country": {
            "code": "MX",
            "name": "Mexico"
        },
        "state": {
            "code": "TB"
        },
        "city": "Monterrey",
        "postal_code": "64000",
        "reference": "reference",
        "phone": "123456789"
    }
}');
$request->setBody($body);
$request->setOptions(array());
$request->setHeaders(array(
  'Authorization' => 'eyJhbGciOiJIUzUxMiIsInR5cCI6IkpXVCJ9.eyJpZCI6IjY3MmE4NTAzNzFiZTBlY2Y1NTRkMDUxNiIsImFjY291bnRfaWQiOiI2NzJhODUwMzcxYmUwZWNmNTU0ZDA1MGMiLCJpYXQiOjE3MzgwODY3MzEsImV4cCI6MTczODA5MDMzMX0.sRQIqx5XcoTOsVPTkuBvrXE8bnHlsrnnEVcRkWwW6CaFDpd4-_VGn4DoNJ9DeTDudcI8MqJb7orXB7aWGq0rjQ',
  'Content-Type' => 'application/json',
  'Cookie' => 'lang=en'
));
$client->enqueue($request)->send();
$response = $client->getResponse();
echo $response->getBody();
$headers = New-Object "System.Collections.Generic.Dictionary[[String],[String]]"
$headers.Add("Authorization", "eyJhbGciOiJIUzUxMiIsInR5cCI6IkpXVCJ9.eyJpZCI6IjY3MmE4NTAzNzFiZTBlY2Y1NTRkMDUxNiIsImFjY291bnRfaWQiOiI2NzJhODUwMzcxYmUwZWNmNTU0ZDA1MGMiLCJpYXQiOjE3MzgwODY3MzEsImV4cCI6MTczODA5MDMzMX0.sRQIqx5XcoTOsVPTkuBvrXE8bnHlsrnnEVcRkWwW6CaFDpd4-_VGn4DoNJ9DeTDudcI8MqJb7orXB7aWGq0rjQ")
$headers.Add("Content-Type", "application/json")
$headers.Add("Cookie", "lang=en")

$body = @"
{
        `"shipping_address`": {
        `"first_name`": `"Stefany`",
        `"address1`": `"Belisario Dominguez`",
        `"address2`": `"Semillero`",
        `"country`": {
            `"code`": `"MX`",
            `"name`": `"Mexico`"
        },
        `"state`": {
            `"code`": `"TB`"
        },
        `"city`": `"Monterrey`",
        `"postal_code`": `"64000`",
        `"reference`": `"reference`",
        `"phone`": `"123456789`"
    }
}
"@

$response = Invoke-RestMethod 'https://sandbox.ecartpay.com/api/orders/60a43fe9ffd1ec212bab3902' -Method 'PUT' -Headers $headers -Body $body
$response | ConvertTo-Json
# http.client

import http.client
import json

conn = http.client.HTTPSConnection("sandbox.ecartpay.com")
payload = json.dumps({
  "shipping_address": {
    "first_name": "Stefany",
    "address1": "Belisario Dominguez",
    "address2": "Semillero",
    "country": {
      "code": "MX",
      "name": "Mexico"
    },
    "state": {
      "code": "TB"
    },
    "city": "Monterrey",
    "postal_code": "64000",
    "reference": "reference",
    "phone": "123456789"
  }
})
headers = {
  'Authorization': 'eyJhbGciOiJIUzUxMiIsInR5cCI6IkpXVCJ9.eyJpZCI6IjY3MmE4NTAzNzFiZTBlY2Y1NTRkMDUxNiIsImFjY291bnRfaWQiOiI2NzJhODUwMzcxYmUwZWNmNTU0ZDA1MGMiLCJpYXQiOjE3MzgwODY3MzEsImV4cCI6MTczODA5MDMzMX0.sRQIqx5XcoTOsVPTkuBvrXE8bnHlsrnnEVcRkWwW6CaFDpd4-_VGn4DoNJ9DeTDudcI8MqJb7orXB7aWGq0rjQ',
  'Content-Type': 'application/json',
  'Cookie': 'lang=en'
}
conn.request("PUT", "/api/orders/60a43fe9ffd1ec212bab3902", payload, headers)
res = conn.getresponse()
data = res.read()
print(data.decode("utf-8"))

// -------------------------------------------------------------

# Requests

import requests
import json

url = "https://sandbox.ecartpay.com/api/orders/60a43fe9ffd1ec212bab3902"

payload = json.dumps({
  "shipping_address": {
    "first_name": "Stefany",
    "address1": "Belisario Dominguez",
    "address2": "Semillero",
    "country": {
      "code": "MX",
      "name": "Mexico"
    },
    "state": {
      "code": "TB"
    },
    "city": "Monterrey",
    "postal_code": "64000",
    "reference": "reference",
    "phone": "123456789"
  }
})
headers = {
  'Authorization': 'eyJhbGciOiJIUzUxMiIsInR5cCI6IkpXVCJ9.eyJpZCI6IjY3MmE4NTAzNzFiZTBlY2Y1NTRkMDUxNiIsImFjY291bnRfaWQiOiI2NzJhODUwMzcxYmUwZWNmNTU0ZDA1MGMiLCJpYXQiOjE3MzgwODY3MzEsImV4cCI6MTczODA5MDMzMX0.sRQIqx5XcoTOsVPTkuBvrXE8bnHlsrnnEVcRkWwW6CaFDpd4-_VGn4DoNJ9DeTDudcI8MqJb7orXB7aWGq0rjQ',
  'Content-Type': 'application/json',
  'Cookie': 'lang=en'
}

response = requests.request("PUT", url, headers=headers, data=payload)

print(response.text)
# httr

library(httr)

headers = c(
  'Authorization' = 'eyJhbGciOiJIUzUxMiIsInR5cCI6IkpXVCJ9.eyJpZCI6IjY3MmE4NTAzNzFiZTBlY2Y1NTRkMDUxNiIsImFjY291bnRfaWQiOiI2NzJhODUwMzcxYmUwZWNmNTU0ZDA1MGMiLCJpYXQiOjE3MzgwODY3MzEsImV4cCI6MTczODA5MDMzMX0.sRQIqx5XcoTOsVPTkuBvrXE8bnHlsrnnEVcRkWwW6CaFDpd4-_VGn4DoNJ9DeTDudcI8MqJb7orXB7aWGq0rjQ',
  'Content-Type' = 'application/json',
  'Cookie' = 'lang=en'
)

body = '{
  "shipping_address": {
    "first_name": "Stefany",
    "address1": "Belisario Dominguez",
    "address2": "Semillero",
    "country": {
      "code": "MX",
      "name": "Mexico"
    },
    "state": {
      "code": "TB"
    },
    "city": "Monterrey",
    "postal_code": "64000",
    "reference": "reference",
    "phone": "123456789"
  }
}';

res <- VERB("PUT", url = "https://sandbox.ecartpay.com/api/orders/60a43fe9ffd1ec212bab3902", body = body, add_headers(headers))

cat(content(res, 'text'))

// -------------------------------------------------------------

# RCurl

library(RCurl)
headers = c(
  "Authorization" = "eyJhbGciOiJIUzUxMiIsInR5cCI6IkpXVCJ9.eyJpZCI6IjY3MmE4NTAzNzFiZTBlY2Y1NTRkMDUxNiIsImFjY291bnRfaWQiOiI2NzJhODUwMzcxYmUwZWNmNTU0ZDA1MGMiLCJpYXQiOjE3MzgwODY3MzEsImV4cCI6MTczODA5MDMzMX0.sRQIqx5XcoTOsVPTkuBvrXE8bnHlsrnnEVcRkWwW6CaFDpd4-_VGn4DoNJ9DeTDudcI8MqJb7orXB7aWGq0rjQ",
  "Content-Type" = "application/json",
  "Cookie" = "lang=en"
)
params = "{
  \"shipping_address\": {
    \"first_name\": \"Stefany\",
    \"address1\": \"Belisario Dominguez\",
    \"address2\": \"Semillero\",
    \"country\": {
      \"code\": \"MX\",
      \"name\": \"Mexico\"
    },
    \"state\": {
      \"code\": \"TB\"
    },
    \"city\": \"Monterrey\",
    \"postal_code\": \"64000\",
    \"reference\": \"reference\",
    \"phone\": \"123456789\"
  }
}"
res <- httpPUT("https://sandbox.ecartpay.com/api/orders/60a43fe9ffd1ec212bab3902", params, httpheader = headers, followlocation = TRUE)
cat(res)
require "uri"
require "json"
require "net/http"

url = URI("https://sandbox.ecartpay.com/api/orders/60a43fe9ffd1ec212bab3902")

https = Net::HTTP.new(url.host, url.port)
https.use_ssl = true

request = Net::HTTP::Put.new(url)
request["Authorization"] = "eyJhbGciOiJIUzUxMiIsInR5cCI6IkpXVCJ9.eyJpZCI6IjY3MmE4NTAzNzFiZTBlY2Y1NTRkMDUxNiIsImFjY291bnRfaWQiOiI2NzJhODUwMzcxYmUwZWNmNTU0ZDA1MGMiLCJpYXQiOjE3MzgwODY3MzEsImV4cCI6MTczODA5MDMzMX0.sRQIqx5XcoTOsVPTkuBvrXE8bnHlsrnnEVcRkWwW6CaFDpd4-_VGn4DoNJ9DeTDudcI8MqJb7orXB7aWGq0rjQ"
request["Content-Type"] = "application/json"
request["Cookie"] = "lang=en"
request.body = JSON.dump({
  "shipping_address": {
    "first_name": "Stefany",
    "address1": "Belisario Dominguez",
    "address2": "Semillero",
    "country": {
      "code": "MX",
      "name": "Mexico"
    },
    "state": {
      "code": "TB"
    },
    "city": "Monterrey",
    "postal_code": "64000",
    "reference": "reference",
    "phone": "123456789"
  }
})

response = https.request(request)
puts response.read_body
#[tokio::main]
async fn main() -> Result<(), Box<dyn std::error::Error>> {
    let client = reqwest::Client::builder()
        .build()?;

    let mut headers = reqwest::header::HeaderMap::new();
    headers.insert("Authorization", "eyJhbGciOiJIUzUxMiIsInR5cCI6IkpXVCJ9.eyJpZCI6IjY3MmE4NTAzNzFiZTBlY2Y1NTRkMDUxNiIsImFjY291bnRfaWQiOiI2NzJhODUwMzcxYmUwZWNmNTU0ZDA1MGMiLCJpYXQiOjE3MzgwODY3MzEsImV4cCI6MTczODA5MDMzMX0.sRQIqx5XcoTOsVPTkuBvrXE8bnHlsrnnEVcRkWwW6CaFDpd4-_VGn4DoNJ9DeTDudcI8MqJb7orXB7aWGq0rjQ".parse()?);
    headers.insert("Content-Type", "application/json".parse()?);
    headers.insert("Cookie", "lang=en".parse()?);

    let data = r#"{
    "shipping_address": {
        "first_name": "Stefany",
        "address1": "Belisario Dominguez",
        "address2": "Semillero",
        "country": {
            "code": "MX",
            "name": "Mexico"
        },
        "state": {
            "code": "TB"
        },
        "city": "Monterrey",
        "postal_code": "64000",
        "reference": "reference",
        "phone": "123456789"
    }
}"#;

    let json: serde_json::Value = serde_json::from_str(&data)?;

    let request = client.request(reqwest::Method::PUT, "https://sandbox.ecartpay.com/api/orders/60a43fe9ffd1ec212bab3902")
        .headers(headers)
        .json(&json);

    let response = request.send().await?;
    let body = response.text().await?;

    println!("{}", body);

    Ok(())
}
# Httpie

printf '{
        "shipping_address": {
        "first_name": "Stefany",
        "address1": "Belisario Dominguez",
        "address2": "Semillero",
        "country": {
            "code": "MX",
            "name": "Mexico"
        },
        "state": {
            "code": "TB"
        },
        "city": "Monterrey",
        "postal_code": "64000",
        "reference": "reference",
        "phone": "123456789"
    }
}'| http  --follow --timeout 3600 PUT 'https://sandbox.ecartpay.com/api/orders/60a43fe9ffd1ec212bab3902' \
 Authorization:'eyJhbGciOiJIUzUxMiIsInR5cCI6IkpXVCJ9.eyJpZCI6IjY3MmE4NTAzNzFiZTBlY2Y1NTRkMDUxNiIsImFjY291bnRfaWQiOiI2NzJhODUwMzcxYmUwZWNmNTU0ZDA1MGMiLCJpYXQiOjE3MzgwODY3MzEsImV4cCI6MTczODA5MDMzMX0.sRQIqx5XcoTOsVPTkuBvrXE8bnHlsrnnEVcRkWwW6CaFDpd4-_VGn4DoNJ9DeTDudcI8MqJb7orXB7aWGq0rjQ' \
 Content-Type:'application/json' \
 Cookie:'lang=en'

// -------------------------------------------------------------

# wget

wget --no-check-certificate --quiet \
  --method PUT \
  --timeout=0 \
  --header 'Authorization: eyJhbGciOiJIUzUxMiIsInR5cCI6IkpXVCJ9.eyJpZCI6IjY3MmE4NTAzNzFiZTBlY2Y1NTRkMDUxNiIsImFjY291bnRfaWQiOiI2NzJhODUwMzcxYmUwZWNmNTU0ZDA1MGMiLCJpYXQiOjE3MzgwODY3MzEsImV4cCI6MTczODA5MDMzMX0.sRQIqx5XcoTOsVPTkuBvrXE8bnHlsrnnEVcRkWwW6CaFDpd4-_VGn4DoNJ9DeTDudcI8MqJb7orXB7aWGq0rjQ' \
  --header 'Content-Type: application/json' \
  --header 'Cookie: lang=en' \
  --body-data '{
        "shipping_address": {
        "first_name": "Stefany",
        "address1": "Belisario Dominguez",
        "address2": "Semillero",
        "country": {
            "code": "MX",
            "name": "Mexico"
        },
        "state": {
            "code": "TB"
        },
        "city": "Monterrey",
        "postal_code": "64000",
        "reference": "reference",
        "phone": "123456789"
    }
}' \
   'https://sandbox.ecartpay.com/api/orders/60a43fe9ffd1ec212bab3902'
let parameters = "{\r\n        \"shipping_address\": {\r\n        \"first_name\": \"Stefany\",\r\n        \"address1\": \"Belisario Dominguez\",\r\n        \"address2\": \"Semillero\",\r\n        \"country\": {\r\n            \"code\": \"MX\",\r\n            \"name\": \"Mexico\"\r\n        },\r\n        \"state\": {\r\n            \"code\": \"TB\"\r\n        },\r\n        \"city\": \"Monterrey\",\r\n        \"postal_code\": \"64000\",\r\n        \"reference\": \"reference\",\r\n        \"phone\": \"123456789\"\r\n    }\r\n}"
let postData = parameters.data(using: .utf8)

var request = URLRequest(url: URL(string: "https://sandbox.ecartpay.com/api/orders/60a43fe9ffd1ec212bab3902")!,timeoutInterval: Double.infinity)
request.addValue("eyJhbGciOiJIUzUxMiIsInR5cCI6IkpXVCJ9.eyJpZCI6IjY3MmE4NTAzNzFiZTBlY2Y1NTRkMDUxNiIsImFjY291bnRfaWQiOiI2NzJhODUwMzcxYmUwZWNmNTU0ZDA1MGMiLCJpYXQiOjE3MzgwODY3MzEsImV4cCI6MTczODA5MDMzMX0.sRQIqx5XcoTOsVPTkuBvrXE8bnHlsrnnEVcRkWwW6CaFDpd4-_VGn4DoNJ9DeTDudcI8MqJb7orXB7aWGq0rjQ", forHTTPHeaderField: "Authorization")
request.addValue("application/json", forHTTPHeaderField: "Content-Type")
request.addValue("lang=en", forHTTPHeaderField: "Cookie")

request.httpMethod = "PUT"
request.httpBody = postData

let task = URLSession.shared.dataTask(with: request) { data, response, error in 
  guard let data = data else {
    print(String(describing: error))
    return
  }
  print(String(data: data, encoding: .utf8)!)
}

task.resume()

Example Response

{
    "id": "625ca1878541531b52506afb",
    "account_id": "5d2d436e3199ae000449065b",
    "authorization_id": "6189be80df291598221a5e95",
    "number": "OR77874565",
    "status": "created",
    "email": "[email protected]",
    "first_name": "Moises",
    "last_name": "Garcia",
    "phone": "9341000062",
    "currency": "MXN",
    "shipping_address": {
        "first_name": "Stefany",
        "last_name": "Garcia",
        "address1": "Belisario Dominguez",
        "address2": "Semillero",
        "country": {
            "code": "MX",
            "name": "Mexico"
        },
        "state": {
            "code": "TB"
        },
        "city": "Monterrey",
        "postal_code": "64000",
        "phone": "123456789",
        "reference": "reference"
    },
    "items": [
        {
            "name": "Brazalete religioso plateado BR3017",
            "quantity": 1,
            "price": 243.33,
            "discount": 0,
            "total": 243.33,
            "tax": 0
        }
    ],
    "shipping_items": [
        {
            "name": "Express Shipping",
            "amount": 160,
            "carrier": "OWN"
        }
    ],
    "discounts": [],
    "totals": {
        "subtotal": 243.33,
        "total": 403.33,
        "tax": 0,
        "discount": 0,
        "shipping": 160
    },
    "risk_score": 0,
    "risk_notes": [],
    "fee": 0,
    "confirmed": false,
    "notify_url": "https://example.com/customer/290",
    "redirect_url": "https://example.com/order/10",
    "created_at": "2022-04-17T23:23:51.017Z",
    "updated_at": "2022-04-17T23:24:06.210Z"
}

Key Benefits

  • Improved Accuracy: Ensure that all shipping information is correct before the order is shipped.
  • Enhanced Flexibility: Address last-minute changes without needing to cancel and recreate orders.
  • Streamlined Process: Minimize errors and delays, leading to higher customer satisfaction.

With the Update Order endpoint, Ecart Pay ensures that your orders remain accurate and adaptable to changing customer needs.