Document Status | REVIEWED |
---|---|
Document Owner(s) | |
Reviewers |
Business Problem
The RBIberia relates that recent analyses have highlighted a significant risk of fraud in home delivery orders that are paid for using physical payment methods (Cash, terminal at home, voucher physical).
To safeguard our operations and protect both our business and customers from fraudulent activities, it is essential to implement additional rules that restrict the use of physical payments under certain scenarios. In these scenarios, there are some rules that can be controlled by the user, so we need to create a way for the user to change these to one or many restaurants.
These rules are:
First buy on Home Delivery: In first buy of user, the value to user can pay with physical payments will have a limitation, e.g. $30.00
Buy on Home Delivery: In second or more buy of user, the value to user can pay with physical payments will have a limitation, e.g. $50.00;
Prevent Repeat Failures: In cases where the last order involved a physical payment method and was marked as a delivery failure, the next order from the same user will be restricted to only online payment methods.
Delivery failure motives:
Wrong address
Customer was not there
Fake order
Problems with payment
In case some of these rules are active, the WL-app must hide the physical payments to the user.
UX Proposal - Payment Method Section
Decision
We will create a new screen on DOP and the user can choose and manipulate the “rules” to one or many restaurants. This information will be save on Sanity and the WL-app get these values when choose the restaurant, so the WL-app can verify if allow or not the payment by physical method.
Store this information in restaurant on Sanity
Main local to store information about restaurant;
The information in Sanity is only ready-only, to change this information is only by DOP.
Manipulate this information on DOP (FZ-Portal)
Create a new page with this information;
Create rules of access in this page, reference here;
The users can choose which rules they want to use;
The users can adjust the limit values to purchases in home delivery;
The users can make this to your restaurants;
The franchisees can change this information as well;
How to use, here;
To save this information on Sanity, we will use the Sanity Client Lib to connect DOP with Sanity.
WL-app control the exhibition of physical payments
On Home Delivery, the WL-App get the information about the restaurant, and in this data there are the values about cash limitation:
With cash limitation data, the WL-App can validate if some rule is active and if need to hide physical payments;
This control is by each user;
At the moment of payment, the WL-app retrieves information about the user's most recent delivery order using the
getUserOrders
function. This includes restaurant details and any applicable limitation rules. Based on this information, we need to implement logic that hides the physical payment option if any limitation is met.For example, if it is the user's first home delivery purchase, which we can determine if the
getUserOrders
query returns zero orders of this type, and the selected restaurant has a rule that the first purchase must not exceed $30.00 (as specified by the restaurant's information from Sanity), then the WL-app can check the current order value on this screen. If the order total exceeds the limit, the WL-app will hide the physical payment option.With all these details, the WL-app can effectively decide whether to display or hide the physical payment option.
Consequences
Create a new field in Restaurant Document on Sanity to receive this information;
Create a new screen on DOP (FZ-Portal) to user can manipulate this information and to send to Sanity;
Use the Sanity Client Lib to get and save information on Sanity, this lib already available on DOP.
Create a new logic on WL-App in payment page to control the exhibition of according the information and limitation that get of Restaurant;
0 Comments