ONDC-Official / verification-logs

ONDC Pre-production issue & discussion board
22 stars 309 forks source link

MAGICPIN - compliance issues #245

Closed BLR-0118 closed 2 years ago

BLR-0118 commented 2 years ago
  1. All APIs - check the difference in timestamp between your response & request. Something is wrong with your timestamp;
  2. /on_select - items attributes not compliant with API contract;
  3. /on_init - why's there a difference in payment attrs with what's sent in /init?
  4. /on_confirm - doesn't have any value for tracking. Why is /track returning nack?
BLR-0118 commented 2 years ago

@tarosh3

tarosh3 commented 2 years ago

@BLR-0118 If the tracking is false then what should we send? nack or should we send status as inactive? Also is /track mandatory to implement?

BLR-0118 commented 2 years ago
  1. /on_search - valid fssai license no is of 14 digits;
  2. /select - item id selected is not returned in /on_search. Need a complete end-to-end flow to verify the logs;
  3. /confirm & /on_confirm - order states are not correct; also, when payment is collected by "BAP" and transaction_id logged, why does it change in /on_confirm? Also, no fulfillment state?
  4. /on_status - for same order as in /confirm, provider location & desc not in /on_search. Can't correlate. Also, no fulfillment state?
  5. No support, update, cancel APIs?
BLR-0118 commented 2 years ago

Also check compliance with checklist here

BLR-0118 commented 2 years ago

@tarosh3

tarosh3 commented 2 years ago

Hi @BLR-0118 Added the updated logs with mystore

  1. /update api is not available from mystore buyer app as the items are non returnable and non cancellable
  2. mystore /support api is not working
  3. At the time of order creation the state is set as "created", once the merchant accepts the order it will be updated to "accepted"
BLR-0118 commented 2 years ago
  1. /on_search should have same transaction_id and message_id as /search. This isn't the case here;
  2. /on_select - a. items.fulfillment_id isn't the same as fulfillment.id; b. quote.price.value isn't adding up to the breakup prices (due to decimal precision issues);
  3. /on_init - a. why is the fulfillment.id different from what is in /on_select? b. Same issue with quote.price.value as in 2; c. @ondc/org/settlement_window doesn't have correct ISO8601 duration format (should be "P2D");
  4. /on_confirm - return_window is "0" in /confirm but changes to "P2D" in /on_confirm. How can it be changed by sellerapp when the value is supposed to be set by the collector; Pls fix the above & also document your compliance with this checklist @tarosh3
BLR-0118 commented 2 years ago
  1. /on_search - decimal precision isn't consistent - 3 decimal places for 1 item, no decimal places for others; ttl for 1 item of 30s means what? ttl of 30s for provider means what? ttl means validity of the catalog in the buyer app cache. It'll take 30s for the buyer app to consume the catalog itself;
  2. /on_confirm - order state is "Created". When will order be accepted? F&B orders are typically auto-accept; Pls also document your compliance with this checklist
BLR-0118 commented 2 years ago

@tarosh3 - questions for you:

  1. When merchant accepts order, how do you communicate status to buyer app?
  2. Context.ttl should be "PT30S" - this identifies the validity of the message and can be different from the catalog ttl (which identifies how long the catalog can be cached by buyer apps). Pls clarify 1 & fix 2 and let me know when done. You don't need to resubmit logs.
tarosh3 commented 2 years ago
  1. As soon as the merchant accepts the order, I will get an acceptance api call from the magicpin OMS and I will further call the on_status api with the state as "Accepted". Also, the state will be updated in the db as well. So if we get the /status call this state will be sent to the buyer app.
  2. I have fixed the context.ttl as "PT30S"