Programmatic Account Provisioning (Beta)
Jet Delivery supports a fully programmatic onboarding flow.
This allows systems, platforms, and agent-driven workflows to create an account,
verify email ownership, provision a customer record, and activate a user — entirely via API.
Business email is required. Rate limiting and automated abuse controls are enforced.
Required sequence
- Pre-register → create pending record
- Verify email → link (recommended) or OTP
- Start → receive
customer_no
- Step 1 → activate user / frequent caller
Optional: Step 2 (billing update) and payment enablement check.
Prerequisites & guardrails
- Business email required
- Email verification required before provisioning
- OTP attempts limited (resend if exceeded)
- Rate limiting enforced
OTP is delivered via email and is never returned by the API.
Most integrations should use the verification link.
Step A — Pre-register
curl -X POST "https://www.jetdelivery.com/api/v1/accountsetup/?action=pre-register" \
-d "email_address=YOUR_BUSINESS_EMAIL" \
-d "password=YOUR_PASSWORD" \
-d "es_code="
Returns wait_idx. A verification email is sent immediately.
{
"data": {
"result": "success",
"message": "Email validation sent",
"wait_idx": "12345",
"verify_expires": "2026-03-01T15:33:00.0000000Z",
"is_validated": "N"
}
}
Step B — Verify email ownership
Recommended: Click the verification link in the email.
Alternative (API) — Verify via OTP
Use the OTP delivered in the verification email (OTP is never returned by the API).
curl -X POST "https://www.jetdelivery.com/api/v1/accountsetup/?action=pre-register-verify" \
-d "idx=WAIT_IDX" \
-d "email_address=YOUR_BUSINESS_EMAIL" \
-d "verify_code=123456"
{
"data": {
"result": "success",
"message": "Email verified."
}
}
Optional — Resend verification email
curl -X POST "https://www.jetdelivery.com/api/v1/accountsetup/?action=pre-register-resend" \
-d "idx=WAIT_IDX"
Generates a new OTP (if used) and refreshes expiration window.
Check verification status
curl -X POST "https://www.jetdelivery.com/api/v1/accountsetup/?action=pre-register-check" \
-d "idx=WAIT_IDX" \
-d "email_address=YOUR_BUSINESS_EMAIL"
{
"data": {
"result": "success",
"validation_key": "YOUR_VALIDATION_KEY"
}
}
Step C — Start provisioning
This is where you receive your permanent customer_no.
Safe to retry (idempotent).
curl -X POST "https://www.jetdelivery.com/api/v1/accountsetup/?action=start" \
-d "validation_key=YOUR_VALIDATION_KEY"
{
"data": {
"result": "success",
"customer_no": "12345",
"frequent_caller_id": "",
"has_firmographics": "N"
}
}
Step D — Activate account (Step 1)
curl -X POST "https://www.jetdelivery.com/api/v1/accountsetup/?action=step1" \
-d "validation_key=YOUR_VALIDATION_KEY" \
-d "first_name=Jane" \
-d "last_name=Doe" \
-d "customer_name=Example Company" \
-d "local_addr1=123 Main St" \
-d "local_city=Los Angeles" \
-d "local_state=CA" \
-d "local_zip_postal=90021" \
-d "local_phone=2135551212"
Creates the primary user and enables authentication.
Optional — Billing address update (Step 2)
curl -X POST "https://www.jetdelivery.com/api/v1/accountsetup/?action=step2" \
-d "validation_key=YOUR_VALIDATION_KEY" \
-d "billing_addr2=PO Box 123" \
-d "billing_city=Los Angeles" \
-d "billing_state=CA" \
-d "billing_zip_postal=90021"
Only required if billing/remittance address differs from Step 1 address.
Optional — Payment enablement check
curl -X POST "https://www.jetdelivery.com/api/v1/accountsetup/?action=registered-with-stripe-check" \
-d "validation_key=YOUR_VALIDATION_KEY"