ਸਫਰ ਦੇ ਖਰਚਾਂ ਨੂੰ ਵੰਡਣ ਲਈ ਐਪ ਉਸਾਰੀ ਦੇਣੀ, ਡਿਜ਼ਾਇਨ ਅਤੇ ਬਣਾਉਣੀ ਸਿੱਖੋ: ਮੁੱਖ ਫੀਚਰ, ਡਾਟਾ ਮਾਡਲ, ਬਹੁ-ਮੁਦਰਾ, ਆਫਲਾਈਨ ਮੋਡ, ਭੁਗਤਾਨ, ਟੈਸਟਿੰਗ ਅਤੇ ਲਾਂਚ।

ਸਕੈਚ ਬਣਾਉਣ ਜਾਂ ਟੈਕਨਾਲੋਜੀ 'ਤੇ ਵਿਚਾਰ ਕਰਨ ਤੋਂ ਪਹਿਲਾਂ, ਬਹੁਤ ਸਪਸ਼ਟ ਹੋ ਜਾਓ ਕਿ ਐਪ ਕਿਸ ਲਈ ਹੈ ਅਤੇ ਕਿਹੜੀਆਂ ਘੜੀਆਂ ਉਹ ਸੁਧਾਰੇਗੀ। ਖਰਚ ਵੰਡਣਾ “ਸਰਲ” ਲੱਗਦਾ ਹੈ ਜਦ ਤੱਕ ਅਸਲ ਟ੍ਰਿਪ ਵਿੱਚ ਮਿਕਸ ਕੀਤੀਆਂ ਕਰੰਸੀਜ਼, ਅੱਧੇ-ਭੁਗਤੇ ਖਾਣੇ ਅਤੇ ਕੋਈ ਰਸੀਦ ਖੋ ਦੇਣ ਵਰਗੀਆਂ ਗੜਬੜਾਂ ਨਹੀਂ ਆਉਂਦੀਆਂ।
ਜ਼ਿਆਦਾਤਰ ਯਾਤਰਾ ਖਰਚ ਵੰਡਣ ਵਾਲੀਆਂ ਐਪਾਂ ਕੁਝ ਮੁੱਖ ਵਰਗਾਂ ਲਈ ਬਣਦੀਆਂ ਹਨ। ਪਹਿਲਾਂ ਇੱਕ ਪ੍ਰਾਈਮਰੀ گروپ ਚੁਣੋ (ਤੁਸੀਂ ਬਾਅਦ ਵਿੱਚ ਵਧਾ ਸਕਦੇ ਹੋ):
ਹਰ گروਪ ਦੀਆਂ ਉਮੀਦਾਂ ਵੱਖ-ਵੱਖ ਹੁੰਦੀਆਂ ਹਨ। ਦੋਸਤ ਤੇਜ਼ੀ ਅਤੇ ਹਲਕੇ ਮੂਡ ਦੀ ਚਾਹ ਰੱਖ ਸਕਦੇ ਹਨ; ਟੀਮਾਂ ਆਡੀਟਯੋਗਤਾ, ਪਰਮੀਸ਼ਨ ਅਤੇ ਨਿਰਯਾਤ ਵਾਲੇ ਰਿਕਾਰਡ ਮੰਗ ਸਕਦੀਆਂ ਹਨ।
ਉਹ ਸਭ ਤੋਂ ਗੰਦੇ ਹਾਲਾਤ ਦਸਤਾਵੇਜ਼ ਕਰੋ ਜੋ ਵਰਤੋਂਕਾਰ ਸ਼ਿਕਾਇਤ ਕਰਦੇ ਹਨ:
ਇਹਨਾਂ ਨੂੰ ਐਸੇ ਨਜ਼ਾਰਿਆਂ ਵਿਚ ਬਦਲੋ ਜੋ ਤੁਸੀਂ ਅਸਲ ਲੋਕਾਂ ਨਾਲ ਟੈਸਟ ਕਰ ਸਕੋ (ਇੱਕੋ 5–10 ਇੰਟਰਵਿਊ ਵੀ ਕਾਫ਼ੀ ਹੋ ਸਕਦੇ ਹਨ)।
ਆਪਣੇ ਪਹਿਲੇ ਰਿਲੀਜ਼ ਲਈ ਮਾਪਣ ਯੋਗ ਲਕੜੀਆਂ ਸੁੱਟੋ:
ਇਹ ਲੇਖ ਇੱਕ ਪ੍ਰਯੋਗਿਕ, ਸ਼ੁਰੂ ਤੋਂ ਅੰਤ ਤੱਕ ਦਾ ਰੋਡਮੇਪ ਹੈ—ਜਿਥੋਂ ਤੱਕ ਆਈਡੀਏ ਅਤੇ MVP ਪਰਿਭਾਸ਼ਾ ਤੋਂ ਲੈ ਕੇ ਏਜ ਕੇਸ, UX ਫਲੋ, ਪਰਮੀਸ਼ਨ, ਡਾਟਾ ਲਾਜਿਕ ਅਤੇ ਆਖ਼ਿਰ ਵਿੱਚ ਟੈਸਟਿੰਗ ਅਤੇ ਲੌਂਚ ਤੱਕ। ਜੇ ਤੁਸੀਂ ਸਹੀ ਵਰਤੋਂਕਾਰ ਅਤੇ ਸਮੱਸਿਆ ਤੋਂ ਸ਼ੁਰੂ ਕਰਦੇ ਹੋ, ਤਾਂ ਬਾਅਦ ਦੀਆਂ ਹਰ ਫੈਸਲੇ ਆਸਾਨ ਹੋ ਜਾਵੇਗੀ।
ਟ੍ਰੈਵਲ ਖਰਚ ਵੰਡਣ ਵਾਲੀ ਐਪ ਲਈ MVP "ਛੋਟੀ ਐਪ" ਨਹੀਂ—ਇਹ ਇਕ ਐਸਾ ਵਰਜ਼ਨ ਹੈ ਜੋ ਯਕੀਨੀ ਤੌਰ 'ਤੇ ਉਥੇ ਇੱਕ ਕੰਮ ਸਾਲਾਹ ਕਰਦਾ ਹੈ: ਸਾਂਝਾ ਖਰਚ ਕੈਪਚਰ ਕਰਨਾ ਅਤੇ ਦਿਖਾਉਣਾ ਕਿ誰 owes ਕੀ—ਬਿਨਾਂ ਵਾਦ-ਵਿਵਾਦ ਦੇ।
ਸਕੋਪ ਨੂੰ ਤੰਗ ਅਤੇ ਨਤੀਜੇ-ਚਲਿਤ ਰਖੋ। ਅੱਕ ਬਲ਼ਾ ਰਿਲੀਜ਼ ਇਹ ਸਮਰੱਥਾਾਂ ਨਾਲ ਕਾਫ਼ੀ ਹੋ ਸਕਦਾ ਹੈ:
ਜੇ ਤੁਸੀਂ ਇਹ ਪੰਜ ਗੱਲਾਂ ਸੁਚੱਜੇ ਢੰਗ ਨਾਲ ਕਰ ਸਕਦੇ ਹੋ, ਤਾਂ ਤੁਹਾਡੇ ਕੋਲ ਇੱਕ ਐਸੀ ਵੰਡ ਐਪ ਹੈ ਜਿਸ ਨਾਲ ਯੂਜ਼ਰ ਅਸਲ ਵਿੱਚ ਟ੍ਰਿਪ ਪੂਰੀ ਕਰ ਸਕਦੇ ਹਨ।
ਕਈ ਫੀਚਰ ਲੋੜੀਂਦੇ ਦਿਖਦੇ ਹਨ ਪਰ ਦਮਗੀਰੀ ਤੱਕ ਟਿਕ ਸਕਦੇ ਹਨ:
MVP ਨੂੰ speed ਅਤੇ clarity ਤੇ ਪ੍ਰਾਇਰਿਟੀ ਦੇਣੀ ਚਾਹੀਦੀ ਹੈ ਨਾਂ ਕਿ completeness ਤੇ।
ਰੋਜ਼ਾਨਾ ਭਾਸ਼ਾ 'ਚ ਯੂਜ਼ਰ ਸਟੋਰੀਜ਼ ਲਿਖੋ ਤਾਂ ਜੋ ਟੀਮ ਦਾ ਕੋਈ ਵੀ ਮੈਂਬਰ ਫ਼ੈਸਲਾ ਕਰ ਸਕੇ ਕਿ ਐਪ deliver ਕਰ ਰਿਹਾ ਹੈ ਜਾਂ ਨਹੀਂ:
ਹਰ ਇਕ ਸਟੋਰੀ ਲਈ concrete checks define ਕਰੋ। "ਡਿਨਰ ਵੰਡ" ਲਈ ਉਦਾਰਹਣ:
ਇਸ ਤਰ੍ਹਾਂ ਤੁਸੀਂ scope creep ਰੋਕ ਸਕਦੇ ਹੌ ਅਤੇ ਫਿਰ ਵੀ ਐਸੀ ਐਪ ਬਣਾ ਸਕਦੇ ਹੋ ਜਿਸ 'ਤੇ ਯੂਜ਼ਰ ਭਰੋਸਾ ਕਰਨ।
ਇੱਕ ਟ੍ਰੈਵਲ ਖਰਚ ਵੰਡਣ ਵਾਲੀ ਐਪ ਉਸ ਵੇਲੇ ਜਿੱਤਦੀ ਹੈ ਜਦੋਂ ਉਹ ਗਰੁੱਪ ਨੂੰ ਤੇਜ਼ੀ ਨਾਲ ਖਰਚ capture ਕਰਨ ਤੇ ਗਣਿਤ 'ਤੇ ਭਰੋਸਾ ਕਰਨ ਦਿੰਦੀ ਹੈ। "ਚੰਗੀਆਂ-ਠੀਕ-ਗੱਲਾਂ" ਤੋਂ ਪਹਿਲਾਂ ਇਹ ਯਕੀਨੀ ਬਣਾਓ ਕਿ ਕੋਰ ਫੀਚਰ ਸੈੱਟ ਅਸਲ ਟ੍ਰਿਪਸ ਨਾਲ ਮੇਲ ਖਾਂਦਾ ਹੈ: ਕਈ ਲੋਕ, ਬਹੁਤ ਛੋਟੇ ਖਰਚੇ, ਤੇ ਅਕਸਰ "ਬਾਅਦ ਵਿੱਚ ਦੇਖਾਂਗੇ" ਲਹਿਜ਼ੇ।
ਯੂਜ਼ਰ Multiple trips (eg., “Lisbon 2026”) ਬਣਾ ਸਕਣ ਅਤੇ ਸਰਲ ਲਿੰਕ ਜਾਂ ਕੋਡ ਨਾਲ ਦੂਜਿਆਂ ਨੂੰ invite ਕਰ ਸਕਣ। ਜਦੋਂ ਕੋਈ ਜੁੜਦਾ ਹੈ, ਉਹ ਟ੍ਰਿਪ ਮੈਂਬਰ ਬਣ ਜਾਂਦਾ ਹੈ ਅਤੇ ਖਰਚਾਂ ਵਿੱਚ ਸ਼ਾਮਿਲ ਕੀਤਾ ਜਾ ਸਕਦਾ ਹੈ।
ਮੈਂਬਰ ਮੈਨੇਜਮੈਂਟ ਨੂੰ ਹਲਕਾ ਰੱਖੋ: ਮੈਂਬਰਾਂ ਨੂੰ rename ਕਰੋ, ਜੇ ਕੋਈ ਪਹਿਲਾਂ ਹੀ ਚਲਾ ਗਿਆ ਹੈ ਤਾਂ ਉਹਨੂੰ remove ਕਰੋ, ਅਤੇ ਈਛਾ ਅਨੁਸਾਰ roles (admin vs. member) ਦਿਓ ਜੇ ਤੁਸੀਂ ਹੋਰ ਨਿਯੰਤਰਣ ਚਾਹੁੰਦੇ ਹੋ।
ਹਰ ਖਰਚ ਵਿੱਚ ਇੰਨੀ ਡھانਚਾਤਮਕ ਜਾਣਕਾਰੀ ਹੋਵੇ ਕਿ ਹਫ਼ਤੇ ਬਾਅਦ ਵੀ ਵਰਤੀ ਜਾ ਸਕੇ:
ਤੇਜ਼ entry perfect data ਤੋਂ ਜ਼ਿਆਦਾ ਮਹੱਤਵਪੂਰਨ ਹੈ। ਸਮਾਰਟ ਡਿਫ਼ਾਲਟ (last payer, last participants) ਟੈਪ ਘਟਾਉਂਦੇ ਹਨ।
Equal split default ਹੈ, ਪਰ ਅਕਸਰ ਲਚਕੀਲਾਪਨ ਚਾਹੀਦਾ ਹੈ:
ਐਪ ਨੂੰ ਹਮੇਸ਼ਾ ਇਹ ਜਵਾਬ ਦੇਣਾ ਚਾਹੀਦਾ ਹੈ: “ਕੌਣ ਕਿਸਨੂੰ ਕਿੰਨਾ ਦੇਣਾ ਹੈ?” ਪ੍ਰਤੀ ਵਿਅਕਤੀ ਟੋਟਲ, ਟ੍ਰਿਪ ਟੋਟਲ, ਅਤੇ ਇੱਕ ਸਾਫ਼ ਬੈਲੇਂਸ ਵੀਉ ਦਿਓ ਜੋ debts ਨੂੰ ਆਟੋਮੈਟਿਕ ਨੈਟ ਕਰਦਾ ਹੋਵੇ (ਤਾਂ ਜੋ ਲੋਕ ਛੋਟੇ-ਛੋਟੇ ਭੁਗਤਾਨਾਂ ਲਈ ਕਿਸੇ ਨੂੰ ਭੱਜਣ ਨਾ ਪੈਣ)।
ਯੂਜ਼ਰਾਂ ਨੂੰ repayments record ਕਰਨ ਦਿਓ: paid mark ਕਰੋ, amount/date store ਕਰੋ, ਤੇ ਔਪਸ਼ਨਲ ਢੰਗ (cash, bank transfer, PayPal) ਦਿਓ। ਤਨਾਅ ਘਟਾਉਣ ਲਈ proof (screenshot ਜਾਂ note) attach ਕਰਨ ਦੀ ਆਜ਼ਾਦੀ ਦਿਓ, ਪਰ ਇਹ ਔਪਸ਼ਨਲ ਹੋਵੇ ਤਾਂ settling up ਤੇਜ਼ ਰਹੇ।
ਬਹੁ-ਮੁਦਰਾ ਉਹ ਜਗ੍ਹਾ ਹੈ ਜਿੱਥੇ ਖਰਚ ਵੰਡਣ ਵਾਲੀਆਂ ਐਪਾਂ ਜਾਦੂئي ਮਹਿਸੂਸ ਕਰਨ ਜਾਂ ਤਕਰਾਰ ਖੜੇ ਕਰਨ ਲੱਗਦੀਆਂ ਹਨ। ਤੁਹਾਡੇ ਵੱਲੋਂ ਹਰ ਨੰਬਰ ਕਿਸ ਕਰੰਸੀ 'ਚ ਹੋ ਰਿਹਾ ਹੈ ਅਤੇ ਤੁਸੀਂ ਕਿਵੇਂ ਰੂਪਾਂਤਰ ਕਰਦੇ ਹੋ ਇਹ ਸਪਸ਼ਟ ਹੋਵੇ ਤਾਂ ਜ਼ਿਆਦਾਤਰ disagreements ਰੋਕੇ ਜਾ ਸਕਦੇ ਹਨ।
ਹਰ ਖਰਚ ਨੂੰ transaction currency (ਦੁਕਾਨ 'ਤੇ ਜੋ ਅਸਲ ਵਿੱਚ ਦਿੱਤਾ ਗਿਆ) ਅਤੇ trip home currency (ਉਹ ਜਿਸ ਵਿੱਚ ਗਰੁੱਪ totals ਤੁਲਨਾ ਕਰੇਗਾ) ਵਜੋਂ treat ਕਰੋ।
ਉਦਾਹਰਣ: ਡਿਨਰ €60 ਹੈ (transaction), ਪਰ ਟ੍ਰਿਪ home currency USD ਹੈ, ਤਾਂ ਐਪ ਦਿਖਾਏ €60 → $65.40 (converted) ਅਤੇ ਮੁਲ਼ €60 ਵੀ ਰੱਖੇ ਤਾ ਕਿ ਪਾਰਦਰਸ਼ਤਾ bani ਰਹੇ।
ਅਕਸਰ ਦੋ ਚੰਗੀਆਂ ਵਿਕਲਪ ਹੁੰਦੀਆਂ ਹਨ:
ਜੋ ਵੀ ਚੁਣੋ, rate ਅਤੇ timestamp expense details 'ਚ ਦਿਖਾਓ (eg., “1 EUR = 1.09 USD • 2025-12-26”)। ਜੇ edits ਸਹਿਯੋਗ ਹੈ, ਤਾਂ users ਨੂੰ expense-ਸਤਰ 'ਤੇ rate lock ਕਰਨ ਦੀ ਆਗਿਆ ਦਿਓ।
Rounding ਕੋਈ ਛੋਟੀ ਗੱਲ ਨਹੀਂ—ਇਹ ਨੀਤੀ ਹੈ। ਇੱਥੇ consistent rules use ਕਰੋ:
Support:
ਇਨ੍ਹਾਂ ਨੂੰ ਵੱਖ-ਵੱਖ line items ਵਜੋਂ ਮਾਡਲ ਕਰੋ (ਸਪਸ਼ਟਤਾ ਲਈ ਸਭ ਤੋਂ ਵਧੀਆ) ਜਾਂ expense ਨਾਲ attached adjustments ਰੱਖੋ। ਇਹ ਉਦਾਹਰਣ ਵਾਰਗੇ ਹਾਲਾਤਾਂ ਲਈ ਮਦਦਗਾਰ ਹੈ ਜਿੱਥੇ ਸਿਰਫ਼ ਕੁੱਝ ਲੋਕ tip share ਕਰਦੇ ਹਨ ਜਾਂ discount ਕੁਝ items 'ਤੇ ਲਾਗੂ ਹੁੰਦੀ ਹੈ (eg., “kids eat free”)।
ਟ੍ਰੈਵਲ ਐਪ ਦੀ ਜਿੱਤ ਤੇ ਹਾਰ ਤੇਜ਼ੀ 'ਤੇ ਨਿਰਭਰ ਕਰਦੀ ਹੈ। ਲੋਕ taxi ਵਿੱਚ, ਲਾਈਨਾਂ ਵਿੱਚ ਜਾਂ ਸ਼ੋਰਗੁੱਲ ਵਾਲੇ ਰੈਸਟੋਰੈਂਟਸ 'ਚ ਖਰਚ ਲੱਗਦਾ ਹਨ—ਤੁਹਾਡਾ ਫਲੋ ਇਕ ਨੋਟ ਲਿਖਣ ਵਰਗਾ ਵੋਚਣਾ ਚਾਹੀਦਾ ਹੈ ਨਾ ਕਿ ਫ਼ਾਰਮ ਭਰਨਾ।
ਛੋਟੀ ਸਕ੍ਰੀਨਾਂ ਸੇਟ ਨਾਲ ਸ਼ੁਰੂ ਕਰੋ ਜਿਨ੍ਹਾਂ ਨੂੰ ਯੂਜ਼ਰ ਇਕ ਟ੍ਰਿਪ ਵਿੱਚ ਸਿੱਖ ਲੈਣਗੇ:
"Add expense" ਸਕ੍ਰੀਨ ਨੂੰ ਸਮਾਰਟ ਡਿਫ਼ਾਲਟਾਂ ਦੇ ਆਲੇ-ਦੁਆਲੇ ਡਿਜ਼ਾਇਨ ਕਰੋ:
ਇੱਕ ਚੰਗਾ ਨਿਯਮ: ਯੂਜ਼ਰ ਅਕਸਰ expense 10–15 ਸਕਿੰਟ 'ਚ save ਕਰ ਸਕੇ।
Ambiguous labels ਤੋਂ ਬਚੋ। "Paid by" ਅਤੇ "Owed by" "from/to" ਨਾਲੋਂ ਘੱਟ ਗਲਤੀਆਂ ਉਤਪੰਨ ਕਰਦੇ ਹਨ। ਸੇਵ ਕਰਨ ਤੋਂ ਪਹਿਲਾਂ ਇਕ ਸੰਕੁਚਿਤ confirmation row ਦਿਖਾਓ: amount, payer, ਅਤੇ ਕੌਣ ਸ਼ਾਮਿਲ ਹਨ।
ਜੇ ਕੋਈ ਗਲਤ ਲੱਗੇ (eg., ਕੇਵਲ ਇਕ ਹੀ ਵਿਅਕਤੀ owe ਕਰਦਾ ਹੋਵੇ) ਤਾਂ ਨਰਮ ਤੱਪ ਨਾਲ ਪੁੱਛੋ: “ਕੇਵਲ Alex ਨਾਲ ਵੰਡਣਾ?”
Trip details ਵਿੱਚ quick checks ਲਈ filters (by person, category, date) ਅਤੇ ਪ੍ਰਤੀ ਵਿਅਕਤੀ view ਦਿਓ ਤਾਂ ਕਿ ਕੋਈ ਵੀ "ਮੇਰੇ ਉੱਤੇ ਕੀ ਬਕਾਇਆ ਹੈ?" ਬਿਨਾਂ ਗਣਿਤ ਦੇ ਵੇਖ ਸਕੇ। activity feed trust ਬਣਾਉਂਦੀ ਹੈ, ਖਾਸ ਕਰਕੇ ਜਦ edits ਹੋਣ।
Readable contrast, ਵੱਡੇ tap targets, ਅਤੇ clear offline cues (eg., “Saved on device—will sync later”) ਵਰਤੋ। ਯਾਤਰਾ ਦੀਆਂ ਸਥਿਤੀਆਂ ਅਣਰੋਧਯ ਹੋ ਸਕਦੀਆਂ ਹਨ; UI ਨੂੰ ਉਦੋਂ ਵੀ ਸਮਝਦਾਰ ਰਹਿਣਾ ਚਾਹੀਦਾ ਹੈ।
ਇੱਕ ਟ੍ਰੈਵਲ ਖਰਚ ਵੰਡਣ ਵਾਲੀ ਐਪ ਦਾ ਜੀਵਨ ਇਹਨਾਂ ਗੱਲਾਂ 'ਤੇ ਨਿਰਭਰ ਕਰਦਾ ਹੈ ਕਿ ਗਰੁੱਪ ਕਿੰਨੀ ਤੇਜ਼ੀ ਨਾਲ ਇਕੋ ਟ੍ਰਿਪ ਵਿੱਚ ਆ ਸਕਦਾ ਹੈ। ਤੁਹਾਡੇ account ਅਤੇ invite ਫੈਸਲਿਆਂ ਨੂੰ friction ਘਟਾਉਣਾ ਚਾਹੀਦਾ, ਨਾ ਕਿ ਵਧਾਉਣਾ।
MVP ਲਈ ਆਮ ਤੌਰ 'ਤੇ ਸਭ ਤੋਂ ਸਿੰਪਲ ਵਿਕਲਪ ਚਾਹੀਦਾ ਹੈ ਜੋ fir vi trustworthy ਲੱਗੇ:
Practical compromise: Apple/Google + magic link. ਜਿਹੜੇ account ਨਹੀਂ ਬਣਾਉਣਾ ਚਾਹੁੰਦੇ ਉਹ invite ਨਾਲ join ਕਰ ਸਕਦੇ; ਰੋਜ਼ਾਨਾ ਵਰਤੋਂ ਵਾਲੇ ਬਾਅਦ ਵਿੱਚ login attach ਕਰ ਸਕਦੇ ਹਨ।
ਪਹਿਲਾਂ shareable invite link ਰੱਖੋ ਜੋ ਸਿੱਧਾ ਟ੍ਰਿਪ ਵਿੱਚ ਲੈ ਆਵੇ। in-person ਮੌਕਿਆਂ (train platform, hostel check-in) ਲਈ QR code ਦਾ ਵਿਕਲਪ ਦਿਓ। contacts-invite ਸ਼ੁਰੂ ਕਰਣ ਨਾਲ permissions prompts ਅਤੇ edge cases ਆਉਂਦੇ ਹਨ—ਸ਼ੁਰੂ ਵਿੱਚ ਆਮ ਤੌਰ 'ਤੇ ਇਹ ਲੋੜੀੰਦ ਨਹੀਂ।
Invites ਨੂੰ time-safe ਰੱਖੋ:
ਕਈ ਗਰੁੱਪ ਵਿੱਚ ਕੋਈ ਐਸੀ ਵਿਅਕਤੀ ਹੁੰਦੀ ਹੈ ਜੋ app install ਨਹੀਂ ਕਰੇਗੀ ਜਾਂ login ਨਹੀਂ ਕਰੇਗੀ। ਪਹਿਲਾਂ ਨਿਰਣਾ ਕਰੋ ਕਿ ਤੁਸੀਂ support ਕਰਦੇ ਹੋ ਜਾਂ ਨਹੀਂ:
ਮੁੱਖ MVP ਨੀਤੀ: guests invite link session ਰਾਹੀਂ view ਅਤੇ add ਕਰ ਸਕਦੇ ਹਨ, ਪਰ delete items ਜਾਂ trip settings change ਨਹੀਂ ਕਰ ਸਕਦੇ।
ਸਪਸ਼ਟ ਨਿਯਮ ਚਾਹੀਦੇ ਹਨ ਕਿ ਕੌਣ ਕੀ edit ਕਰ ਸਕਦਾ:
ਇਸ ਨਾਲ ਨਾਕਾਰਾ ਜਾਂ ਇਰਾਦਾ-ਰਹਿਤ rewrites ਤੋਂ ਰੋਕ ਮਿਲਦੀ ਹੈ ਅਤੇ flow ਤੇਜ਼ ਵੀ ਰਹਿੰਦਾ ਹੈ।
ਅਸਲ ਗਰੁੱਪ ਤੇਜ਼ੀ ਨਾਲ move ਕਰਦੇ ਹਨ। edits ਨੂੰ predictable ਤਰੀਕੇ ਨਾਲ handle ਕਰੋ:
ਲਕੜ perfect version control ਨਹੀਂ; ਲਕੜ ਦਾ ਮਕਸਦ ਤकरਾਰ ਰੋਕਣਾ ਅਤੇ ਟ੍ਰਿਪ ਨੂੰ ਚਲਾਉਣਾ ਹੈ।
ਸਾਫ਼ ਡਾਟਾ ਮਾਡਲ ਤੁਹਾਡੀ ਐਪ ਨੂੰ predictable ਰੱਖਦੀ ਹੈ: ਹਰ ਸਕ੍ਰੀਨ, calculation, export, ਤੇ sync ਇਸ 'ਤੇ ਨਿਰਭਰ ਕਰਦੇ ਹਨ। ਤੁਹਾਨੂੰ ਦਹਾਂ-ਦਹਾਂ tables ਦੀ ਲੋੜ ਨਹੀਂ—ਸਿਰਫ਼ ਸਹੀ building blocks ਅਤੇ ਸਪਸ਼ਟ ਨਿਯਮ ਚਾਹੀਦੇ ਹਨ।
ਵਿਆਵਹਾਰਿਕ ਤੌਰ 'ਤੇ ਇੱਕ ਟ੍ਰੈਵਲ ਖਰਚ ਵੰਡਣ ਵਾਲੀ ਐਪ ਨੂੰ ਆਮ ਤੌਰ 'ਤੇ ਲੋੜ ਹੁੰਦੀ ਹੈ:
Edits ਬਹੁਤ ਜਗ੍ਹਾ ਤੇ apps messy ਕਰ ਦਿੰਦੀਆਂ ਹਨ। ਦੋ ਆਮ approach ਹਨ:
ਇੱਕ ਮਜ਼ਬੂਤ ਮੱਧ-ਮਾਰਗ: edits allow ਕਰੋ, ਪਰ money-impacting fields (amount, currency, payer, splits) ਲਈ lightweight history ਰੱਖੋ।
Trip ਤੇ balance ਇਸ ਤਰ੍ਹਾਂ ਗਿਣੋ:
ਫਿਰ "settle up" ਲਈ netting ਕਰੋ: ਉਹ ਲੋਕ ਜੋ owe ਕਰਦੇ ਹਨ ਉਨ੍ਹਾਂ ਨੂੰ ਉਹਨਾਂ ਨਾਲ ਮਿਲਾਓ ਜੋ owed ਹਨ, ਤਾਂ ਕਿ Transfers ਘੱਟ ਤੋਂ ਘੱਟ ਹੋਣ।
Trip ਮੈਂਬਰ: Alex (A), Blair (B), Casey (C). ਸਾਰੇ splits equal ਹਨ।
Dinner $60 paid by A (A,B,C) → ਹਰ ਕੋਈ $20 owes
Taxi $30 paid by B (B,C) → ਹਰ ਕੋਈ $15 owes
Museum $45 paid by C (A,C) → ਹਰ ਇੱਕ $22.50 owes
Groceries $90 paid by A (A,B,C) → ਹਰ ਇੱਕ $30 owes
Net ਨਤੀਜੇ:
Settlements (netted): B → A $35.00, C → A $42.50.
Receipts ਨੂੰ expense ਨਾਲ linked attachments ਵਜੋਂ treat ਕਰੋ: ਇੱਕ image URL/object key, thumbnail, uploaded_by, created_at, ਅਤੇ optional OCR metadata (merchant, detected total, confidence) store ਕਰੋ।
Expense ਨੂੰ usable ਰੱਖੋ ਭਾਵੇਂ image ਅਜੇ upload ਹੋ ਰਹੀ ਹੋ (ਜਾਂ offline ਹੋ) ਕਿਉਂਕਿ attachment record core expense fields ਤੋਂ ਵੱਖ-ਵੱਖ ਹੋਣਾ ਚਾਹੀਦਾ ਹੈ।
ਤੁਹਾਡੇ ਟੈਕ ਚੋਣ ਉਹ ਪ੍ਰੋਡਕਟ ਸੇਵਾ ਕਰਨੇ ਚਾਹੀਦੇ ਹਨ ਜੋ ਤੁਸੀਂ ਬਣਾ ਰਹੇ ਹੋ: ਇੱਕ ਸਾਂਝਾ trip wallet ਜੋ ਰਸਤੇ 'ਤੇ ਤੇਜ਼ ਵਰਤੋਂ ਵਾਲਾ ਹੋਵੇ, ਕਮਜ਼ੋਰ ਨੈੱਟਵਰਕ ਵਿੱਚ ਵੀ ਕੰਮ ਕਰੇ, ਅਤੇ ਸਭ ਦੀਆਂ ਬੈਲੇਂਸ consistent ਰੱਖੇ।
ਜੇ ਤੁਰੰਤ spec ਤੋਂ ਕੰਮ ਕਰਨ ਵਾਲੀ ਐਪ ਤਕ ਪਹੁੰਚਣਾ ਹੈ, ਤਾੰ ਉਹ ਟੂਲ ਜੋ ਯੋਜਨਾ ਤੇ ਇਮਪਲੀਮੇਨਟੇਸ਼ਨ ਨੂੰ ਕਮ ਕਰਦੇ ਹਨ ਮਦਦਗਾਰ ਹੋ ਸਕਦੇ ਹਨ। ਉਦਾਹਰਣ ਵਜੋਂ, Koder.ai ਇੱਕ vibe-coding ਪਲੇਟਫਾਰਮ ਹੈ ਜਿੱਥੇ ਤੁਸੀਂ flows (trips, expenses, balances, settle-up) chat ਵਿੱਚ ਵਰਣਨ ਕਰ ਸਕਦੇ ਹੋ, Planning Mode 'ਚ iterate ਕਰ ਸਕਦੇ ਹੋ, ਅਤੇ ਇੱਕ ਅਸਲ ਐਪ ਸਟੈਕ generate ਕਰ ਸਕਦੇ ਹੋ। ਇਹ ਚੰਗੇ product ਫੈਸਲਿਆਂ ਦੀ ਜਗ੍ਹਾ ਨਹੀਂ ਲੈਂਦਾ—ਪਰ MVP 'ਤੇ agreement ਤੋਂ "ਕੰਮਯਾਬ ਟੈਸਟਬਲ" ਤੱਕ ਸਮਾਂ ਘਟਾ ਸਕਦਾ ਹੈ, ਖਾਸ ਕਰਕੇ snapshots ਅਤੇ rollback ਨਾਲ ਸੁਰੱਖਿਅਤ iteration ਲਈ।
ਸਭ ਤੋਂ smooth camera, offline storage, ਅਤੇ OS integrations ਲਈ native iOS (Swift) ਅਤੇ Android (Kotlin) ਵਧੀਆ ਹਨ—ਪਰ ਦੋ codebases ਦੀ ਲੋੜ ਪੈਂਦੀ ਹੈ।
ਜ਼ਿਆਦਾਤਰ ਟੀਮਾਂ ਲਈ cross-platform (Flutter ਜਾਂ React Native) ਇੱਕ practical middle ground ਹੈ: ਇੱਕ shared UI layer, ਤੇਜ਼ iteration, ਅਤੇ ਵਧੀਆ performance।
Web-first (responsive web app) ਜਲਦੀ validate ਕਰ ਸਕਦਾ ਹੈ, ਪਰ offline ਅਤੇ receipt capture ਅਕਸਰ ਘੱਟ polished ਮਹਿਸੂਸ ਹੁੰਦੇ ਹਨ।
ਇੱਕ ਸਧਾਰਨ shared trip wallet ਵੀ ਬੈਕਐਂਡ ਤੋਂ ਲਾਭ ਲੈਂਦਾ ਹੈ:
Offline expense tracking ਇੱਕ add-on ਨਹੀਂ ਹੈ। ਇੱਕ local database (SQLite/Realm) ਵਰਤੋਂ ਤੇ design ਕਰੋ:
Endpoints simple ਤੇ predictable ਰੱਖੋ:
/trips, /trips/{id}/members/trips/{id}/expenses/trips/{id}/balances/trips/{id}/settlementsਇਹ structure expense splitting algorithm ਅਤੇ ਬਾਅਦ ਵਿੱਚ settle up payments ਅਤੇ multi-currency expense tracking ਵਰਗੀਆਂ ਫੀਚਰਾਂ ਨਾਲ ਸਾਫ਼ ਮੇਲ ਖਾਂਦੀ ਹੈ।
Mobile App (UI)
-> Local DB + Sync Queue
-> API Client
-> Backend (Auth, Trips, Expenses, Balances)
-> Database
-> File Storage (receipts)
-> Notifications
ਇਸ diagram ਨੂੰ development ਦੌਰਾਨ nazar ਵਿੱਚ ਰੱਖੋ—ਇਹ "quick fixes" ਨੂੰ ਰੋਕਦਾ ਹੈ ਜੋ MVP ਨੂੰ ਬਾਅਦ ਵਿੱਚ ਜਟਿਲ ਬਣਾਉਂਦੇ ਹਨ।
Receipts ਉਹ ਫਰਕ ਬਣਾਉਂਦੇ ਹਨ ਜੋ "ਸਾਨੂੰ ਲੱਗਦਾ ਹੈ ਠੀਕ ਹੈ" ਤੋਂ "ਅਸੀਂ ਜਾਣਦੇ ਹਾਂ ਇਹ ਠੀਕ ਹੈ" ਤੱਕ ਲੈ ਜਾਂਦੇ ਹਨ। ਇਹ ਲੰਮੇ ਦਿਨਾਂ ਦੀ ਯਾਤਰਾ ਦੇ ਬਾਅਦ ਵਿਚਾਰ-ਵਿਮਰਸ਼ ਘਟਾਉਂਦੇ ਹਨ—ਖਾਸ ਕਰਕੇ ਜਦ ਲੋਕ ਨਕਦ ਮਨਾ ਰਹੇ ਹੋਣ, cards ਬਟਵਾਰੇ ਹੋ ਰਹੇ ਹੋਣ, ਜਾਂ ਵੱਖ-ਵੱਖ ਕਰੰਸੀ 'ਚ ਖਰੀਦਦਾਰੀ ਕਰ ਰਹੇ ਹੋਣ।
Receipt ਜੋੜਨਾ expense jodne ਦਾ ਹਿੱਸਾ ਲੱਗੇ, ਅਲੱਗ ਕੰਮ ਨਾ। ਫਲੋ ਇਸ ਤਰ੍ਹਾਂ ਹੋਣਾ ਚਾਹੀਦਾ ਹੈ: camera open karo → snap karo → quick crop/rotate → expense ਨਾਲ attach karo।
ਕੁਝ ਵਿਵਹਾਰਿਕ ਗੱਲਾਂ ਮਹੱਤਵਪੂਰਨ ਹਨ:
OCR ਮਦਦਗਾਰ ਹੈ, ਪਰ ਸਿਰਫ਼ ਜੇ ਇਹ ਭਰੋਸੇਯੋਗ ਹੋਏ। ਇਸਨੂੰ suggest ਕਰਨ ਲਈ ਵਰਤੋ (total amount, merchant name), ਪਰ save ਕਰਨ ਤੋਂ ਪਹਿਲਾਂ ਯੂਜ਼ਰ ਦੀ quick confirmation ਲੋੜੀਂਦੀ ਰੱਖੋ।
ਅਚਛਾ pattern: extracted values ਨੂੰ editable chips ਵਜੋਂ ਦਿਖਾਓ (eg., “Total: 42.80”, “Merchant: Café Rio”) ਅਤੇ ਯੂਜ਼ਰ ਨੂੰ ਤੁਰੰਤ ਸਹੀ ਕਰਨ ਦੀ ਆਸਾਨੀ ਦਿਓ। ਜੇ OCR fail ਕਰ ਜਾਵੇ, ਤਾਂ user seconds ਵਿੱਚ finish ਕਰ ਸਕੇ।
Device ਤੋਂ date/time auto-fill ਕਰੋ ਅਤੇ ਜੇ ਉਪਲਬਧ ਹੋਵੇ ਤਾਂ ਸਥਾਨ (city ਜਾਂ venue) suggest ਕਰੋ। ਹਮੇਸ਼ਾ edits ਦੀ ਆਗਿਆ ਦਿਓ—ਲੋਕ ਅਕਸਰ ਬਾਅਦ ਵਿੱਚ ਖਰਚ ਦਰਜ ਕਰਦੇ ਹਨ।
Notifications ਉਹਨਾਂ events ਲਈ ਵਰਤੋ ਜੋ ਦੂਜਿਆਂ ਨੂੰ ਕਰਵਾਈ ਕਰਨ 'ਤੇ ਪ੍ਰਭਾਵ ਪਾਉਂਦੀਆਂ ਹਨ:
Receipts ਕਾਰਡ ਡੀਟੇਲ, ਹੋਟਲ ਪਤੇ ਜਾਂ ਨਿੱਜੀ ਆਈਟਮ ਸ਼ਾਮਿਲ ਕਰ ਸਕਦੀਆਂ ਹਨ। ਹਰ expense 'ਤੇ ਸਰਨੀ ਤੌਰ 'ਤੇ toggle ਸੋਚੋ: participants ਨਾਲ receipt share ਕਰੋ, ਜਾਂ image hide ਕਰੋ ਪਰ numbers share ਕਰੋ। ਇਸ ਨਾਲ trust ਉੱਚਾ ਰਹਿੰਦਾ ਹੈ ਬਿਨਾਂ group ਨੂੰ tracking ਤੋਂ ਰੋਕਣ ਦੇ।
ਇੱਕ ਵਧੀਆ ਵੰਡ ਉਸ ਸਮੇਂ ਤਾਹਿ ਹੋ ਜਾਂਦੀ ਹੈ ਜਦ ਲੋਕ ਜਾਣਦੇ ਹਨ ਕਿ ਕਿਵੇਂ ਇੱਕ ਦੂਜੇ ਨੂੰ ਵਾਪਸ ਪੈਸਾ ਦੇਣਾ ਹੈ—ਤੇ ਬਾਅਦ ਵਿੱਚ ਉਹ ਸਾਬਤ ਵੀ ਕਰ ਸਕਦੇ। ਇਹ ਉਹ ਜਗ੍ਹਾ ਹੈ ਜਿੱਥੇ ਤੁਹਾਡੀ ਐਪ calculations ਨੂੰ closure ਵਿੱਚ ਬਦਲਦੀ ਹੈ।
ਤੁਹਾਡੇ ਕੋਲ ਦੋ ਵੈਧ ਪ੍ਰੋਡਕਟ ਚੋਣਾਂ ਹਨ:
ਜੇ links ਦਿੰਦੇ ਹੋ ਤਾਂ module-based ਅਤੇ region-aware ਰੱਖੋ (promise ਨਾ ਕਰੋ ਕਿ ਹਰ ਥਾਂ ਉਪਲੱਬਧ ਹੋਵੇ)। ਆਮ ਵਿਕਲਪ ਉਦੇਸ਼ਕ:
ਯੂਜ਼ਰਾਂ ਨੂੰ ਹਰ ਵਿਅਕਤੀ ਲਈ ਕਈ payments record ਕਰਨ ਦਿਓ, ਜਿਨ੍ਹਾਂ ਵਿੱਚ partial amounts ਹੋ ਸਕਦੇ ਹਨ। ਉਦਾਹਰਨ: “Sam ਨੇ Jordan ਨੂੰ $20 cash ਦਿੱਤੇ” ਤੇ “Sam ਨੇ $15 bank transfer ਨਾਲ ਦਿੱਤੇ” ਜਦ ਤੱਕ balance zero ਨਾ ਹੋ ਜਾਵੇ। ਹਮੇਸ਼ਾ ਦਿਖਾਓ:
Reimbursements ਅਤੇ record-keeping ਲਈ exports ਦਿਓ:
Currency, exchange rates (ਜੇ ਵਰਤੇ ਗਏ), ਅਤੇ ਕਿਸਨੇ ਭੁਗਤਾਨ ਕੀਤਾ—ਇਹ ਖਾਸ ਤੌਰ 'ਤੇ ਸ਼ਾਮਿਲ ਕਰੋ।
Closing intentional ਹੋਣਾ ਚਾਹੀਦਾ:
Archived trips searchable ਅਤੇ shareable ਰਹਿਣ, ਪਰ accidental edits ਤੋਂ protected ਰਹਿਣ ਚਾਹੀਦੇ ਹਨ ਜਦ ਤੱਕ owner reopen ਨਾ ਕਰੇ।
ਟ੍ਰੈਵਲ ਖਰਚ ਵੰਡਣ ਵਾਲੀਆਂ ਐਪਾਂ ਆਮ ਤੌਰ 'ਤੇ ਉਹਨਾਂ ਗੁਪਤ ਡੈਟਾ ਨਾਲ ਨਜਿੱਠਦੀਆਂ ਹਨ ਜੋ ਲੋਕ ਉਮੀਦ ਨਹੀਂ ਕਰਦੇ: ਕੌਣ ਸਾਥਿਆ, ਕਿੱਥੇ ਗਏ, ਕਿੰਨਾ ਖਰਚਿਆ, ਅਤੇ ਅਕਸਰ ਰਸੀਦਾਂ ਦੀਆਂ ਫੋਟੋਆਂ ਜੋ ਨਾਂ, ਕਾਰਡ ਡੀਟੇਲ ਜਾਂ ਪتے ਸ਼ਾਮਿਲ ਕਰ ਸਕਦੀਆਂ ਹਨ। ਸ਼ੁਰੂ ਤੋਂ ਭਰੋਸਾ ਬਣਾਉਣਾ churn ਅਤੇ support ਬਚਾਉਂਦਾ ਹੈ।
Data ਨੂੰ transit ਅਤੇ rest ਦੋਹਾਂ 'ਚ protect ਕਰੋ:
Receipts ਵਿੱਚ phone numbers, loyalty IDs, signatures, ਜਾਂ partial card numbers ਹੋ ਸਕਦੇ ਹਨ। ਸਧਾਰਨ controls ਦਿਓ:
Users ਆਮ ਤੌਰ 'ਤੇ ਚਾਹੁੰਦੇ ਹਨ ਕਿ ਟ੍ਰਿਪ settle ਹੋਣ ਤੋਂ ਬਾਅਦ ਉਹ ਇਸਨੂੰ delete ਕਰ ਸਕਣ:
Product health track ਕਰੋ ਪਰ privacy ਦੀ ਇੱਜ਼ਤ ਕਰੋ۔ Feature usage (eg., “added expense,” “created trip,” “exported”) 'ਤੇ focus ਕਰੋ ਨਾ ਕਿ personal details ਜਾਂ receipt contents। Precise location bina explicit opt-in ਨਾ ਲਵੋ ਜੇ ਇਹ core feature ਨਹੀਂ।
Invites ਅਤੇ shared notes ਨੂੰ misuse ਕੀਤਾ ਜਾ ਸਕਦਾ ਹੈ। Invites ਲਈ rate limits, ਨਵੇਂ accounts ਲਈ verification, ਅਤੇ block/report ਦਾ ਸਰਲ ਰਸਤਾ ਰੱਖੋ। Shared content ਲਈ basic moderation protections (file type limits, size limits, scanning) ਲਾਉਣ ਨਾਲ harmful uploads ਘਟਦੇ ਹਨ।
ਇੱਕ ਟ੍ਰੈਵਲ ਖਰਚ ਵੰਡਣ ਵਾਲੀ ਐਪ ship ਕਰਨਾ ਕਿਸੇ ਫੈਂਸੀ ਸਕ੍ਰੀਨਾਂ ਤੋਂ ਘੱਟ math ਅਤੇ trust ਬਾਰੇ ਹੁੰਦਾ ਹੈ: ਜੇ ਗਣਿਤ ਗਲਤ ਹੋਈ (ਜਾਂ ਡਾਟਾ ਗੁੰਗਾ ਹੋ ਗਿਆ) ਤਾਂ ਯੂਜ਼ਰ ਫਿਰ ਨਹੀਂ ਆਉਣਗੇ। Testing ਅਤੇ rollout ਨੂੰ ਇੱਕ product ਫੀਚਰ ਵਜੋਂ treat ਕਰੋ।
ਆਪਣੇ expense splitting algorithm ਲਈ unit tests ਬਣਾਓ ਤਾਂ ਹਰ ਬਦਲਾਅ ਸੁਰੱਖਿਅਤ ਹੋਵੇ। Cover ਕਰੋ:
ਨੁਕਸਨਕਾਰੀ ਕੇਸ ਵੀ include ਕਰੋ: zero-cost items, refunds/negative expenses, duplicated entries, ਅਤੇ edits after a settlement.
ਜ਼ਿਆਦਾਤਰ bugs everyday actions ਵਿੱਚ ਆਉਂਦੇ ਹਨ, calculations ਵਿੱਚ ਨਹੀਂ। Integration tests add ਕਰੋ:
ਛੋਟਾ beta ਚਲਾਓ groups ਨਾਲ ਜੋ ਜ਼ਿਆਦਾ ਯਾਤਰਾ ਕਰਦੇ ਹਨ। Validate ਕਰੋ:
App store assets, onboarding, ਅਤੇ ਇਕ lightweight help center (ਹਾਲਾਂਕਿ /help ਪੇਜ) ਤਿਆਰ ਰੱਖੋ। Support email ਅਤੇ in-app "Send feedback" shortcut ਰੱਖੋ।
Post-launch, activation (first trip created), retention (trip reopened), ਅਤੇ "settled up" moment track ਕਰੋ। Fixes ਨੂੰ priority ਦਿਓ ਜੋ drop-offs ਘਟਾਉਂਦੇ ਹਨ: confusing currency prompts, slow add-expense flow, invite failures—ਫਿਰ ਛੋਟੇ, ਮਾਪਯੋਗ ਰਿਲੀਜ਼ਾਂ ਵਿੱਚ iterate ਕਰੋ।
ਜੇ ਤੁਸੀਂ ਤੇਜ਼ੀ ਨਾਲ ਬਣਾ ਰਹੇ ਹੋ ਅਤੇ ਅਕਸਰ ਟੈਸਟ ਕਰ ਰਹੇ ਹੋ, ਤਾਂ ਉਹ tooling ਜੋ safe iteration support ਕਰਦੇ ਹਨ (snapshots ਅਤੇ rollback ਵਰਗੇ features, ਜਿਵੇਂ Koder.ai ਦੇ ਕੁਝ ਫੀਚਰ) ਵਧੀਆ ਰਹਿੰਦੇ ਹਨ, ਖ਼ਾਸ ਕਰਕੇ balances ਅਤੇ settlements ਵਰਗੇ ਸੰਵੇਦਨਸ਼ੀਲ ਲਾਜਿਕ 'ਤੇ frequent changes ਦੌਰਾਨ।
Shuruaat vich ek primary group chuno (dost, jode, parivaar, ja teams) te 5–10 lokan naal interview karo. Milde-julde sab ton jyaada pareshan karan wale scenarios (mixed currencies, exclusions, aadhe-bhejat bills, lost receipts) jama karo te ohna nu UX te calculations layi test cases bana lo.
Ik practical MVP panj flow naal kaam chalau sakda hai:
Je eh flows tezi naal te bharosemand tarike naal chal rahe han, users trip poori tarah complete kar sakde han.
Jo kujh seedha trip kharcha capture karna te "kon owe karda" 'te trust paida karna vich help nahi karda, oh postpone karo, jaise:
Pehla speed te correctness validate karo; automation baad vich add karo.
O split methods jo log asli trips 'te aksar use karde han:
UI nu simple rakho: smart defaults te last-used choice yaad rakho.
Dono cheezaan store karo:
Mool rakam vikhayo te converted value vi dikhayo, ate exchange rate te timestamp zahir karo. Ek strategy chuno—entry 'te fixed rate (stable) ya daily updates (dynamic)—te har expense 'te eh spasht karo.
Rounding policy define karo te consistently apply karo:
Consistency rule ton vad zaroori hai.
Design one-handed, low-attention entry layi:
Common expense ~10–15 seconds vich save ho jaave, ih target rakho.
Nimna-friction onboarding choose karo jo fir vi trustworthy lage:
Permissions layi predictable rules rakho:
Invite revocation/regeneration di suvidha vi rakho je link galti naal share ho jave.
Trip-par compute karo:
Settlements layi, net balances nu match karo taan jo transfers sab ton kaat hon (debtors nu creditors naal match karo) te "A paid B $X" varge records rakh ke balances ghatao.
Ise nu core feature samjho:
Connectivity giran te v users entries lose nahi karne chahide.