Open FarheenNazQA opened 3 weeks ago
/
, (\ /)
.bpp/provider/descriptor
short and long description should not be placeholder values.categories_id abc123-45678
is not associated with any item.bpp/provider/tags.serviceability.location
: location_id
is not captured correctly.item_id oc_103
, please check others.If the seller wants to collect the payment, they should send:
{ "payment": { "@ondc/org/buyer_app_finder_fee_type": "percent", "@ondc/org/buyer_app_finder_fee_amount": "3", "@ondc/org/settlement_details": [ { "settlement_counterparty": "seller-app", "settlement_phase": "sale-amount", "settlement_type": "upi", "beneficiary_name": "xxxxx", "upi_address": "gft@oksbi", "settlement_bank_account_no": "XXXXXXXXXX", "settlement_ifsc_code": "XXXXXXXXX", "bank_name": "xxxx", "branch_name": "xxxx" } ] } }
If the buyer collects the money, then only send Payment.bpp_collect
.
created
, how is the time range provided in the start and end objects before the order is accepted?start.time.range
greater than end.time.range
?tracking
is true, then tracking details should be provided.tracking
is true, /track
and /On_track
should also be provided.fulfillment.tags.bpp_terms
should be maintained throughout the trail.provider_tax_number
is incorrect, and other details in tags were not provided before or are placeholder values.fulfillment.end.timestamp
is missing.0
.@amultamse
Seller should send ‘NACK’ for the following :-
Flow-1
On_search-
search_inc
Buyer finder fee does not match with search call.
On_search_inc-
bpp/providers/fulfillments duplicate fulfillments id with same type- delivery” with “shouldn’t be provided if there are no changes”
Maximum count can be -99 (check for id": "oc_72")
No incremental changes found in on_search_inc for the items.id : ‘oc_73’
Only incremental changes should be provided in the on_search_inc call, like either in categories/items or provider is enable or disable. For more info kindly refer Retail Contract
Flow-2
select-
fulfillments.end.gps - there shouldn’t be any gap between longitude,latitude.
Wrong gps address.
init-
fulfillments.end.gps - there shouldn’t be any gap between longitude,latitude.
fulfillments.end.Gps doesn’t match with select and init action call.
On_init-
gps coordinates in fulfillments[0].end.location mismatch in /select & /on_init.
Only tax_number and provider_tax_number should be provided in order.tags, as they are not enabled yet.
confirm
Payment.status should be “PAID” only when payment.type is “ON-ORDER”.(its Payment.status NOT-PAID)
How the collected_by is changed from ‘Bpp’ to ‘Bap’ ?
Message/order/id Order ID should be alphanumeric upto 32 letters max.
Billing.address.”door” - keys doesn't match with init billing object and contract.Invalid field provided
Fulfillment Tracking mismatch with the on_select call.
Fulfillments.end.location gps is not matching with gps in /select.
On_confirm
Ranges provided in fulfillment.start.timestamp should be within time_to_ship range as provided in on_search and fulfillment.end.timestamp should be within TAT range as provided in on_select.
message/order/tags/1/list/0/value Value for tax_number must be a valid tax number i.e alphanumeric with 15 characters ",
on_status_pending-
When the onConfirm Order State is 'Accepted', the on_status_pending is not required.
On_status_packed -
message/order/id Order ID should be alphanumeric upto 32 letters max or UUID"
On_status_picked
tracking object is missing in the delivery fulfillment tags, as the tracking is set to true already.
Kindly provide a valid invoice url- url is not accessible.
on_status_out_for_delivery-
message/order must have required property 'documents'
Tags are mandatory in Delivery Fulfillment for on_status_out_for_delivery. Tracking and routing object is missing.
on_status_delivered-
message/order must have required property 'documents'
Tags are mandatory in Delivery Fulfillment for on_status_delivered.
order.updated_at timestamp should be less than or eqaul to context timestamp for /on_status_delivered.
order/updated_at timestamp can't be future dated (should match context/timestamp)
Flow-3
Select_out_of_stock-
fulfillments location.gps is not as per the API contract
on_select_out_of_stock-
message/order/provider must have required property 'locations'.
provider.locations[0].id is missing in /on_select.
The error.message provided in the on_select_out_of_stock should be in the form of an array with proper error_code and
item_id. For Example: [{\"item_id\":\"I1\",\"error\":\"40002\"},{\"item_id\":\"I2\",\"error\":\"40002\"}, {\"item_id\":\"I3\",\"error\":\"40002\"}]",
Delivery line item must be present in quote/breakup (if location is serviceable)"
on_status_out_for_delivery-
message/order.fulfillments- Mismatch occur while comparing Delivery fulfillment start.timestamp with the on_status_picked. (timestamp should be same)
on_status_delivered-
Tags are mandatory in Delivery Fulfillment for on_status_delivered.
Flow-4
cancel-
message.order_id-Order ID should be alphanumeric upto 32 letters max or UUID",
Transaction Id should be same from /select onwards.
Order Id in /cancel and /confirm do not match.
on_cancel -
Invalid sign in payment object. eg ."@ondc\/org\/buyer_app_finder_fee_type": "percent",
The count of cancellation fulfillments is not equal to the count of forward fulfillments or invalid fulfillment id.(forward fulfillment doesn't match with the on_search bpp/providers/fulfillments)
precancel_state.fulfillment_state of on_cancel is not equal with the on_confirm fulfillment state.
"@ondc\/org\/item_quantity": {
"count": 0
},
"title": "Pavizham Rice 10KG",
"@ondc\/org\/title_type": "item",
Flow-5
on_select
message/order/items—> fulfillment id doesn’t match with any fulfillment id in on_search, check the same in other calls also
Init
message/order/billings—> phone number is not proper.
confirm
message/order/payment—>collected by doesn’t match with on_init
on_confirm-
Message/order/fulfillment—>@ondc\/org\/provider_name doesn’t match with on_search
Fulfillment/start/location—> gps and their corresponding address is not matching. Ie. Area code, check in other calls also
fulfillment.end.timestamp should be within TAT range as provided in on_select
fulfillment.start.timestamp should be within time_to_ship range as provided in on_search
on_status_pending-
not required as there is already order state is accepted in on_confirm.
on_cancel-
Can’t be use in the On cancel RTO call. Kindly check reason code sheet.
Cancelled by should be from seller side or logistic side
Precancel fulfillment state should be out-for-delivery.
Precancel updated_at timestamp should be equal to out-for-delivery updated_at timestamp.
New Fulfillment for cancelled items, descriptor code should be either of "RTO-Initiated", -"RTO-Delivered", "RTO-Disposed" for cancelled item.
New fulfillment for cancelled item have missing object start and end.(Rto fulfillment start and end object is missing. Kindly check contract once)
on_status_rto_delivered.-
Fulfillment start location should be of buyer location in RTO fulfillment
Fulfillment end location should be of seller location in RTO fulfillment
Fulfillment timestamp is missing in end location in RTO fulfillment
Flow-6
On_update_part_cancel-
message/order/items/1/quantity/count must be integer.(error eg -"count": 5, 5 should be in “”)
message/order/quote/breakup/1/price/value must be string(eg.-
"price": {
"currency": "INR",
"value": 0
}
initiated_by should be preprod-ondc.airpay.ninja, should be from the seller side.
Error eg-
{
"code": "initiated_by",
"value": "buyer-app-preprod-v2.ondc.org"
}
on_status-pending
Settlement_details for the part cancellation is not carry forwarded
on_status_packed-
context must have required property 'ttl' (missing in all Flow’s context)
Tags are mandatory in Delivery Fulfillment for on_status_picked.
on_status_picked-
Tags are mandatory in Delivery Fulfillment for on_status_picked.
on_status_out_for_delivery-
Tags are mandatory in Delivery Fulfillment for on_status_out_for_delivery",
on_status_delivered-
context must have required property 'ttl' (missing in all Flow’s context)
Tags are mandatory in Delivery Fulfillment for on_status_picked.
update_reverse_qc-
If parent_item_id is not associated then no need to send it blank.
on_update_interim_reverse_qc-
message/order/quote/breakup/1/price/value must be string",
message/order.payment/@ondc/org/settlement_details -should be carry forward.( settlement_details for refund is missing i.e. for part cancellation)
context/timestamp of /on_update_interim_reverse_qc should be greater than context/timestamp of /update_reverse_qc. How are you sending the on_update_iterim action call before the return request is raised ?
on_update_approval-
return fulfillment/start/time/range- start/time/range/start should not be greater than or equal to start/time/range/end in return fulfillment( error -start.time.(start and end times are same)
on_update_picked-
returnFF/start/time/timestamp-start/time/timestamp of return fulfillment should be in the valid time/range as in on_update_approval. },
If the quote_trail value is ‘0’, shouldn’t be provided in the quote_trail
update_settlement_reverse_qc-
context/timestamp/-context/timestamp of /update_settlement_reverse_qc should be greater than context/timestamp of /on_update_picked. How the timestamps are same for both the calls ?
on_update_delivered-
this call is missing.
on_update_interim_liquidated-
context/timestamp/-context/timestamp of /on_update_interim_liquidated should be greater than context/timestamp of /update_liquidated.How are you sending the on_update_iterim action call before the return request is raised ?
on_update_liquidated-
message/order/items/3/quantity/count must be integer.(check for others)
message/order/quote/breakup/1/price/value must be string.(check for others)
paymets.settlement_details Are not carry forward for the part cancellation and reverse qc
update_settlement_liquidated-
context/timestamp/-context/timestamp of /update_settlement_liquidated should be greater than context/timestamp of /on_update_liquidated.
Timestamp for /on_init api cannot be greater than or equal to /update_settlement_liquidated api.
Invalid calls are present : on_update_settlement_liquidated, on_update_settlement_part_cancel, on_update_settlement_reverse_qc. Kindly refer to the contract once before submitting the logs
@amultamse