Requirements:
Phase1:
- Loading supplier transactions which are not allocated and not paid yet.
- User can filter the transactions by
- Supplier range
- Due date
- on hold suppliers
- Remittance cheque EFT
- transaction on hold
- Action date
- Can allocate the transactions individually or as a batch
- Can view the supplier information of the transaction
- the user with permission should be able to modify the supplier bank information.
- Can view attachments linked to that invoice
- Due dates are color-coded (red, yellow, green) to indicate urgency.
- Download the report of the transactions
- Can download the bank file.
- Can configure the bank file. (settings)
- Every action is permission based
- Batch should be validated against the bank file structure.
- supplier bank information should be validated.
- should be validated if the line has been already paid or not.
Phase2:
- Link the payments to the bank and directly pay them
- Saving the batches as Draft and ability to load them later on
- Can create a batch from transactions and send it through approval
Data structure
Header table:
Header table
CREATE TABLE [dbo].[PaymentBatchAccounts]( [Id] [int] IDENTITY(1,1) NOT NULL, [AccountLink] [int] NOT NULL, [iAllowICPurchases] [bit] NOT NULL, [Master_Sub_Account] [nvarchar](max) NULL, [Account_Type] [nvarchar](max) NULL, [Description] [nvarchar](max) NULL, [iAccountType] [int] NOT NULL, [AcLookup] [nvarchar](max) NULL, [iForeignBankCurrencyID] [int] NOT NULL, [CurrencyCode] [nvarchar](max) NULL, [CurrencyId] [int] NOT NULL, [BranchId] [bigint] NULL, CONSTRAINT [PK_PaymentBatchAccounts] PRIMARY KEY CLUSTERED
Payment lines
CREATE TABLE [dbo].[PaymentBatchPayableLines]( [Id] [bigint] IDENTITY(1,1) NOT NULL, [AccountNumber] [nvarchar](max) NULL, [AccountName] [nvarchar](max) NULL, [Bic_Swift] [nvarchar](max) NULL, [IBAN] [nvarchar](max) NULL, [IsBankAccountValid] [bit] NOT NULL, [ExtOrderNum] [nvarchar](max) NULL, [InvoiceDate] [datetime2](7) NULL, [TxDescription] [nvarchar](max) NULL, [Reference] [nvarchar](max) NULL, [Order_No] [nvarchar](max) NULL, [UserName] [nvarchar](max) NULL, [cReference2] [nvarchar](max) NULL, [cAuditNumber] [nvarchar](max) NULL, [TrCodeDesc] [nvarchar](max) NULL, [Branch] [nvarchar](max) NULL, [Balance] [float] NOT NULL, [DocTotal] [float] NOT NULL, [UBD_DueDate] [datetime2](7) NULL, [UBD_Terms] [datetime2](7) NULL, [DCBalance] [float] NOT NULL, [fForeignBalance] [float] NOT NULL, [fForeignOutstanding] [float] NOT NULL, [OutstandingHome] [float] NOT NULL, [Module] [nvarchar](max) NULL, [Debit] [float] NOT NULL, [Credit] [float] NOT NULL, [DCLink] [int] NOT NULL, [Account] [nvarchar](max) NULL, [Name] [nvarchar](max) NULL, [Tax_Number] [nvarchar](max) NULL, [PurchaseOrderID] [bigint] NULL, [VendorID] [int] NOT NULL, [CurrencyID] [int] NOT NULL, [RemittanceChequeEFTs] [bit] NOT NULL, [TxOnHold] [bit] NOT NULL, [OnHold] [bit] NOT NULL, [BranchId] [bigint] NULL, CONSTRAINT [PK_PaymentBatchPayableLines] PRIMARY KEY CLUSTERED