Adding the customer
How to add a customer to the order
Last updated
How to add a customer to the order
Last updated
You need to add a customer to a draft order, for example as the first step of the order checkout flow.
The easiest way to set the customer of an order is to change its customer_email
attribute. To do that, send a PATCH
request to the /api/orders/:id
endpoint.
In case a customer with the same email address exists in your organization, that customer is associated with the order. Otherwise, a new customer is created.
The following request associates the customer identified by the email address "john@example.com" with the order identified by the "NgojhKoyYN" ID:
The image below shows how the related field of an email form is mapped to a specific attribute of the order object.
In case you checkout an order with a logged customer — i.e. using a customer token — the customer associated with the order is forced to be the same as the customer associated with the token and there is no way to explicitly change it. So all you need to do to associate the logged customer to the order is send a PATCH
request to the /api/orders/:id
endpoint, with empty attributes.
When adding a customer to an order, you might want to prompt the customer to subscribe to your newsletter. This can be easily achieved by creating a customer_subscription
resource, using the customer email and any subscription reference
— e.g. "Newsletter".
When you add a customer to a draft
order, the order status changes to pending
. Pending orders are suitable to be recovered with specific marketing campaigns, as they contain a way to contact the customer even if the order has not been placed yet.
See our documentation if you need more information on how to update an order, get a customer token, or create a subscription.