Customer subscription contains 5 different types of transactions.

  1. Charge is stand for customer activated subscription but haven’t paid yet. This will be the first-time customer activate their subscription.

  2. Customers pay their subscription for the first time. Eighter user choose to pay now or auto debit at the date customers choose.

  3. Customers choose to upgrade or downgrade subscription plan.

    1. When doing upgrade, customers need to pay subscription fee immediately.

    2. When doing downgrade, new subscription plan will apply next auto debit date.

  4. Auto debit for each subscription cycle. This contains 2 different scenes:

    1. Customers have enough money in main account, subscription fee will pay directly.

    2. Customers don’t have enough money in main account, we will create a debt for customer to pay subscription fee. In original User Story, customer will be informed at it, and no further operation. We may need to discuss it with marketing department.

  5. Waive subscription fee.

 

Internal accounts and Customer account addresses

Refer to Safi Postings V12, to support those transactions, we need Internal accounts and customer main account addresses listed below.

  • Internal account

    • (33) Subscription Fee Income

  • Customer main account addresses

    • (1) Main Account (DEFAULT)

    • (131) Main Account (SUBSCRIPTION FEE DUE)

    • (132) Main Account (SUBSCRIPTION FEE OVERDUE)

 

Postings for different transactions

1. Charge

When customers choose to the level of subscription and activated it. Till now, customer haven’t paid the subscription fee for the first time, we will record a receivable, but not actually get the money from customer.

So, the transaction is from main account (subscription fee due) to subscription fee income.

DEBIT

(131) Main Account (SUBSCRIPTION FEE DUE)

CREDIT

(33) Subscription Fee Income

 

2. Pay the subscription fee for the first time

As we have recorded a receivable earlier, when paying the subscription fee, the transaction is from main account (default) to main account (subscription fee due). With doing this, the balance will be equal with transaction previously created from main account (subscription fee due) to subscription fee income.

DEBIT

(1) Main Account (DEFAULT)

CREDIT

(131) Main Account (SUBSCRIPTION FEE DUE)

 

3. Upgrade subscription plan

When upgrading subscription plan, customers need to pay subscription fee of new level, and new cycle will start immediately. So, the transaction is from main account (default) to subscription fee income.

DEBIT

(1) Main Account (DEFAULT)

CREDIT

(33) Subscription Fee Income

 

4. Downgrade subscription plan

Downgrading subscription plan will record new subscription plan id to customer plan and next time customers paying their subscription fee, they will pay downgraded subscription plan fee.

For this transaction, we need to record two transactions. First is when customer choose to downgrade subscription plan, we will record a receivable from main account (subscription fee due) to subscription fee income.

DEBIT

(131) Main Account (SUBSCRIPTION FEE DUE)

CREDIT

(33) Subscription Fee Income

The next step is when auto debit date reached, a new transaction is from main account (Default) to main account (subscription fee due)

DEBIT

(1) Main Account (DEFAULT)

CREDIT

(131) Main Account (SUBSCRIPTION FEE DUE)

 

5. Auto debit with enough money on main account

When auto debit at reached, we will deduct money from main account (default) directly. If there have enough money on that, the transaction will commit successful, and no need extra operations.

DEBIT

(1) Main Account (DEFAULT)

CREDIT

(33) Subscription Fee Income

 

6. Auto debit with insufficient money on main account(Needs to be confirmed)

Rest part of this chapter needs to be confirmed with marketing department, currently we should follow current user story, when there is not enough money in main account (default), send customer an notification, and no more extra operations.

If paying subscription failed, that may cause by insufficient money of main account, we will create a debt for that to pay subscription, and customer will pay off that debt later.

To create a debt and pay for subscription fee, transaction is from main account (subscription fee overdue) to subscription fee income

DEBIT

(132) Main Account (SUBSCRIPTION FEE OVERDUE)

CREDIT

(33) Subscription Fee Income

Next time when there is enough money in main account (Default), pay off will committed immediately.

DEBIT

(1) Main Account (DEFAULT)

CREDIT

(132) Main Account (SUBSCRIPTION FEE OVERDUE)

 

7. Waive subscription fee

Waive subscription fee is quite simple, we will give money back from subscription fee income to main account (Default)

DEBIT

(33) Subscription Fee Income

CREDIT

(1) Main Account (DEFAULT)