Proposal for Nine Arches One source

Shape

PROPOSAL FOR  

NINE: ARCHES WEBSITE 

_________________________________________________________________________________ 

JOBIN AND JISMI IT SERVICES LLP 

10 MAY 2022 

Proposal For Nine: Arches Website 

This proposal also covers the engagement scope of Jobin and Jismi IT Services LLP, as official implementation partner Of Oracle NetSuite. 

Submitted To  

Mark Skorpil 

Chief Operating Officer 

One Source IML 

Submitted By  

Rijo John 

Project Manager 

Jobin and Jismi IT Services LLP 

Submitted on 10/05/2022 

Proposal Version 1.0 

Table of contents 

Requirement 

A new project called “Nine Arches” require a custom website. The website will be open to the public and needs to replicate all functionalities in Aquverse website to the new website. 

Solution 

We can develop the “Nine Arches” website by replicating all functionalities similar to “Aquverse” website. The design of the Nine Arches website will be confirmed in the initial stage of the development and backend will be developed in the Netsuite. 

Following will be describing the elements of each page and functionalities. 

New Registration/Signup page 

The new users can sign up by creating a new account. A new user can create a customer using the signup form.  

  • When a new customer sign in, the customer will create with entered details in the NetSuite account. 
  • By using Custom encryption, the credentials were encrypted then stored in a field called “encrypted password” and also the timestamp (Time of customer creation) will store in “timestamp” field under Webstore subtab. 
  • After submitting the signup details, it’ll check for existing customer by email id. If there is no customer found then show signup successful message and will create as new customer. 

Login Page 

  • The user enters their login credentials (email, password), search the NetSuite account for customer with E-mail provided by the user exist or not.  
  • If a customer is existing in NetSuite and check with encrypted password and timestamp shows when the customer record is created. 
  • The user can log in if the entered credentials and customer record credentials are identical. Once logged in after authentication, the user is navigated to the homepage. 

In case of invalid password or login attempt, a notification appears. 

Reset Password Page 

  • When the user forgets the password then clicks the reset password button to reset the password 
  • After entering the valid E-mail click the reset button then by that email search for the customer and taken details (internal id, customer name, email id). 
  • Creating a token for setting duration for password reset link(approximately 10 min). 
  • Sending customer, a password reset link with customer internal id and token as email. 
  • When the customer clicks the link and a page will show for creating a new password. 
  • After entering the password it’ll updated in respected customer record. 

My Profile Page 

  • When the customer wants to see profile and account details. 
  • By clicking my profile icon on the webpage, by the email id of the customer fetch all the customer details. 
  • If the customer can see the existing address and can update the address through website by enter the address details online and updating the customer record, then the address will show in website after a refresh. 
  • Customer can see billing address in my account are fetched from customer record. 
  • Customer can see all the transaction details by creating a transaction search to take every transaction did by the customer. 
  • When an order is placed by the customer it’ll generate a transaction id, by that transaction id create a search for transaction details will provide the status. 
  • As same as the order status the customer can view the invoice status. 

Navigation Bar Tabs 

Each tab redirects to the respected webpage for showing more features, the tabs are  

  • Home 
  • Shop 
  • Cart 
  • Returns  
  • FAQS 
  • Tec Specs 
  • Log In 

Upon clicking the option it’ll navigate to respected page  

Appearance Of Web Page 

Header 

The page includes Home, Shop, Cart, Returns, FAQ, Tech Specs, Login, Company Logo. 

The page also shows contact number and contact Email in the header.  

Footer 

FAQ 

FAQ is a list of questions and answers relating to a particular subject, especially one giving basic information for users of a website. 

Product List Page 

The product is showing as category wise and each categories contains related items. 

The user can add the item to cart by clicking add to cart button. If there are no items available, it will display as “Out of Stock”. The user can select the quantity of the item and can view quickly by clicking the Image 

By clicking the image, we can see detailed image of the item  

Product Fetch 

The items will fetch from NetSuite account by following steps, 

  • When the customer needs an item and selected one category on the home page itself, then it’ll do an item search with static id of home page items and fetch back to website. 
  • When customer wants a single item, then create an item search by using internal id and the item will fetch back to the website. 
  • If the customer wants all the item details, then it’ll perform a search by category id and the result will fetch all the items under that category. 
  • For every item fetch the stock status search will perform for checking if the item is available at the location or not. 

Shopping Cart 

The added items to cart can show here and the checkout process taken place when user click the button Checkout  

If the user is not logged in and tries to shop the button shows as “login for checkout” 

Shopping cart Details 

  • The customer can see the cart by clicking the cart icon, then the cart will fetch and displays the details of items. 
  • The customer can update the cart by clicking update button and it’ll navigate to item page. 
  • Upon customer needs updating, removing, deleting of shopping cart happens. 
  • Creating a custom record for shopping cart entry and for every action it will reflected to that record. 

