Client Features
The following features are enabled based on client configuration. Contact the Shadowfax team to enable them for your account.
OTP Verification
Drop OTP
For customer delivery, Shadowfax generates an OTP and sends an SMS to the customer. The rider validates delivery using this code.
Code
Pass delivery_otp in drop_details at order creation, or let Shadowfax generate it automatically when the feature is enabled.
Pickup OTP
Two options for pickup validation:
- COID validation — rider enters the last 4 digits of
client_order_idbefore marking pickup. - Custom pickup OTP — pass
pickup_otpinorder_detailsat order creation and share it with the delivery partner.
If pickup_otp is null, no OTP flow applies during pickup.
Return OTP
When the RTS (return) leg is configured, return delivery can be validated via return_otp passed at order creation. Share the OTP with the rider for marking RTS.
By default, Shadowfax uses signature-based RTS delivery.
Pickup and Drop Geofence
Ensures the rider is within a configured radius of the pickup or drop coordinates before marking pickup or delivery. Reduces delivery fraud.
Pass delivery_geofence_radius (in meters) in drop_details to set the drop geofence radius.
Geocode Drop Location
When enabled, the drop address is geocoded into latitude and longitude. Pass a complete Google-compatible address for accurate geocoding.
RTS (Return to Source)
If SKUs are not delivered and need to be returned to the store, RTS must be enabled.
Set in order creation:
| Field | Description |
|---|---|
allow_undelivered | If true, rider can mark undelivered and initiate RTS |
rts_required | If true, order is eligible for RTS |
RTS confirmation options:
- Signature Based — standard (default)
- Return OTP Based — pass
return_otpat order creation
See Order Lifecycle for the RETURNED_TO_SELLER status and Callbacks for the RTS callback payload.
See the Place Order API for all optional fields.