The simplest checkout flow possible: Go from cart to completed order in a single API call. Perfect for merchants who want to maximize conversion with minimal friction.
Why 1-Step Checkout?
Traditional checkout flows require multiple steps:- Create cart → 2. Add items → 3. Set shipping → 4. Calculate tax → 5. Process payment → 6. Complete order
place-order API, you can do all of this in one single API call.
Benefits
Higher Conversion
Reduce checkout abandonment with fewer steps
Faster Integration
Implement in hours, not weeks
Less Complexity
One endpoint to maintain instead of six
How It Works
Theplace-order API combines cart creation, item addition, shipping calculation, and payment processing into a single atomic operation:
Real-Time Updates: The
place-order API supports Server-Sent Events (SSE) for real-time order processing updates. Perfect for showing progress indicators during checkout.Quick Implementation
1
Collect Customer Information
Gather items, shipping address, and credit card details in your checkout form
2
Encrypt Credit Card
Use Firmly’s public key to JWE-encrypt card details for secure transmission
3
Call place-order API
Submit everything in one API call and handle the response
Credit Card Encryption
The credit card data must be encrypted as a JWE token containing:Complete Example
Here’s a full implementation of 1-step checkout:Important Security Notes
Real-Time Features with SSE
Server-Sent Events Support: Both
place-order endpoints (v1 and v2) support SSE for real-time order status updates. This enables you to show live progress during checkout processing.Using SSE for Live Updates
SSE Event Types
order_processing: Order is being validated and processedpayment_processing: Payment is being authorizedorder_completed: Order successfully placed with order detailserror: Processing failed with error details
When to Use 1-Step Checkout
- Perfect For
- Consider Alternatives If
- Single vendor stores
- Standard shipping only
- High-volume, low-complexity products
- Mobile-first experiences
Error Handling
Theplace-order API provides detailed error responses:
- InvalidAddress: Address validation failed
- InsufficientStock: Product not available
- PaymentFailed: Card declined or invalid
- InvalidVariant: Product SKU not found
- InvalidCard: Card encryption or validation failed
Next Steps
API Reference
Complete place-order API documentation
Payment Encryption
Learn about secure payment handling
Simple Cart Guide
Alternative multi-step approach
Testing Guide
Set up test environment
Support
Need help implementing 1-step checkout?- Integration Support: [email protected]
- API Status: status.firmly.work
- GitHub: Report issues