OSCOMMERCE ACCOUNT CREDIT SYSTEM
Budget: $250 – $750 USD
i want to add a new payment option in oscommerce called Account Credit
if a customer selects this and proceeds it will check their balance to make sure there is enough balance to cover the order total if not the customer will be alerted and told to choose another payment method or topup first.
Alternatively we can make it dynamic so the option only shows if they have enough balance to cover the order total, in this situation adding / removing items to/from the basket can make the option not show / show
Either strategy can work the tricky part is making sure the account balance is updated correctly after every topup and order, i.e the balance is updated (to the higher amount) after a topup and updated (to the lower amount) after an order is processed.
might need a new table for this but u can advise the best optimal way.
if possible with 1 new column in customers table e.g customers_account_balance then we can go for that as long as it works the issue is making sure it updates properly.
as a precaution and for peace of mind it might be advisable to have a new table which records every topup. e.g customers_topups with fields, customers_id, topup_datetime, topup_total
then we can maybe incorporate that into the system to get the balance.
either way the idea sounds simple but we have to be careful to write the code and sql queries CORRECTLY as mistakes are not an option here. this is peoples money at stake.
the 2nd part of the project is setting up the topup page/functionality where they will actually purchase the account credit, the currency i use is GBP so if they buy £10 their balance will say 10. and when they place an order they can spend up to £10 and use their account credit. Note: if the order value is greater than the account balance they will have to topup first or use another payment method
Note 2: this is an additional option they dont have to use it they can pay by credit card as usual or choose cash.
i wont bore u with the reasons im doing this but its basically to make ordering smoother, its nice to know u have balance in advance of confirming the order so that way its guaranteed to go through if u have the balance and u dont have to wonder if ur card is declined, u will find this out BEFORE ordering it saves a lot of stress and hassle
as for the topup page or box im not sure how to design that yet it will need to be added in to the account section.
we can add the topup option as a "product" and use the current functionality the difference being they choose the amount they want to topup and then press add to cart and checkout and pay with the current card modules. please note this is NOT an order this is account topup
as normal same as order email
so we treat it like an order with the difference being if the topup is successful an email will go to the web admin and customer only NOT to the send extra order emails to.
then the topup will not be recorded in the orders table it will be recorded in the topups table
we could copy the orders table and rename it to topups and follow similar logic
or add the topup as a special product
i really dont know the best way to implement the db recording side of it
if a customer selects this and proceeds it will check their balance to make sure there is enough balance to cover the order total if not the customer will be alerted and told to choose another payment method or topup first.
Alternatively we can make it dynamic so the option only shows if they have enough balance to cover the order total, in this situation adding / removing items to/from the basket can make the option not show / show
Either strategy can work the tricky part is making sure the account balance is updated correctly after every topup and order, i.e the balance is updated (to the higher amount) after a topup and updated (to the lower amount) after an order is processed.
might need a new table for this but u can advise the best optimal way.
if possible with 1 new column in customers table e.g customers_account_balance then we can go for that as long as it works the issue is making sure it updates properly.
as a precaution and for peace of mind it might be advisable to have a new table which records every topup. e.g customers_topups with fields, customers_id, topup_datetime, topup_total
then we can maybe incorporate that into the system to get the balance.
either way the idea sounds simple but we have to be careful to write the code and sql queries CORRECTLY as mistakes are not an option here. this is peoples money at stake.
the 2nd part of the project is setting up the topup page/functionality where they will actually purchase the account credit, the currency i use is GBP so if they buy £10 their balance will say 10. and when they place an order they can spend up to £10 and use their account credit. Note: if the order value is greater than the account balance they will have to topup first or use another payment method
Note 2: this is an additional option they dont have to use it they can pay by credit card as usual or choose cash.
i wont bore u with the reasons im doing this but its basically to make ordering smoother, its nice to know u have balance in advance of confirming the order so that way its guaranteed to go through if u have the balance and u dont have to wonder if ur card is declined, u will find this out BEFORE ordering it saves a lot of stress and hassle
as for the topup page or box im not sure how to design that yet it will need to be added in to the account section.
we can add the topup option as a "product" and use the current functionality the difference being they choose the amount they want to topup and then press add to cart and checkout and pay with the current card modules. please note this is NOT an order this is account topup
as normal same as order email
so we treat it like an order with the difference being if the topup is successful an email will go to the web admin and customer only NOT to the send extra order emails to.
then the topup will not be recorded in the orders table it will be recorded in the topups table
we could copy the orders table and rename it to topups and follow similar logic
or add the topup as a special product
i really dont know the best way to implement the db recording side of it