Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Airpay (SA : RET10) - Complaince Check #2725

Open
FarheenNazQA opened this issue Nov 4, 2024 · 0 comments
Open

Airpay (SA : RET10) - Complaince Check #2725

FarheenNazQA opened this issue Nov 4, 2024 · 0 comments

Comments

@FarheenNazQA
Copy link

FarheenNazQA commented Nov 4, 2024

Seller should send ‘NACK’ for the following :-

Flow-1

On_search-

  • Variants are not captured properly, categories.id should be associated with at least 2 items.
  • bpp/provider/fulfillments and bpp/fulfillments - objects don't match.(as in bpp/fulfillments 2 ids are given Delivery,self-pickup but in bpp/provider/fulfillments only Delivery is mentioned.
  • Wrong gps under bpp/providers/locations.(as gps is showing state odisha and in address different state mentioned).
  • Holiday dates should be future date.
  • Invalid EAN code given,(item:id:oc_103) check for others.
  • bpp/providers.tags.close_timing.start - value should be in the format of timestamp.
  • The number of unique category_id should be equal to count of serviceability in bpp/providers.tags, serviceability for ‘Pasta, Soup and Noodles’ is missing.
  • The timings object Self-Pickup is not present in the bpp/providers/fulfillments, shouldn’t be provided in bpp/providers/tags"

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_id": "oc_72",
  •                     "@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

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

1 participant