user.created

Once per checkout, after checkout.started, when the store saves the shopper with a new Open Cart: what data-next-lead asks for is in (by default a first and last name and a valid email), checked when the shopper leaves a field they changed. The store keeps the user for marketing, as accepts_marketing allows, and the cart for cart.abandoned.

CODE
next.on('user.created', (data, event) => {});

Data

Present: always; optional when it may be missing; campaign once the campaign is loaded; priced once the server priced the cart.

FieldTypePresent
emailstringoptionalAs typed, trimmed; none when data-trigger-on created the user without one.
first_namestringalways
last_namestringalways
phonestringoptionalIn E.164 once the address service read it, else the digits typed.
accepts_marketingbooleanalwaysThe marketing checkbox, as sent with the Open Cart and the order.
languagestringalwaysThe language the store keeps for the shopper, such as en.
ipstringoptionalThe shopper's IP address, as the store recorded it with the Open Cart, else as the address service saw it; none when neither knows it.
user_agentstringalwaysAs the store recorded it with the Open Cart, else the browser's.

Example

The second argument, with data inside. See Events for the envelope's fields.

CODE
{
  "event_id": "3f2b8c1d9e7a4b6c8d5e2f1a0b9c8d7e",
  "event_type": "user.created",
  "object": "user",
  "data": {
    "email": "jane@example.com",
    "first_name": "Jane",
    "last_name": "Doe",
    "accepts_marketing": true,
    "language": "en",
    "ip": "203.0.113.7",
    "user_agent": "Mozilla/5.0 (test)"
  },
  "created_at": "2026-11-04T08:30:00.000Z",
  "session_id": "0b8f3c2d1e4a4f6b9c7d5e3f2a1b0c9d",
  "sdk_version": "0.5.0"
}