All API order creation stopped working since May 19 2021

We have an implementation of the API that has been working for well over a year, creating orders by POST’ing to the https://api.veeqo.com/orders endpoint.

Suddenly, starting May 19th 2021, every POST will result in a response like this:

{“error_messages”:“Not found”}

We created a test script using the example code in the Veeeqo API documentation:

https://developer.veeqo.com/docs#/reference/orders/order-collection/create-a-new-order?console=1

And replaced it with the json data we normally supply to create a successful order.

And the sample code also results in the error:

{“error_messages”:“Not found”}

The code looks like this (private information and our api key has been changed to protect privacy).

<?php


$ch = curl_init();

curl_setopt($ch, CURLOPT_URL, "https://api.veeqo.com/orders");
curl_setopt($ch, CURLOPT_RETURNTRANSFER, TRUE);
curl_setopt($ch, CURLOPT_HEADER, FALSE);

curl_setopt($ch, CURLOPT_POST, TRUE);

curl_setopt($ch, CURLOPT_POSTFIELDS, '{"order":{"channel_id":54219,"customer_id":"75396591","number":"50433","deliver_to_attributes":{"address1":"650 e 222nd st., 1st floor","city":"Bronx","country":"US","customer_id":"75396591","first_name":"frank","last_name":"doz","phone":"17187725555","state":"WY","zip":"55467"},"line_items_attributes":[{"price_per_unit":49.6,"quantity":"1","sellable_id":"30356142"}],"delivery_method_id":"232534","delivery_cost":10.99,"payment_attributes":{"payment_type":"credit_card","reference_number":"txn"},"customer_attributes":{"phone":"17187725555","mobile":"7187725555","email":"someone@gmail.com","billing_address_attributes":{"first_name":"camilo","last_name":"fraticelli","address1":"123 e 123nd st., 1st floor","city":"Bronx","state":"NY","country":"US","phone":"17187725555","email":"somone@gmail.com"}},"customer_note_attributes":{"text":"Transaction Information\r\nDate: 05\/19\/2021 12:57:08 PM\r\nTransactionID:"},"employee_notes_attributes":[{"text":"Transaction Information\r\nDate: 05\/19\/2021 12:57:08 PM\r\nTransactionID: "},{"text":"Shipping Cost: Shipping + Package Cost + Card Fee + Insurance Fee = 9.99 + 0.00 + 0.00 + 1"}]}}');

curl_setopt($ch, CURLOPT_HTTPHEADER, array(
	"Content-Type: application/json",
	"x-api-key: 1234"
));

$response = curl_exec($ch);
curl_close($ch);

var_dump($response);

We have literally changed nothing on our side, and the above json format has been in use successfully for at least a year, creating several orders per week in a production environment.

I just wanted to update this situation.

We solved this by removing “customer_attributes” since we were already passing customer_id.

Support also replied to us to let us know that customer_attributes might also require the id if customer_id was already passed, otherwise it creates a new customer account.

I hope this helps anyone who encounters this problem.