1
Send authenticated customer information
2
Create cart with customer profile
3
Manage customer profiles
Create or update a profile without a shopper
checkoutCustomerProfileAuthenticate requires the shopper to be present, since it issues a one-time password for that checkout session. When you want to create or update a profile outside of a checkout—loading your customer list ahead of time, syncing profile changes from your own system, or attaching tax exemptions before a customer's first order—use checkoutCustomerUpsert instead.
1
mutation checkoutCustomerUpsert($input: CheckoutCustomerProfileInput!) {2
checkoutCustomerUpsert(input: $input) {3
customerId4
email5
name6
phone7
locations {8
administrativeArea9
countryCode10
line111
line212
locality13
postalCode14
}15
}16
}Profiles are matched on customerId, so calling this repeatedly updates the same profile rather than creating duplicates. It is safe to run across your whole customer list on a schedule.
Three things to know about how updates apply:
- Omitted fields are left alone. Sending only
nameupdates the name and leaves email and phone as they were. - Values cannot be cleared. Sending an empty value is treated the same as omitting the field, so there is no way to remove a name, email, or phone once set.
- Addresses are only added. A location that already exists on the profile is not duplicated, and locations left out of the request are not removed.
GraphQL API ReferenceTypes, inputs, and operations used in this guide
MUTATIONS
Customer profiles
Pre-load recurring shopper information into Zonos Checkout.Customer profiles streamline your checkout experience by allowing customers with an account to pre-load their address and payment details.
This feature is currently only available for custom API integrations. This feature is not yet available for merchants using Checkout plugins.
If you sell to resellers, government agencies, or nonprofits, you can also sync their tax exemption certificates to a customer profile.