REST API

Send a curated gift with a single POST request. No account or API key required — just describe the recipient, set your budget, and we return a Stripe checkout link. Pay, and we handle the rest.

Base URLhttps://trydoorstep.app

Format

JSON

Auth

None required

Payment

Stripe Checkout
POST/api/checkout

Create a gift order and receive a Stripe Checkout URL. The recipient gets a curated, branded package; you get the tracking number.

Request Body

ParameterTypeRequiredDescription
budgetnumberRequiredGift budget in USD. Minimum $15. This amount goes entirely toward the gift.
occasionstringOptionalThe occasion (e.g. "thank_you_after_demo", "birthday", "congratulations").
descriptionstringOptionalAdditional context for gift selection ("coffee lover", "just ran a marathon").
recipient.namestringRequiredFull name of the recipient.
recipient.companystringOptionalRecipient company name.
recipient.addressstringRequiredStreet address for delivery.
recipient.citystringRequiredCity.
recipient.statestringRequiredState (e.g. "TX", "CA").
recipient.zipstringRequiredZIP code (e.g. "78701").
recipient.countrystringOptionalCountry code. Defaults to "US". Only US is supported.
sender.namestringOptionalYour name (appears on the gift card).
sender.emailstringRequiredYour email (for Stripe receipt and order updates).

Example Request

cURL
curl -X POST https://trydoorstep.app/api/checkout \
  -H "Content-Type: application/json" \
  -d '{
    "budget": 75,
    "occasion": "thank_you_after_demo",
    "description": "Coffee lover, recently ran a marathon",
    "recipient": {
      "name": "Sarah Chen",
      "company": "Acme Corp",
      "address": "123 Main St",
      "city": "Austin",
      "state": "TX",
      "zip": "78701",
      "country": "US"
    },
    "sender": {
      "name": "James Maxwell",
      "email": "james@company.com"
    }
  }'

Response 200 OK

{
  "url": "https://checkout.stripe.com/c/pay/cs_live_..."
}

Redirect your user to this URL (or open it in a browser) to complete payment. After payment, they land on a confirmation page with their order ID.

Error Responses

400 Bad Request
{ "error": "Minimum budget is $15" }
400 Bad Request
{ "error": "Missing required fields" }

Pricing

Your budget goes entirely toward the gift. A flat $5 concierge fee is added at checkout — this covers AI selection, personalization, branded packaging, and delivery coordination.

Gift budget (your choice)$15+
Concierge fee$5.00
Total chargedbudget + $5

Example: a $50 gift budget results in a $55 total charge.

Order Lifecycle

After you create an order and complete payment, here's what happens behind the scenes.

Pending Payment

Order created. Waiting for the Stripe checkout to be completed.

Paid

Payment received. Our concierge begins sourcing the perfect gift based on your description and budget.

Processing

Gift has been selected, purchased, and shipped to our warehouse for repackaging with branded packaging and a handwritten note.

Shipped

The branded package is on its way to the recipient. Tracking number available.

Delivered

Successfully delivered. The recipient has their gift.

Failed

Something went wrong during fulfillment. We'll reach out to resolve it.