Download the PHP package paybilldev/kra-etims-sdk without Composer
On this page you can find all versions of the php package paybilldev/kra-etims-sdk. It is possible to download/install these versions without Composer. Possible dependencies are resolved automatically.
Informations about the package kra-etims-sdk
KRA eTims Integration SDK
A PHP SDK for integrating with the Kenya Revenue Authority (KRA) Electronic Tax Invoice Management System (eTims) API for Paybill Kenya but can generally be used in any php project.
Author
Bartile Emmanuel
Email: [email protected]
Tel: +254757807150
Introduction to KRA eTims
Kenya Revenue Authority currently uses an Integrated Software that collects and manages domestic tax revenues. The Electronic Tax Invoice Management System (eTims) has introduced a supply chain management capability and integration with other KRA systems.
Area of Application
KRA seeks to introduce the usage of Online and Virtual Sales Control Unit (OSCU & VSCU) capable of handling a richer dataset than the traditional Electronic Tax Register system. This system includes specific requirements concerning the Trader Invoicing System to be used together with an Online or Virtual Sales Control Unit.
Key Definitions
- Authority: Kenya Revenue Authority
- User: A taxpayer, user of Trader Invoicing System (TIS)
- PIN: Personal Identification Number
- Electronic Tax Invoicing Management System: A system comprising of Trader Invoicing System and Online/Virtual Sales Control Unit connected together
- Trader Invoicing System (TIS): A system designated for use in business for efficiency management controls in areas of invoicing and stock management
- Receipt: A Tax Invoice or a receipt for the provision of goods/services provided to the customer
- Online & Virtual Sales Control Unit (OSCU & VSCU): A software module communicating with both the TIS and the Authority for processing receipts
Receipt Types
Each receipt issued by Trader Invoicing System is formed from a combination of receipt type and transaction type:
- Receipt types: NORMAL, COPY, TRAINING, PROFORMA
- Transaction types: SALE, CREDIT NOTE, DEBIT NOTE
Receipt Labels
RECEIPT TYPE | TRANSACTION TYPE | RECEIPT LABEL |
---|---|---|
NORMAL | SALES | NS |
NORMAL | CREDIT NOTE | NC |
COPY | SALES | CS |
COPY | CREDIT NOTE | CC |
TRAINING | SALES | TS |
TRAINING | CREDIT NOTE | TC |
PROFORMA | SALES | PS |
Features
- Complete implementation of KRA eTims API endpoints
- Comprehensive validation of requests
- Error handling and logging
- Authentication management
- Modular architecture
Installation
Project Structure
Usage
As a PHP SDK
TIS Specifications and Requirements
Data Flow Between TIS and OSCU/VSCU
For the purpose of signing an invoice, the data flow between the Trader Invoicing System and the Virtual Sales Control Unit will be as follows for each receipt type:
-
TIS sends receipt data to OSCU/VSCU:
- Date and time
- Personal Identification Number
- Buyer's PIN (Optional)
- Receipt number
- Receipt type and transaction type
- Tax rates
- Total amounts with tax
- Tax amounts
-
OSCU/VSCU receives receipt data from TIS
-
OSCU/VSCU generates response data and sends it back to TIS:
- SCU ID
- Date and time
- Receipt label
- Receipt counter per receipt type
- Receipt counter of all receipts
- Digital signatures (except for TRAINING and PROFORMA receipts)
-
TIS finalizes receipt by printing OSCU/VSCU information on the receipt
- TIS sends complete journal data of NS and NC receipt labels in text form to OSCU/VSCU
Receipt Requirements
A receipt must show the following minimum required information:
- Taxpayer's name
- Personal Identification Number
- The address at which the sale takes place
- Personal Identification number of the buyer
- Receipt type and transaction type
- Serial number of the receipt from an uninterrupted ascending number series per receipt type
- Registered items and/or services with description, quantity, price, with any other action that may be done such as cancellations, corrections
- Total sales amount
- Tax rates applied
- The value added tax added to the sale amount
- Means of payment
- SCU information:
- Date and time stamped by OSCU/VSCU
- Sequential receipt type number
- Receipt signatures
- OSCU/VSCU identification number
- Date and time stamped by TIS
TIS Functional Requirements
- TIS shall not issue a receipt of any type before the data flow with OSCU/VSCU has been finalized
- Copies, training, or proforma receipts must be clearly distinguishable from normal receipts
- All corrections on the receipt should be performed before approving it
- Normal Sale (NS) refers to a receipt that shall be produced and offered to the client
- TIS shall not be able to register a sales amount without simultaneously printing a receipt
- TIS shall not be able to register the amount of a transaction without identifying the good and/or service
- TIS shall not be able to correct a transaction without prior cancelation of the original transaction
- TIS shall print only one original receipt. Reprints shall have a watermark with mention "Copy"
- TIS shall not issue a receipt of goods when the corresponding stock is less than the requested quantity
Development
License
MIT