Receivable/Invoice

from absbox import API,EnginePath

localAPI = API(EnginePath.DEV,lang='english',check=False)
Connecting engine server -> https://absbox.org/api/dev
✅Connected, local lib:0.52.7, server:0.52.7
invoice = ["Invoice"
            ,{"start":"2024-04-01","originBalance":2000
                ,"originAdvance":1500,"dueDate":"2024-06-01"}
            ,{"status":"Current"}]
r = localAPI.runAsset("2024-01-02"
                     ,[invoice]
                     ,poolAssump=("Pool"
                                    ,("Receivable", None, None, None)
                                    ,None
                                    ,None)
                     ,read=True)

r[0].head()
Balance AccuredFee Principal Fee Default Recovery Loss CumPrincipal CumPrepay CumDelinq CumDefault CumRecovery CumLoss
Date
2024-04-01 2000 0 0 0 0 0 0 0 0 0 0 0 0
2024-06-01 0 0 2000 0 0 0 0 0 0 0 0 0 0

Default

r = localAPI.runAsset("2024-01-02"
                     ,[invoice]
                     ,poolAssump=("Pool",("Receivable"
                                          ,"DefaultAtEnd"
                                          ,None
                                          ,None)
                                        ,None
                                        ,None)
                     ,read=True)

r[0].head()
Balance AccuredFee Principal Fee Default Recovery Loss CumPrincipal CumPrepay CumDelinq CumDefault CumRecovery CumLoss
Date
2024-06-01 0 0 0 0 2000 0 2000 0 0 0 2000 0 2000
r = localAPI.runAsset("2024-01-02"
                     ,[invoice]
                     ,poolAssump=("Pool",("Receivable"
                                          ,{'CDR':0.01}
                                          ,None
                                          ,None)
                                        ,None
                                        ,None)
                     ,read=True)


r[0].head()
Balance AccuredFee Principal Fee Default Recovery Loss CumPrincipal CumPrepay CumDelinq CumDefault CumRecovery CumLoss
Date
2024-04-01 2000 0 0.00 0 0.00 0 0.00 0 0 0 0.00 0 0.00
2024-06-01 0 0 1996.65 0 3.35 0 3.35 0 0 0 3.35 0 3.35

Recovery

r = localAPI.runAsset("2024-01-02"
                     ,[invoice]
                     ,poolAssump=("Pool",("Receivable"
                                          ,{'CDR':0.01}
                                          ,{"Rate":0.5,"ByDays":[(10,0.5),(20,0.5)]}
                                          ,None)
                                        ,None
                                        ,None)
                     ,read=True)


r[0].head()
Balance AccuredFee Principal Fee Default Recovery Loss CumPrincipal CumPrepay CumDelinq CumDefault CumRecovery CumLoss
Date
2024-04-01 2000 0 0.00 0 0.00 0.00 0.00 0 0 0 0.00 0.00 0.00
2024-06-01 0 0 1996.65 0 3.35 0.00 0.00 0 0 0 3.35 0.00 0.00
2024-06-11 0 0 0.00 0 0.00 0.83 0.00 0 0 0 3.35 0.83 0.00
2024-06-21 0 0 0.00 0 0.00 0.83 1.68 0 0 0 3.35 1.66 1.68
r = localAPI.runAsset("2024-01-02"
                     ,[invoice]
                     ,poolAssump=("Pool",("Receivable"
                                          ,"DefaultAtEnd"
                                          ,{"Rate":0.5,"ByDays":[(10,0.5),(20,0.5)]}
                                          ,None)
                                        ,None
                                        ,None)
                     ,read=True)
r[0].head()
Balance AccuredFee Principal Fee Default Recovery Loss CumPrincipal CumPrepay CumDelinq CumDefault CumRecovery CumLoss
Date
2024-06-01 0 0 0 0 2000 0 0 0 0 0 2000 0 0
2024-06-11 0 0 0 0 0 500 0 0 0 0 2000 500 0
2024-06-21 0 0 0 0 0 500 1000 0 0 0 2000 1000 1000

Fee

invoice0 = ["Invoice"
             ,{"start":"2024-04-01","originBalance":2000
              ,"originAdvance":1500,"dueDate":"2024-06-01"
              ,"feeType":("Fixed",150)}
             ,{"status":"Current"}]
r = localAPI.runAsset("2024-01-02"
                     ,[invoice0]
                     ,poolAssump=None
                     ,read=True)

r[0].head()
Balance AccuredFee Principal Fee Default Recovery Loss CumPrincipal CumPrepay CumDelinq CumDefault CumRecovery CumLoss
Date
2024-04-01 2000 0 0 0 0 0 0 0 0 0 0 0 0
2024-06-01 0 0 1850 150 0 0 0 0 0 0 0 0 0
r = localAPI.runAsset("2024-01-02"
                     ,[invoice0]
                     ,poolAssump=("Pool",("Receivable"
                                          ,{'CDR':0.01}
                                          ,{"Rate":0.5,"ByDays":[(10,0.5),(20,0.5)]}
                                          ,None)
                                        ,None
                                        ,None)
                     ,read=True)

r[0].head()
Balance AccuredFee Principal Fee Default Recovery Loss CumPrincipal CumPrepay CumDelinq CumDefault CumRecovery CumLoss
Date
2024-04-01 2000 0 0.00 0.00 0.00 0.00 0.00 0 0 0 0.00 0.00 0.00
2024-06-01 0 0 1846.91 149.74 3.35 0.00 0.00 0 0 0 3.35 0.00 0.00
2024-06-11 0 0 0.00 0.00 0.00 0.83 0.00 0 0 0 3.35 0.83 0.00
2024-06-21 0 0 0.00 0.00 0.00 0.83 1.68 0 0 0 3.35 1.66 1.68