Payment Method & Payment Terms Validation and Vehicle Type Enhancements
1. Payment Method & Payment Terms Validation
- Added validation rules to ensure only valid payment method & payment terms pairs can be used
- Implemented stricter checks to prevent incorrect or unsupported payment combinations
- Improved error handling with descriptive user feedback for invalid entries
Supported Payment Methods & Payment Terms Pairs
| Payment Method | Supported Payment Terms |
|---|---|
cash | cash_on_pickup, cash_on_delivery, 2_days, 5_days |
check | check_on_pickup, check_on_delivery, 2_days, 5_days, 7_days, 10_days, 15_days, 20_days, 30_days, 45_days, 60_days |
cashiers_check | check_on_pickup, check_on_delivery, 2_days, 5_days, 7_days, 10_days, 15_days, 20_days, 30_days, 45_days, 60_days |
money_order | check_on_pickup, check_on_delivery, 2_days, 5_days, 7_days, 10_days, 15_days, 20_days, 30_days, 45_days, 60_days |
comchek | check_on_pickup, check_on_delivery, 2_days, 5_days, 7_days, 10_days, 15_days, 20_days, 30_days, 45_days, 60_days |
ach | on_pickup, on_delivery, 2_days, 5_days, 7_days, 10_days, 15_days, 20_days, 30_days, 45_days, 60_days |
direct_deposit | on_pickup, on_delivery, 2_days, 5_days, 7_days, 10_days, 15_days, 20_days, 30_days, 45_days, 60_days |
credit_card | on_pickup, on_delivery, 2_days, 5_days, 7_days, 10_days, 15_days, 20_days, 30_days, 45_days, 60_days |
venmo | on_pickup, on_delivery, 2_days, 5_days, 7_days, 10_days, 15_days, 20_days, 30_days, 45_days, 60_days |
cashapp | on_pickup, on_delivery, 2_days, 5_days, 7_days, 10_days, 15_days, 20_days, 30_days, 45_days, 60_days |
uship | on_pickup, on_delivery, 2_days, 5_days, 7_days, 10_days, 15_days, 20_days, 30_days, 45_days, 60_days |
zelle | on_pickup, on_delivery, 2_days, 5_days, 7_days, 10_days, 15_days, 20_days, 30_days, 45_days, 60_days |
superpay | 1_3_days, 5_days, 10_days, 15_days, 20_days, 30_days |
other | other, ach, cash_on_pickup, cash_on_delivery, quickpay, check_on_pickup, check_on_delivery, 2_days, 5_days, 7_days, 10_days, 15_days, 20_days, 30_days, 45_days, 60_days |
Example Invalid Request
Request: POST <base_url>/v1/public/orders
{
"payment": {
"method": "cash",
"terms": "10_days"
}
}
Response:
{
"status_code": 400,
"error": "Invalid payment terms '10_days' for method 'cash'. Allowed terms are: [cash_on_pickup, cash_on_delivery, 5_days, 2_days]"
}
2. Vehicle Type Validation
- Added
vehicle.typeas a mandatory field for all vehicle-related entries - Implemented validation rules to prevent incorrect vehicle type submissions
Supported Vehicle Types
sedan2_door_coupesuvpickup4_door_pickupvantruck_daycabtruck_sleepermotorcycleboatrvheavy_machineryfreightlivestockatvtrailer_bumper_pulltrailer_goosenecktrailer_5th_wheelother
Example Invalid Request
Request: POST <base_url>/v1/public/orders
{
"vehicles": [
{
"type": "car"
}
]
}
Response:
{
"status_code": 400,
"error": "Invalid vehicle type 'car'. Allowed types are: [sedan, 2_door_coupe, suv, pickup, 4_door_pickup, van, truck_daycab, truck_sleeper, motorcycle, boat, rv, heavy_machinery, freight, livestock, atv, trailer_bumper_pull, trailer_gooseneck, trailer_5th_wheel, other]"
}
General Improvements
- Optimized API request validation for better data quality.
- Updated API documentation to reflect the latest validation rules.
Migration Steps
- Ensure all API requests include valid
payment.methodandpayment.termspairs. - Validate
vehicle.typebefore submitting requests. - Review API documentation for the updated validation rules.
Support
For assistance, contact support@superdispatch.com.