Return 

If the customer wants to track order or return the product 

The Tec Specs contains the details of products and the user can download the details in the pdf format 

Checkout 

The customer can check out and place an order from shopping cart page. After proceeding with check out, the cart items again are checking to know stock status. 

If the stock is available and fetch details of every item that are in shopping cart, then it’ll available for placing an order.  

Delete Aging  

This is used for avoiding aging issues  

  • This aging search will perform under a scheduled time with custom record holding cart details. 
  • If the cart items are no longer accessible, out of stock or exceeded expiry date then this search will help to remove that cart record. 
  • Custom record id “customrecord_osi52_jj_aquverse_user_cart” 

PayPal Cash Refund 

If the customer is paid for an order already and when it is not completed, then it’ll perform a return authorization search to check whether the refund is coming from return authorization. 

It’ll check for the payment status is completed or not, if it not completed then call the API for re capture the payment. 

PayPal Cash Sale  

The customer can pay for their order by pay pal by using API, first it’ll check the sales order created date three days ago, if it is true then reauthorize the transaction. 

After re authorizing proceed with payment creating by using API  

When the payment is completed then every detail of PayPal payment will submit to respective cash sale record  

Custom Record  

We are developing two Custom record in NetSuite for Holding the website details  

Aquverse customer cart  

This custom record is used to hold the cart details from the website  

Fields used – Guest ID, Customer ID, Item ID, Item Quantity, Item Image URL, Item Display Name, Item Online Price 

Aquverse Home Page 

This custom record is for holding Item details and category detals  

Fields used – Item, Category 

Risks 

We are using NetSuite Suite let which acts as a backend (or bridge) between NetSuite and the website. 

Every real-time communication with NetSuite such as the cart actions, login/signup action, checkout actions, address actions, listing orders, etc is handled with the help of Suite lets. 

In short, the backend actions on the website are designed around Suite let. 

In NetSuite account there will be a governance limit . 

This means all the web services, Restlet and Suitelet can serve up to a maximum of 5 request in parallel at a given moment. 

Any new request comes at the same instance/moment while 5 requests are already in processing state by NetSuite, the newer request will fail  

Table 

Script Used in Backend Description Time Required 
Account Signup (Suite let)  When the user signup from the website, all the credentials are stored and used later for validations   10h 
Account Login (Suite let) When the user login the credentials were checked with already saved ones and allow user to logged in  10h 
Account (Suite let) The account details are fetched in this suite let  10h 
Product Fetch (Suite let) The product will fetch from NetSuite according to the category when user clicks the category 10h 
Shopping cart (suite let) This script allows to add and hold the added items from the website in related with NetSuite 10h 
Normal Checkout (Suite let) Allows to checkout by validating every detail the customer have and holds place order details  10h 
PDF (Suite let) The item details and qualifications are holding by this script and upon button click this Suite let will generate a Pdf form  10h 
Delete Aging (Scheduled Script) The cart will delete when it met the expiry date, this script will check continuously under a scheduled time provided 10h 
PayPal Cash Refund (Work Flow Action) This script will run every time the user asks for refund from PayPal, by using Api the refund can be done  10h 
PayPal on Cash sale(Work Flow Action) Search for recently created Sales order and reauthorize it by PayPal API, after reauthorizing post for searching shipment and check the status, if it is “Completed” then submit the details to that particular CASH_SALE 10h 
Script Used in Frontend JavaScript Time Required 
Login-page.js  
Load-global-function.js  
Load-global-content.js  
Category-page.js  
Cart-page.js  
Checkout-page.js  
Forgot-password-page.js  
Reset-password-page.js  
Order-list-page.js  
Product-details-page.js  
Order-status-page.js  
Paypal.js  
My-address-page.js  
Return-page.js  
User-information-page.js  
Shop-page.js  
Contact-us-page.js  
Order-status-invoice-page.js  
Faq-page.js  
Account-page.js  
Thanks-for-order-page.js  
Tech-specs-page.js  
Index-page.js  
Add-address.js  
Order-preview-page.js  
Addon-lib.js  
Error-page.js Errors-page.js Crredit-card.js  
Script Used in Frontend HTML Time Required 
Order Status Invoice.html  
Category.html  
Shop.html  
User-information.html  
Login.html  
Index.html  
Home.html  
Faq.html  
Credit-card.html  
Forgot-password.html  
Checkout.html  
PayPal.html  
Returns.html  
Contact-us.html  
Account.html  
Product-details.html  
Order-status.html  
Tec-specs.html  
My-address.html  
Thank-for-order.html  
Cart.html  
Error-page.html  
Order-list.html  
Reset-password.html   
Error-page.html  
Add-address.html  
Order-preview.html  

Leave a comment

Your email address will not be published. Required fields are marked *