Only this pageAll pages
Powered by GitBook
1 of 43

v2.4

Loading...

Loading...

Loading...

Loading...

Loading...

Loading...

Understanding Public Finance

Loading...

Loading...

Loading...

Loading...

Specifications

Loading...

Loading...

Exemplars

Loading...

Loading...

Loading...

Technology

Loading...

Loading...

Loading...

Loading...

Loading...

Loading...

Loading...

Setup

Loading...

Loading...

Loading...

Loading...

Loading...

Loading...

Loading...

Loading...

Community

Loading...

Loading...

Loading...

Loading...

Loading...

Loading...

Loading...

Release Notes

v2.4-alpha release details

Release Summary

IFIX 2.4 is a new release that offers new features and functions, the details of which are provided below.

Functional changes

  • DIGIT Exchange - This service offers the capability to exchange data while ensuring it is signed.

  • Program Service - This facilitates the creation of programs, sanctions, allocations, and disbursements.

  • MUKTA iFIX Adapter - This transforms data from Mukta payment to program disbursement.

  • IFMS Adapter - Integration to program disburse and on-disburse APIs.

Non-functional changes

NA

New ‌Feature Additions

Features
Description

DIGIT Exchange

This service offers the capability to exchange data while ensuring it is signed.

Program

This facilitates the creation of programs, sanctions, allocations, and disbursements.

MUKTA iFIX Adapter

This transforms data from Mukta payment to program disbursement.

IFMS Adapter

Integration to program disburse and on-disburse APIs.

Known Issues

  • If Kafka malfunctions, data will be directed to the error queue, necessitating manual processing until an error queue handler is developed.

  • If the disbursement status is set to be SUCCESSFUL then it should not be changed to INITIATED again for the disbursement id.

  • As per IFMS guidelines, if a transaction fails, the amount is deducted and if a revised payment is not generated within 90 days, the amount should be deducted again.

  • Establishing alert mechanisms for critical errors, particularly in the context of billing, is required.

  • Performance testing and benchmarking of services.

Document Resources & Links

Technical Documents


High Level Design


Low Level Design


Backend Service Documents


DIGIT Exchange


Program Service


Mukta iFix Adapter


IFMS Adapter


Low Level Design

Configuring Master Data

ADMIN ONLY

Before the iFIX platform can be used, the master data must be configured directly into the respective collections.

  • Exchange host Master Data

  • IdGen Master Data

  • Indexer config for push data to ES (only if indexer service is used)

Tools

Technology tools used for the solution design

  1. Java 17 (https://www.oracle.com/in/java/technologies/downloads/#java17)

  2. Apache Kafka (https://kafka.apache.org/)

  3. Postgres (https://www.postgresql.org/)

  4. Elastic-search (https://www.elastic.co/)

Design Approach

Solution design principles

The iFIX solution design is built as a Digital Public Good and follows a key set of design principles listed below.

  • Single Source of Truth - Data resides in multiple systems across departments and getting an integrated, consistent and disaggregated view of data is imperative.

  • Federated - Central, State and Local Governments represent the federated structure of government. This federated structure must be considered when designing systems that enable intergovernmental information exchange.

  • Unbundled - Break down complex systems into smaller manageable and reusable parts that are evolvable and scale independently.

  • Minimum - Minimum data attributes that have a well-defined purpose is mandatory; everything else is optional.

  • Privacy and Security - Ensuring the privacy of citizens, employees and users while ensuring the system's security.

  • Performance at Scale - The system is designed to perform at scale.

  • Open Standards - The system is based on open standards, making it easy to discover, comprehend, integrate, operate and evolve.

Value Proposition

A digital solution for governing bodies to manage public finance.

  • The iFIX solution provides a standardized framework allowing central governance bodies, state finance departments, and private institutions to institutionalize fiscal events, ensuring interoperability across multiple government tiers.

  • Onboard state or federal units and create their instances for streamlined management of public finance initiatives.

  • Access to real-time data on the system results in effective and faster decision-making.

  • Establish benchmarks for efficient implementation and improvement in service delivery.

  • Integrate the iFIX solution to expand capabilities in managing fiscal events at various levels, and reduce processing time and administrative burden linked to public finance transactions.

  • Develop new models that can address various concerns, including -

    • fiscal discipline and sustainability at all levels of government,

    • effective resourcing for responding to emergencies and disasters,

    • optimal strategies for raising credit/debt by the government,

    • effective plans for improvements in the efficiency of public goods creation/maintenance and delivery of public services

    • factors in making direct benefits more inclusive

Public Finance Blogs

Follow our blog section to get insights on public finance management systems, innovations, and impact.

PFM Implementations

Public Finance Management (PFM) Exemplars In Punjab & Odisha

The iFIX platform has demonstrated its transformative potential through multiple reference applications designed to address critical challenges in public finance management (PFM). These applications, or exemplars, enhance fiscal management capabilities by providing real-time visibility and resolving inefficiencies in project-related financial processes.

In - the mGramSeva exemplar streamlines the information exchange across multiple agencies, fostering improved coordination and efficiency.

- faced significant challenges in implementing schemes, particularly delayed payments to Community-Based Organizations (CBOs) and wage seekers. The delays primarily stemmed from labour-intensive, paper-based compliance, billing, and verification processes. MUKTASoft, an iFIX-based exemplar, aims to digitize and streamline the end-to-end process, enhancing efficiency, transparency, and timely payments.

These exemplars showcase the versatility and impact of the iFIX platform in transforming public finance management for improved governance and service delivery.

News and Events

Check out the coverage of news and events linked to the PFM platform

Punjab to build first of its kind fiscal information exchange platform

Punjab villages are now utilizing the mGramSeva app to conveniently pay their water bills. Developed on the DIGIT platform, mGramSeva is a mobile application specifically designed to handle the collection and management of revenue and expenditures.

Below are the shared snippets of this news.

  1. Dainik Bhaskar dated 02-06-2023

  1. RozanaSpokesman dated 02-06-2023

  1. Jag Bani dated 02-06-2023

Punjab
Odisha

Install iFIX

iFix Infra Setup & Deployment

Services

List Of Services

  • DIGIT Exchange

  • Program Service

  • Master Data Management (Fiscal events)

  • Reference Adaptor

  • Reference Dashboard (Kibana)

Partner Engagement

Potential Use Cases

Public Finance involves the efficient management of public resources, ensuring transparency, accountability, and the effective use of funds. The iFIX solution offers multiple public finance use cases listed below:

  1. Revenue collection - The solution offers features designed to streamline the collection of various municipal taxes including property tax, water charges, trade license fees, miscellaneous user charges and fee collection. mGramSeva launched by the Punjab government exemplifies the digitalisation of revenue and expenditure management at the rural governance level.

  2. Benefit deliveries - The iFIX solution is capable of managing programs designed for social or economic benefits, wage disbursal, empowering Self-Help Groups or SHGs, and activities linked to community building or development. MUKTASoft is one such program launched by the Orissa government to employ the urban poor through various schemes.

  3. Fund transfer and payments - Another important use case involves managing cash flow between different government departments, ministries, and projects, ensuring timely payments. The solution offers the scope to utilise the Just In Time (JIT) funding approach to ensure funds are disbursed only when required. The results are visible in improved fiscal discipline, better accountability, and a streamlined fiscal approach leading to better governance outcomes.

  4. Procurement and contract management - iFIX enables the implementation of procurement policies that ensure competitive bidding and streamline the disbursal and utilisation of public funds. It also supports features to manage contracts with private vendors for government projects to ensure timely and cost-effective completion.

  5. Budgeting and expenditure management - The iFIX solution offers the capability to prepare project estimates, forecast financials, and manage resource allocation details.

Odisha

Overview

Delayed payments to CBOs and wage seekers were a key scheme implementation challenge. Beneficiaries faced lengthy wait times, with a baseline study across two pilot urban local bodies (ULBs) finding that over 50% of completed tasks were not processed for payment, and the rest encountered delays exceeding one month. Wage seekers come from low-income households, and such delays undermine the scheme’s welfare objectives.

Such delays arise largely from cumbersome, paper-based compliances, billing, and verification processes. Every step – from attendance tracking and bill submission to verification, approvals, and payment instructions – relied on manual processes. This increases the administrative burden on local government personnel, who are often already overburdened. These long-drawn processes also resulted in underutilisation of sanctioned funding, with funds parked idle in banks and limited transparency.

Reference Applications

MUKTASoft

  • Objective: Launched in April 2020 by HUDD Odisha

    • The scheme aims to generate sustainable livelihoods for the urban poor, while creating and maintaining climate-resilient community assets, nurturing inclusive and equitable urban development.

  • Community-Centric Implementation: Bottom-up scheme design ensures community participation in identifying and prioritising public works.

    • MUKTA empowers Community-Based Organisations (CBOs) as project contractors, driving recruitment and execution and fostering community-rooted initiatives.

  • Beneficiaries: Wage seekers, transgenders and women from Self-Help Groups are key recipients of the scheme’s benefits.

https://www.thehindu.com/news/national/other-states/punjab-to-build-first-of-its-kind-fiscal-information-exchange-platform/article33642970.ece

Service Build Updates

With the iFIX v2.4-alpha update, some of the DIGIT core services also need to be deployed. The builds of the same are also listed below. These have been picked from DIGIT-v2.8.

Category
Services
Docker Artefact ID
Remarks

IFIX Domain Services

Digit Exchange

This is new service for exchange data

Program Service

This is new service for implemented with iFix specs.

Adapters

ifms-adapter

Connects iFix to IFMS system.

iFix-mukta-adapter

Transform works plateform bills to disbursement

Core Services

egov-mdms-service

egov-mdms-service:v1.3.2-44558a0-3

egov-indexer

egov-indexer:v1.1.7-f52184e6ba-25

egov-idgen

egov-idgen:v1.2.3-72f8a8f87b-7

MUKTASoft

Delivering frictionless and timely payments under the MUKTA Scheme

Overview

MUKTASoft is an exemplar built on the Works platform. MUKTASoft aims to improve the overall scheme efficiency of MUKTA by identifying & providing equal job opportunities to the urban poor, constructing environment-friendly projects, developing local communities and slums & planning better in the upcoming years.

Click the link below to explore the application features, configuration details and user guides.

Problems & Challenges

In Odisha, a lack of reliable and timely fiscal data led to delayed payments under an Urban Employment Scheme.

Solution Design

The integration facilitates the electronic exchange of fiscal and service data. The outcome is evident in enhanced trust and reliability in data exchange processes.

Benefits

The IFMS-iFIX integration streamlines financial operations by enabling Smart Contracting and Smart Payments, offering significant benefits:

  1. Timely Payouts

    • Facilitates quick and accurate payments to Wage Seekers and Community-Based Organizations (CBOs), ensuring no delays in disbursing funds.

  2. Functional Services for Citizens

    • Ensures that essential services are maintained without disruption, contributing to improved citizen satisfaction and governance.

  3. Better Fund Management

    • Implements Just-in-Time Payments, allowing the Finance Department to optimize cash flow, reduce idle funds, and ensure resources are available when needed.

This integration bridges the gap between financial planning and execution, making payments more transparent, efficient, and aligned with service delivery goals.

Approach Framework

Reimagining PFM In India: Strategy & Approach Framework

Webinar Video

Download ebook

13MB
PFM Bluebook.pdf
pdf

Data Migration

This migration is mukta-specific, it will not be part of the master code.

Program Creation

After installation of all required services, port-forward the program service and create programs for each ULB. A sample curl is added below.

  • Configure all program codes that you created for each ULB to the MDMS.

IFMS Data Migration

  • IFMS adapter data migration for mukta-adapter ad program service

    • Use specific branch for iFix migration.

    • Update environment variables according to the environment.

    • Build the Python migration script and deploy it in the environment.

    • Port forward the service and call the API to start the migration.

High-Level Design

The Fiscal Information Exchange (iFIX) platform employs a hexagonal architecture, also known as the Ports and Adapters pattern, to facilitate seamless and standardized fiscal data exchange among various government entities. This architectural approach ensures that the core business logic remains isolated from external systems and technologies, enhancing flexibility and maintainability.

Key Components of iFIX Architecture

DIGIT Exchange

DIGIT Exchange acts as the secure and trusted bridge between independently deployed systems that need to communicate fiscal data. It ensures data integrity, non-repudiation, and secure transmission between producers (like program services) and consumers (like IFMS or auditing tools).

Core Responsibilities:

  • Message Authentication & Signing: Ensures that all outgoing and incoming messages are cryptographically signed and verified, preventing tampering and ensuring authenticity.

  • Event Publishing: Each successfully exchanged message is logged as an event. These events are published to Kafka and pushed to Elasticsearch to support operational dashboards and real-time monitoring.

  • Interoperability Backbone: DIGIT Exchange makes it possible for different organizations or departments to operate independent systems while still collaborating and sharing data securely.

  • Audit Trail & Observability: Tracks and stores the flow of all messages to enable full traceability and debugging capabilities across the exchange network.

Program Service

The Program Service is the domain-specific core service within iFIX that manages fiscal operations — including sanctions, allocations, and disbursements — under defined financial programs.

Key Features & Responsibilities:

  • Program Definition: Allows administrators to define “programs” — logical boundaries for budget and fund flow such as health campaigns, infrastructure projects, or welfare schemes.

  • Transaction Management: Each fiscal transaction (e.g., allocation or disbursement) is linked to a program and governed by its lifecycle.

  • Validation & Business Rules: All incoming messages from the adapter are validated against business rules. This ensures that transactions are complete, legitimate, and follow the proper hierarchy of approval.

  • Interaction with DIGIT Exchange: Valid messages are forwarded to DIGIT Exchange for further routing to external financial systems (e.g., IFMS). Invalid messages are rejected with precise error codes.

  • State Management: Maintains records of program-wise amounts sanctioned, allocated, committed, and available for disbursement — enabling accurate fiscal control and audit readiness.

Adapters

Adapters are the integration glue of the iFIX ecosystem. They decouple the internal working of iFIX from the unique data formats, protocols, and workflows of external systems.

There are two types of adapters:

  1. Producer Adapter: Sits on the side of a department or donor system that generates fiscal data.

  2. Consumer Adapter: Placed at the system which is the recipient of fiscal data (e.g., an IFMS or treasury system).

Core Functions & Advantages:

  • Data Transformation & Mapping: Converts messages between iFIX’s standardized fiscal event format and the target system’s native format (e.g., XML, JSON, SOAP). This ensures seamless compatibility regardless of the external system’s design.

  • System-Agnostic Integration: Adapters can be easily configured or extended to integrate iFIX with any kind of system, including legacy platforms, ERP solutions, MIS dashboards, or financial gateways.

  • Validation & Enrichment: Adapters can enrich messages (e.g., attaching metadata) or perform pre-validation before sending data to core services or external endpoints.

  • Reusability & Portability: Once an adapter is built for a particular system (like a state’s IFMS), it can be reused across other programs or departments, accelerating rollouts.

  • Loose Coupling: Adapters ensure that changes in external systems do not impact the core iFIX services, enabling independent evolution and easier upgrades.

Sequence Diagram

Architecture

Solution design architecture

The Fiscal Information Exchange (iFIX) platform is an open-source solution designed to standardize and streamline the exchange of fiscal data among various government agencies, funding bodies, and implementing organizations. Built on the DIGIT platform, iFIX facilitates real-time, seamless communication of financial information, enhancing transparency, efficiency, and accountability in public finance management.

Key Architecture Highlights

  • Distributed Reference Data Management: Each department or agency can host its own instance of the iFIX platform, maintaining autonomy over its fiscal data while adhering to standardized protocols for data exchange. This distributed approach ensures that departments manage their own data, reducing bottlenecks and enhancing data accuracy.

  • Microservices-Based Architecture: Leveraging a microservices design, iFIX ensures that each component operates independently, promoting scalability, flexibility, and ease of maintenance. This modular approach allows for the seamless addition or modification of services without disrupting the entire system.

  • Seamless Integration with External Systems: The platform employs adapters to connect with various external agency systems, facilitating the smooth transmission and reception of fiscal data. These adapters ensure compatibility with existing systems, minimizing the need for extensive overhauls.

  • Enhanced Security and Reliability: iFIX incorporates multiple layers of security—ensuring data integrity, authentication, and secure data transmission—while its redundant design and failover mechanisms guarantee continuous operation in mission-critical environments.

  • Flexible Deployment Options: Whether deployed on-premises, within a private cloud, or via a hybrid model, iFIX is designed to meet various infrastructure and performance requirements. This flexibility allows organizations to choose deployment strategies that align with their technical capabilities and policy requirements.

Multi-Layer Architecture

iFIX adopts a multi-layered, distributed architecture pattern, ensuring flexibility, maintainability, and scalability. Each layer comprises a set of microservices with specific roles and responsibilities, facilitating independent deployment, maintenance, and updates. This design enhances interoperability and allows for parallel development and testing.

Advantages of the Layered Architecture:

  • Flexibility and Maintainability: Components can be updated or replaced independently, reducing system downtime and simplifying maintenance.

  • Scalability: Each layer can be scaled independently to accommodate increasing loads or additional functionalities.

  • Reusability: Components can be reused across different applications, promoting consistency and reducing development time.

  • Parallel Development: Teams can work on different layers simultaneously, accelerating development and deployment cycles.

  • Security: Different security levels can be configured for each layer, enhancing overall system security.

  • Independent Testing: Components can be tested independently, ensuring robustness and reliability before integration.

This multi-layer architecture ensures that iFIX serves as a robust and adaptable platform for modernizing public finance management, aligning with strategic goals of transparency, efficiency, and accountability.

DIGIT Exchange

Overview

DIGIT Exchange functions as a connector bridging services deployed across diverse domains. Its primary role involves signing and verifying exchange messages and generating events for ingestion into Elasticsearch for dashboard visualisation.

Key Functionalities

  • Signs the exchange messages and sends them to respective systems according to receiver ID and current domain.

  • Verifies data received from other domains, converts it to JSON object and forwards it to the program service.

  • Pushes the data to Kafka for dash-boarding and making the calls async.

  • In case of any exception, send a reply to the service that initiated the call.

Deployment

Integration

/digit-exchange/

API Spec

digit-exchange:develop-1b9d9a2-23
program-service:develop-92a135f-55
ifms-adapter:develop-bd05fc83-113

mukta-ifix-adapter:develop-4799181a-46
curl --location 'http://localhost:8082/program-service/v1/program/_create' \
--header 'Content-Type: application/json' \
--data-raw '{
    "signature": null,
    "header": {
        "message_id": "123",
        "message_ts": "1708428280",
        "message_type": "program",
        "action": "create",
        "sender_id": "program@https://unified-dev.digit.org",
        "receiver_id": "program@https://unified-qa.digit.org"
    },
    "message": {
        "location_code": "pg.citya",
        "name": "ifix",
        "description": "Empowering local communities through sustainable development projects.",
        "start_date": 1672531200,
        "end_date": 1704067200,
        "children":null,
        "status": {
            "status_code": "INITIATED",
            "status_message": "ACTIVE"
        },
        "additional_details": {},
        "function_code": "in.pg.OGES",
        "administration_code": "in.pg.ac.HUDD.UID",
        "recipient_segment_code": "in.pg.rsc",
        "economic_segment_code": "in.pg.CE.IA.OC",
        "source_of_fund_code": "in.pg.CSS",
        "target_segment_code": null,
        "currency_code": "INR",
        "locale_code": "in.pg.citya"
    }
}'
this
DIGIT Exchange
Program Service
Adapters
iFIX block diagram
Helm Charts

MUKTA iFIX Adapter

Overview

The MUKTA iFIX Adapter service is designed to facilitate communication between the Expense Service and the Program Service. It acts as a mediator, listening for payment creation events from the Expense Service, enriching the payment request data, and generating disbursement requests. These disbursement requests are then sent to the Program Service for further processing.

Dependencies

  • Expense Service

  • Expense Calculator Service

  • MDMS Service

  • Bank Account Service

  • Individual Service

  • Organization Service

  • User Service

  • Program Service

  • Encryption Service

Key Functionalities

  • The creation of a disbursement request involves listening to payment creation events on a designated topic. When a payment is created, the adapter processes the event, extracts relevant information, and forwards the enriched disbursement request to the Program Service for further processing.

  • In case of a failure in the payment topic, we also have the option to manually create a disbursement using the adapter by providing the payment number.

  • We can search for the created disbursements.

  • After forwarding the disbursement to the program service, it undergoes sanction enrichment. Subsequently, it is forwarded to the Digit Exchange service, establishing a connection between two servers. Once a response is received from the IFMS system, the disbursement undergoes further enrichment and is sent back to the Mukta Adapter. The adapter then updates the payment status based on the statuses received in the disbursement.

Deployment Details

Helm Chart

Master Data

Master Name
Sample Data
Description

Head of accounts to be used for the Mukta scheme at the state level - to be provided by HUDD

Spending unit details specific to each ULB are to be provided by HUDD.

Integration Details

base path:

/mukta-ifix-adapter/

Program Service

Overview

Program service handles all the financial transactions like sanction management, fund allocation, and disbursement of funds.

Users can establish programs within which these transactions take place. It receives messages from the adapter service, validates them and forwards them to digit-exchange for sending it to the IFMS system. In case of any validation failure, it responds with an error status and message. Additionally, the service maintains records of sanctioned, allocated, and available amounts for disbursement.

Dependencies

  • DIGIT Exchange

  • MDMS Service

  • IdGen Service

Key Functionalities

  • Creates Program for enabling further financial transactions.

  • Creates on-sanction when a sanction is received from the IFMS system. Maintains allocated and available amount for disbursal for a particular sanction. Forwards the sanction to the client-server.

  • Creates on-allocation when allocations are received from the IFMS system. Updates the allocated and available amount for the given sanction. Forwards the allocation to the client-server.

  • Creates disbursement, deducts available amount and forwards it to the IFMS for disbursement. On failure increases the available amount in sanction.

Deployment

Helm Charts

Integration

/program-service/

API Spec

Introducing Public Finance Management (PFM)

Transforming and leveraging fiscal service events

About Public Finance

Public finance management, or PFM, is how governments manage public expenses and revenues. It is a crucial means of ensuring the effective allocation and utilisation of public resources. The objective of a robust PFM system is to enhance fiscal transparency, resulting in improved accountability and effective resource allocation. Such a system strengthens the government's ability to deliver essential public services and maintain economic stability, leading to long-term benefits in public welfare and economic growth outcomes.

iFIX or integrated Fiscal Exchange solution is designed to address the challenges facing public finance management. iFIX is a set of open-source specifications that establishes a standardised language for finance and line departments to interoperate. iFIX is a digital public infrastructure (DPI) that aims to facilitate seamless electronic information exchange for effective digital public financial management. The solution enables connected applications to exchange standardised fiscal events e.g. Demand, Receipts, Bills, and Payments. The fiscal event consists of attributes explaining the details of why, who, what, where and when it happened.

Useful Links

Contact Us

Why PFM Needs Fiscal Information Exchange Standards

Authors: Manish Srivastava & Gautam Ravichander

Horses, Manure & Platforms - The Context

"In 50 years, every street in London will be buried under nine feet of manure". The Times reported in 1894. At that time the city of London primarily commuted through horse carts and had 50000 horses that each produced 15-35 pounds of manure. This was a health nightmare for the city administration.

In 1834, Eugenio Barsanti and Felice Matteucci built the first gas-based internal combustion engine. By 1879, Carl Benz demonstrated his one-cylinder two-stroke unit built on a gas engine. By 1904, the UK was developing a motor vehicle act requiring drivers to have a license, enforcing speed limits, and penalties for reckless driving. Today, the number of registered vehicles across the world is nearing 1.5 billion. London has 2.5 million of these and the city is not covered in manure.

General purpose technologies like internal combustion engines provide a base foundation to accelerate innovation. A well-defined specification evolves around these general-purpose technologies enabling various actors to build interoperable components which can then be combined into various products to meet a variety of needs. Over time market actors compete in building better and cheaper parts with the confidence that it can work with the existing and new products.

However, this is not a blog about horses, manure and automobiles. This is about Public Finance Management.

Public Finance Management - Information Flows

Public Finance Management drives government and all development programs, be it through the development of public infrastructure, delivery of public services or direct benefits transfers. It does this by making the right amount of money available from various funding sources/agencies to the implementing agencies at the right time - in a fiscally sustainable and responsible manner. In order to do so, funding agencies need information from the implementation agencies on how the money is being spent. So, each flow of money from funding agencies is correlated with the flow of information from implementing agencies in the reverse direction.

Development programs are funded by various stakeholders - national governments, sub national governments, local governments, development bodies and various multi-lateral agencies. At a global scale, multi-laterals and bi-laterals fund a variety of development programs across countries. There are thousands of funding and implementing agencies across the world. Money and information needs to flow between agencies seamlessly for accelerated development - especially if we need to meet the sustainable development goals which has been set back due to the recent COVID pandemic and ongoing war.

Fiscal Information Exchange Standards

In a manner of speaking, today's information flow is like the flow of commuters in horse carts in 19th-century London. Existing methods often lead to issues of poor quality and delays in the flow of information. This is the manure that clogs the information highways and impedes development. What is needed today is a general-purpose innovative technology like the internal combustion engine that can transform the flow of information in the public finance management space and unleash development.

We believe that fiscal information data standards equate to general-purpose technology. Fiscal information data standards can substantially increase the velocity and quality of PFM information flow - similar to how email standards (like SMTP, POP3, IMAP) help us exchange emails across the world. Fiscal Information Data standards can streamline the flow of information between funding and implementing agencies around the world. Through these standards, we can start modernising the world of PFM to bring about a more seamless and coordinated way of driving development around the world.

In the next blog, we will discuss how fiscal information exchange can start addressing some of the problems faced by all stakeholders in Public Finance Management.

HeadOfAccounts
"HeadOfAccounts": [
    {
      "id": "1",
      "code": "221705800358641045908",
      "name": "General Head",
      "sequence": 1,
      "schemeCode": 13145,
      "active": true,
      "effectiveFrom": 1682164954037,
      "effectiveTo": null
    },
    ]
SSUDetails
"SSUDetails": [
    {
      "id": "1",
      "ssuCode": "OLSHUD001",
      "ddoCode": "OLSHUD001",
      "granteeAgCode": "GOHUDULBMPL0036",
      "granteeName": "ANGUL MUNICIPALITY",
      "programCode": "PG/2023-24/000310",
      "ssuId": "1621",
      "ssuOffice": "angul_op",
      "effectiveFrom": 1682164954037,
      "effectiveTo": null,
      "active": true
    }
  ]

iFIX Specifications

iFIX specification details

Overview

iFIX Adapters & Dashboards is a fiscal data exchange solution that enables the exchange of standardized fiscal data between various agencies. iFIX is designed to enable the exchange of fiscal data between various agencies and ensure the visibility of fiscal data. iFIX makes it possible to chain the fiscal data with each other and establish a chain of custody for the entire lifecycle from budgeting to accounting.

From the iFIX perspective, there are two types of agencies

  1. Fiscal Data Provider - posts the fiscal data into iFIX using well-defined formats.

  2. Fiscal Data Consumer - can query the fiscal data.

Both these roles are interchangeable.

Registration

Providers and consumers need to register on iFIX before they can post or query fiscal data. To register the concerned person from the agency must be provided with the following information on the iFIX portal - Name of the Agency, Contact Person, Name, Contact Person’s Phone Number, and Contact Person’s Official Email Address. The OTP is sent to the registered email address of the person.

System Registration & Access Key Generation

Registered users -

  • logs in to the iFIX portal using the official email address

  • registers one or more systems as a provider, consumer or both

  • provides the name of the system

  • a unique ID is generated for each system (example: [email protected])

  • a secret API key is also generated for each system - use this key to post or query fiscal data

  • The API key can be regenerated if required - only one API key is active at a given point in time

The portal provides the ability to generate new keys for each system.

Posting

Fiscal data providers post the fiscal data in two ways.

  • A fiscal message - is directed to a specific consumer and is delivered to intended consumers. These messages are available for query by intended consumers only.

  • A fiscal event - iFIX stores the events for consumers to query

Fiscal Event consists of

  • Header

    1. From

    2. To

    3. Date of Posting

  • Body

    1. Fiscal Event Type e.g. Revenue, Expenditure, Debt

    2. Fiscal Event Subtype

      • Revenue - Estimate, Plan, Demand, Receipt, Credit

      • Expenditure - Estimate, Plan, Bill, Payment, Debit

      • Debt - in progress - will be provided later.

    3. An array of fiscal line items

      • Amount

      • CoA

      • Location Code - from Location Registry

      • Program Code - from Program Registry

      • Project Code - from Project Registry

      • Administrative Hierarchy Code from Administrative Hierarchy Registry

      • Start Date of Period

      • End Date of Period

    4. Attachment - Attachments consist of additional attributes like key-value pairs e.g. Account Number, Correlation ID or Documents

    5. Signature - Fiscal messages can be signed by multiple agencies and add the signature to the Signature Array that contains the below-mentioned values -

      • Array of Signature

        1. System

        2. eSign - Signed Value of the Fiscal Event/Message Body using the System Key

        3. Purpose - Acknowledgement or Approval or Rejection

        4. Comments

        5. Date of Signing

Reversal

Data providers can reverse a previous fiscal message or event. The data provider reverses the data by posting the same event with a negative amount in the line item(s). The data consumers should handle reversals appropriately.

Querying

Data consumers can query fiscal data. They can query Messages - the unread messages delivered to them. When consumers read the unread messages, these messages are marked as read. Events - Consumers can also query fiscal events posted by other data providers.

Reference Data Management

  1. Location

  2. Administrative

  3. Chart of Account

Public Finance Strategy & Approach

Exemplars

Public Finance Architecture

Install iFIX

Program Service

Overview

The Program Service is constructed using iFIX specifications and serves as an extensive platform aimed at simplifying program creation, sanction management, fund allocation, and disbursement execution. It equips organizations with essential tools to effectively oversee available funds and guarantee transparent and accountable distribution to designated beneficiaries.

Functional Overview

Funds Summary

  1. IFMS adapter manages funds summary based on the head of accounts and SSU codes. It creates sanctions for each head of accounts and SSU details based on ULB tenant ID.

  2. Three types of transactions can be received from the JIT VA API -

    • Initial Allotment - A new sanction will be created only if AllotmentTxnType is Initial Allotment.

    • Additional allotment - For this type of transaction it will update the amount of existing sanction.

    • Allotment withdrawal - It deducts the transaction amount from the sanction for this type of transaction.

Payment Instructions

  • When a bill is approved this service creates payment using the expense service.

  • Some consumers keep listening to the payment create Kafka topic and generate payment instructions (PI) using payment and bill details and post the PI to the IFMS system using JIT API.

  • A new PI will be generated when enough funds are available for any head of accounts for that tenantId.

  • Before posting the PI there were multiple enrichments like bank account details, org and individual details, etc.

  • After creating the PI it deducts the available balance from the funds summary.

  • If a PI is created for any payment then the user can not generate a PI again till the PI fails.

  • It keeps a log of each status call of PI and saves it in the DB

Program Service takes care of Program, Sanction, Allocation and Disbursement using the standardized exchange interface.

iFIX API Specification

API spec YAML is here. Click below to view it in Swagger Editor.

Implemented API Specifications

Base Path: /program-service/

API Contract Link

API spec YAML is here. Click below to view it in Swagger Editor.

APIs

Data Model

DB Schema

Web Sequence Diagrams

Program

Sanction

Allocation

Disbursal

Re-imagining Digital PFM in India

Authors: Manish Srivastava and Prashanth Chandramouleeswaran

Reimagining Digital Public Financial Management: Harnessing Information Exchange For Citizen-Centric Service Delivery

Over the last two decades, the evolving landscape of public financial management (PFM) has witnessed a remarkable transformation brought about by government agencies adopting technology to perform their duties. The State Finance Departments, through their Integrated Financial Management Information Systems/ Comprehensive Financial Management Systems (IFMIS/CFMS), have set the precedent for others to follow. These digital platforms have successfully harnessed vertical efficiency gains within government departments, leading to benefits in cash management, accounting, streamlining revenue, expenditure, and payments, and improved fiscal accountability.

As these systems become pervasive across the state a new aspiration for governance emerges: information exchange between government agencies across levels. The next wave of digital transformation hinges on the seamless exchange of data between different departments and government agencies, enabled by horizontal interoperability. The Finance Department, as the pioneer in this domain, is best positioned to anchor this transformation. The exchange of data between different government agencies holds immense potential with several key benefits such as:

  1. Improved Coordination: Seamless data exchange fosters better coordination among various agencies, culminating in a truly unified "single window" experience for citizens and businesses. This integrated approach eliminates redundancies and enhances service delivery efficiency.

  2. Enhanced Data Quality and Reuse: Efficient data sharing enables improved beneficiary identification and targeted benefit delivery. Agencies can collaboratively leverage data to ensure that government resources are directed precisely where they are needed, optimising social impact.

  3. Strengthened Compliance Monitoring: Seamless data exchange empowers better compliance monitoring. Real-time access to accurate data enables authorities to make informed decisions and take prompt actions/ decisions.

  4. Precise Revenue and Expenditure Forecasting: The exchange of timely and accurate data contributes to precise revenue and expenditure forecasting. This, when combined with Just-In-Time payments (JIT), promotes fiscal prudence and efficient resource allocation across all levels of government.

Government implementing agencies are engaged majorly in service delivery, infrastructure development, and benefits distribution. The initial surge of digital transformation within these agencies was propelled by the implementation of departmental systems, which facilitated data digitisation and the automation of departmental processes. As they approach the next phase of their digital evolution it is necessary to empower these agencies to truly deliver on the ‘One Government’ experience. This transformation can be realised sooner by fostering enhanced coordination and collaboration among these agencies, culminating in the realisation of a unified experience for citizens and businesses.

Unlocking The Potential Through The DIGIT Information Exchange Layer

The potential for augmenting governance outcomes is significantly magnified through seamless information exchange. This is where a standardised information exchange layer assumes a pivotal role, propelling service and fiscal event information electronically across agencies and levels in a disaggregated, real-time manner. This reliable conduit ensures comprehensive and timely insights for all stakeholders throughout the PFM cycle. Figure 1 illustrates the possibilities of connecting line departments, parastatals and other agencies seamlessly, without the need for multiple point-to-point integrations. The benefits of the exchange layer across the three key activities are summarised below:

  1. Empowering Service Delivery: Unlocking Revenue and Efficiency

The challenges in responsive and functional service delivery are multifaceted, but the pivotal challenge is that the flow of information between funding and implementing agencies is slow and limited. As government service delivery requires multiple actors and interactions to come together across different levels, the exchange of information is critical to bring down the cost of coordination and improve operational effectiveness. This includes real-time information on the financial health of a government agency/department- expenditure, revenue and availability of funds.

An information exchange layer can set the base for the electronic and real-time flow of standardised disaggregated data. For example, imagine a scenario where a government agency is looking to augment its revenue by addressing revenue leakages. The information exchange layer can allow relevant departments to share required data with each other to detect anomalies and plug in the leakages. This financial augmentation can, in turn, fuel service delivery improvements.

  1. Accelerating Infrastructure Development: The Power of Real-time Intelligence

Infrastructure development, a cornerstone of progressive governance, can significantly benefit from the power of information exchange. Robust liability and expenditure management, accurate revenue and expenditure forecasts, and comprehensive program monitoring become attainable objectives through this transformative approach.

As an illustrative example, envision a Finance Department that forecasts expenditures with precision through a payments calendar, meticulously synced with real-time information. The approval of project estimates can trigger a synchronised chain of events, enabling optimal resource allocation and expeditious project execution. Visibility on liabilities at an early stage can also minimise sudden unplanned demand for large sums of money.

  1. Citizen-Centric Benefits Delivery: Minimising Inclusion and Exclusion Errors

Benefits delivery, a critical dimension of government outreach, gains unprecedented precision through information exchange. An information exchange layer can bring data from multiple departments together to ascertain eligibility and minimise inclusion and exclusion errors. Incorporating such an exchange layer also has profound implications for migrant workers, for instance. Often, these individuals face challenges accessing benefits due to the transient nature of their work. With the information exchange layer in place, their data can be maintained centrally, enabling them to access benefits through PDS irrespective of their location, ensuring continuity in benefits, and safeguarding benefits against leakages while bolstering public trust in governance.

Finance Department As The Anchor To Realise This Vision

The Finance Department (FD) in states is uniquely poised to spearhead the implementation of an information exchange layer for two reasons:

  1. Financial Steward of the State: As the custodian of the Comprehensive Financial Management System (CFMS) and the key institution in the financial landscape of the state, the FD plays a pivotal role in ensuring the optimal utilisation of public funds. This vantage point equips the FD to champion the establishment of an information exchange layer that can revolutionise the way information flows across agencies.

  2. Linking Outlays to Outputs and Outcomes: Leveraging its comprehensive oversight, the FD can intricately map out the trajectory from budgetary allocations to tangible outcomes. This strategic insight equips the FD to provide invaluable inputs to various Line Departments, enabling them to align policy priorities, budgets, and execution seamlessly. Furthermore, this approach empowers the FD to offer ground-level perspectives before the commencement of the next budget cycle, fostering a dynamic and effective financial planning process.

Creating Value through Information Exchange: By orchestrating this transformation through a digital information exchange layer, the administrative burden of data collation, cleaning, and curation—currently borne by officials across ministries—can be substantially alleviated. This, in turn, equips these officials to channel their efforts into profound analysis and thoughtful policy recommendations.

Key Challenge to Address: While the concept of an information exchange layer holds immense promise, it is essential to address the key challenge associated with it – concerns about data visibility. Many stakeholders hesitate to adopt solutions due to concerns about information exposure. We have addressed this challenge through an architectural foundation of robust authorizations, access limitations, security protocols, privacy measures, and inherent authentications to ensure data can be accessed only by the stakeholders who it is meant for.

Conclusion

The FD’s role of financial stewardship provides an innate potential to implement the vision of an information exchange layer. As we navigate the next set of reforms in governance, the concept of information exchange has the prospect to be the catalyst to unlock unprecedented governance potential. It harmonises diverse government activities, nurtures fiscal prudence, and transforms service delivery. The journey ahead promises an environment where governance is not just digital, but also interconnected, efficient, and truly transformative.

Test Cases

Here are the test cases for Program Service, Digit Exchange, Mukta-ifix-adapter.

A Transformative Odyssey: The Impact of Smart Payments in Benefit Delivery

Authors: Ritika Singh, MSC | Prashanth Chandramouleeswaran & Ameya Ashok Naik, eGov

Background

How far would a dollar go if it went straight to someone in need, when they need it most? With government-to-person (G2P) payments, governments increasingly disburse welfare benefits directly to individuals or households. These high-volume, low-ticket-size G2P transactions are vital for boosting financial inclusion and empowering vulnerable communities. Globally, programs like Brazil’s Bolsa Familia and Zambia’s SWL report cost savings, leak reduction, and timely payments for grant recipients through digital payments. In India, financial inclusion has been boosted through Jan Dhan bank accounts, the use of Aadhar for identity verification, and mobile payments applications enabled by UPI, creating the possibility for government schemes to incorporate Direct Benefits Transfers (DBT).

While promising, digital G2P payments remain in their early stages, and face challenges like friction in payments, information gaps, and contextual barriers. The MUKTA scheme, in the state of Odisha in India, is an example of multi-stakeholder collaboration to reengineer digital systems and government policies and processes to operationalise digitally-enabled Smart Contracting and Just-in-Time Funding Systems (JiT-FS). This has led to enhanced reach, improved observability, and a clear understanding of performance bottlenecks, empowering stakeholders to continuously refine and optimise the system.

Admirable Goal, Administrative Friction

MUKTA is a pioneering initiative, designed to generate wage employment for vulnerable workers in urban Odisha during the COVID-19 pandemic. Rooted in community needs and responsive to local demands, MUKTA leverages existing Community Based Organizations (CBOs) to execute public works projects which are sustainable and climate resilient. These CBOs enlist wage seekers to work on these projects, generating income for the latter.

Delayed payments to CBOs and wage seekers were a key scheme implementation challenge. Beneficiaries faced lengthy wait times, with a baseline study across two pilot Urban Local Bodies (ULBs) finding that over 50% of completed tasks were not processed for payment, and the rest encountered delays exceeding one month. Wage seekers come from low-income households, and such delays undermine the scheme’s welfare objectives.

Such delays arise largely from cumbersome, paper-based compliances, billing, and verification processes. Every step – from attendance tracking and bill submission, to verification, approvals, and payment instructions – relied on manual processes. This increased the administrative burden on local government personnel, who are often already overburdened. These long-drawn processes also resulted in underutilisation of sanctioned funding, with funds parked idle in banks and limited transparency.

Making Processes And Payments Smarter

These challenges threatened to undermine MUKTA's goals. It was clear that a transformative intervention was required. To address these challenges, MUKTA embraced a three-phase "Smart Payment" approach:

Discovery: Identifying Pivotal Problems in Scheme Implementation

Extensive consultations with stakeholders at each tier of government – Finance Department (FD), Housing and Urban Development (H&UD) Department, local government officials, and CBO representatives – helped identify key requirements for completing payments under the MUKTA scheme, and administrative inefficiencies that prevented timely completion.

Such schemes require multi-entity coordination: project definition, estimate creation, progress monitoring, and bill approval take place at the local government level; sanctioning overall fund tranches and executing electronic payments is done by the State government. A first step in the solution was identifying what information was needed for the State to disburse payments, and how it could be communicated most efficiently. Existing Integrated Financial Management System (IFMS) and Public Finance Management System (PFMS) data standards were leveraged to develop functional requirement specifications, leading to the development of a two-part solution: MUKTASoft, which streamlines processes and reporting by scheme implementers, and JiT-FS (Just-in-Time Funding System), which simplifies and speeds up fund disbursal.

Design: Developing Solutions and Proposing Reforms

MUKTASoft is a workfare scheme management platform, which streamlines project management and information flow among CBOs, local government bodies, H&UD, and FD. The expedited flow of standardised project information is key to reducing delays in payments. Key operational components of MUKTASoft include project finalisation, wage-seeker registration, digital attendance tracking, expense logging, and payment verification, all streamlined through user-friendly interfaces for different sets of users (CBO, ULB official, etc.)

Keeping in mind the administrative burden-related challenges identified, MUKTASoft was designed to improve overall efficiency of local and state government officials by:

  • Simplifying the process of project progress tracking and wage payment approval, aiming to move from over twelve steps (as identified in the baseline) to a simple three-step (maker-checker-approver) approach for each key document.

  • Enhancing visibility of project progress or delays in payments, ensuring that the responsible authority/ individual takes accountability for these, and enabling them to take steps to resolve these.

  • Enabling faster payments to wage seekers using smart payments through direct integration with the state IFMS

Aligning project management and scheme verifications sets the stage for integrating smart payments, utilising digital technologies such as JiT-FS for pull-based release of funds once project milestones are achieved. Core PFM principles like "single source of truth" (ensuring data accuracy), "observability" (real-time tracking of performance), and "minimising administrative burden" through smart contracts have been woven into the design of both MUKTASoft and JiT-FS, strengthening transparency, accountability, and efficiency.

Deployment: Orchestrating a Seamless Implementation

The implementation phase required managing multiple dependencies. One of the fundamental challenges was building trust and reliability in the solution, to replace manual ways of working, by showcasing high success rates. The deployment timeline faced disruptions, and development hurdles were common initially – as is typical when new systems are integrating for the first time. Collaborative testing uncovered edge cases affecting transaction success rates, and a robust User Testing phase helped to validate various scenarios and user needs.

Checks and balances within MUKTASoft and the JiT module were introduced and implemented to address these emerging issues. For instance, at the project finalisation stage, MUKTASoft checks for availability of funds to cover the expenses of that project. This sanction validation establishes a spending ceiling before approval of projects or payments – a key control that the State Finance Department must maintain. Similarly, when payments are directly transferred to wage-seekers' bank accounts, each transaction's success or failure must be checked, and corrective measures taken where payments have failed to go through.

Local governments, while initially hesitant, saw that using MUKTASoft for project creation, estimate approval, and work orders had tangible benefits: reduced administrative burden, fewer delays, faster payments, and enhanced accountability. With clear demonstration of the value to all stakeholders, adoption of the solution became more universal.

Maximising Impact: Outcomes Of Successful Deployment

  • Reduced delays: Digitising processes from attendance tracking to payment verification dramatically streamlined workflows, facilitating disbursement of payments to wage seekers and CBOs. Pilot data indicates around 60% reduction in payment disbursement time for wage seekers. Under the new system, beneficiaries are no longer waiting months to get paid, with most bills now being processed in a matter of days.

  • Enhanced efficiency: Automation freed up local government officials from administrative burdens, allowing them to focus on project management and monitoring, leading to improved project execution and resource utilisation.

  • Transparency and data-driven decision making: The integrated data platform enabled real-time tracking of project progress, expenditure, and beneficiary coverage, enhancing transparency and accountability for all stakeholders. For administrators, insights from real-time data facilitated informed decision-making, allowing for quicker identification and resolution of bottlenecks, and strategic allocation of constrained resources.

  • Empowering wage seekers: Timely wage payments and improved project execution under the Smart Payment system contributed to enhanced livelihood opportunities and overall well-being for urban communities.

Lessons Learned

With the pilot successful in 2 ULBs, the system is now being scaled to a total of 25 (out of 115) Urban Local Bodies (ULBs) in Odisha. MUKTA's journey offers valuable lessons for other G2P initiatives seeking to leverage technology for efficient PFM and inclusive development:

  • Existing infrastructure matters: Enrolment of wage seekers is simplified by using Aadhaar for identity verification. With Aadhaar in turn linked to Jan Dhan accounts, mapping of wage seekers to bank accounts is already in place. Widespread use of UPI addresses concerns around cash in / cash out. MUKTASoft and JIT-FS are a new wave of innovations, relying on building blocks provided by IndiaStack and related reforms.

  • Process streamlining is a key lever for any tech-enabled reform: When workflows are digitised, with automation and minimised manual intervention, the time and effort users have to spend on administrative tasks decreases, and they can focus on tasks that require human interaction or attention. At the same time, the reliability and timeliness of data improves, enabling administrators to better manage performance, and policy makers to develop data-driven plans and strategies.

  • Active and consistent collaboration: Strong partnerships between government, technology providers, and frontline users (including grassroots organisations) are essential for successful implementation. The solution will be used when stakeholders feel ownership over it, for which they should be involved throughout the process, with the needs they articulate being prioritised in product design.

  • Data fragmentation undermines progress at all stages: All stakeholders must accept a "single source of truth", which they contribute to by ensuring that all transactions take place through a single system of record. While some transition period may be needed to achieve this goal, even in this time, data should be updated in the system of record promptly, with appropriate verification / triangulation.

  • Adoption requires users to trust the new way of working: Adoption is not instant; extensive training and support is essential for overcoming initial resistance. As each set of stakeholders see the benefits from the new system, they will be more likely to use it, and to advocate for it with their peers. This can also be leveraged in periodic re-training, as trained resources move and new resources join the department.

  • Adaptability is essential: Unforeseen challenges are inevitable. Embracing flexibility and a willingness to find solutions are crucial for successful implementation.

By adopting these lessons and building upon MUKTA's success, other G2P programs can unlock the transformative potential of technology to deliver effective social safety nets and empower vulnerable communities across the globe.

Smart Payments As A Catalyst For Inclusive Development

The early success observed with smart payments for the MUKTA scheme underscores the transformative potential of technology in G2P transactions to reduce delays in service delivery and heighten public finance efficiency. It serves as a model for government agencies, prompting them to adopt Smart Payments as a catalyst for inclusive development.

Odisha's journey sets a model for an efficient and citizen-centric benefit delivery system, emphasising the need for adaptive strategies, collaborative partnerships, and a commitment to governance principles. Tailored to the local context, the solution can progress from basic Smart Payments, encompassing digital recording of conditional payments and compliances, to a medium level incorporating workflow management systems and APIs. The ultimate moonshot solution integrates AI/ML models, smart devices, and Internet-of-Things (IoT) to revolutionise the public finance landscape.

Ecosystem

Program
Tech Team
Program Team
Partners
Stakeholders

iFIX

Satish N

Prashanth C

BMGF

Finance Department, Punjab

Shailesh Kumar

Sameer Khurana

Janaagraha

Department of Rural Development and Panchayats, Punjab

Jasminder Saini

CEGIS

Department of Social Security, Women & Child Development, Punjab

CBGA, CSEP etc (get confirmation from Ameya)

Department of Local Government, Punjab

ODI

Department of Public Works, Punjab

PD (Public Digital)

Department of Social Justice, Empowerment and Minorities

ThinkWell

Department of Governance Reforms, Punjab

mGramSeva

Pradeep Kumar

Jasminder Saini

J-PAL

Water Supply and Sanitation Department, Punjab

Saloni Bajaj

Aveek De

IIM-B

PSPCL

Debasish Chakaraborty

Ajay Bansal

PayGov

Ramkrishana Sahoo

Snehal Gothe

MuktaSoft

Nirbhay Singh

Prashanth C

Janaagraha

State Urban Development Agency, Odisha

Arindam Gupta

Dr. Subrata Biswal

MSC

Housing and Urban Development Department, Odisha

Elzan

Sameer Khurana

E&Y - PMU (HUDD)

ULBs- urban Local Bodies, Odisha (Jatni and Dhenkanal)

Subhashini

Sourav Mohanty

CBOs(SHGs/SDAs)

DTI Odisha

Figure 1: DIGIT Information Exchange Layer ensures interoperability between government agencies across various levels enabling functional and responsive services, and facilitates market participation to accelerate innovations.

Install Using GitHub Actions In AWS

This guide provides step-by-step instructions for installing iFIX using GitHub Actions in an AWS environment.

Pre-requisites

  • Github account -

  • Kubectl installed in the system -

  • AWS account -

  • Install AWS CLI locally -

  • Postman - and

  • A domain host - (example: GoDaddy to configure your server to a domain)

Install

  • Prepare AWS IAM User

  • Create an IAM User in your AWS account -

  • Generate ACCESS_KEY and SECRET_KEY for the IAM user -

  • Assign administrator access to the IAM user for necessary permissions.

  • Set up the AWS profile locally by running the following commands:

    • aws configure --profile {profilename}

    • fill in the key values as they are prompted

      • AWS_ACCESS_KEY_ID: <GENERATED_ACCESS_KEY>

      • AWS_SECRET_ACCESS_KEY: <GENERATED_SECRET_KEY>

      • AWS_DEFAULT_REGION: ap-south-1

    • export AWS_PROFILE={profilename}

Note: AWS Account should have S3 Bucket access to make Filestore service work

Fork GitHub Repositories

Fork the following repositories with all the branches into your organisation account on :

  • (We do not need the master data repo since we are using the MDMS-v2 by default with data seeded)

Add AWS Keys To Repository

Go to the forked DIGIT-DevOps repository:

  • Navigate to the repository settings.

  • Go to Secrets and Variables.

  • Click on the actions options below secrets and variables.

  • On the new page, choose the new repository secret option in repository secrets and add the following keys mentioned below:

    • AWS_ACCESS_KEY_ID: <GENERATED_ACCESS_KEY>

    • AWS_SECRET_ACCESS_KEY: <GENERATED_SECRET_KEY>

    • AWS_DEFAULT_REGION: ap-south-1

    • AWS_REGION: ap-south-1

Repository Changes

  • Navigate to the release-githubactions branch in the forked DevOps repository.

  • Enable GitHub Actions.

    • Click on Actions, then click on "I understand my workflows, go ahead and enable them":

Edit GitHub Files - Steps

  • The following steps can be done directly in the browser or the local system if you are familiar with Git usage.

  • Before following any of the steps switch to the release-githubactions branch.

  1. Steps to edit the git repository in the browser -

  2. Steps to edit in the local system if you are familiar with Git basics:

    1. Git clone {forked DevOps repolink}

    2. Follow the below steps and make changes

    3. Then commit and push to the release-githubactions branch

Note: Complete all changes at once then commit and push the code to remote to trigger the installation.

Replace Master & Configuration Repositories

Note: Make these repository/branch changes before installation; making changes to the configuration repository link in the DevOps repository after installation without understanding what impact they may have will lead to failure in the application functionality.

  • Navigate to egov-demo.yaml (config-as-code/environments/egov-demo.yaml).

  • Under the egov-persister: change the gitsync link of the configs repository to the forked config repository and the branch to UNIFIED-DEV.

  • Under the egov-indexer: change the gitsync link of the configs repository to the forked config repository and the branch to UNIFIED-DEV.

Configure Infrastructure-as-code

  • Navigate to infra-as-code/terraform/sample-aws.

  • Open input.yaml and enter details such as domain_name, cluster_name, bucket_name, and db_name.

Configure iFIX Chart Version

  • Navigate to file deploy-as-code/deployer/digit_installer.go

  • Search for ifix-demo in the file and check for health-demo-vX.X

  • Change the version to v1.1-> ifix-demo-v1.1

Configure Application Secrets

  • Generate SSH key pair.

  • How to Generate SSH Key Pair - choose one of the following methods to generate an SSH key pair:

    • Method a: Use an online website. (Note: This is not recommended for production setups, only for demo purposes):

    • Method b: Use OpenSSL commands:

      • openssl genpkey -algorithm RSA -out private_key.pem

      • ssh-keygen -y -f private_key.pem > ssh_public_key

      • To view the key run the commands or use any text editor to open the files

        • vi private_key.pem

        • vi ssh_public_key

  • Once generated Navigate to config-as-code/environments

  • Open egov-demo-secrets.yaml

  • Search for PRIVATE KEY and replace from -----BEGIN RSA PRIVATE KEY----- to -----BEGIN RSA PRIVATE KEY----- with private_key generated (note: please make sure the private key is indented as given)

  • Add the public_key to your GitHub account -

Finalise Installation

  • Once all details are entered, push these changes to the remote GitHub repository. Open the Actions tab in your GitHub account to view the workflow. You should see that the workflow has started, and the pipelines are completed successfully.

Configure Domain Name

  • Connect to the Kubernetes cluster, from your local machine by using the following command:

  • Get the CNAME of the nginx-ingress-controller

  • The output of this will be something like this:

  • Add the displayed CNAME to your domain provider against your domain name. e.g. GoDaddy domain provider -

Enable Filestore Service

After connecting to the Kubernetes cluster, edit the deployment of the FileStore service using the following command:

The deployment.yaml for Filestore Service will open in VS Code, add the aws key and secret key provided to you in the way shown below:

Close the deployment.yaml file opened in your VS Code editor and the deployment will be updated.

Configuration

Core service configuration and promotion docs

aws eks update-kubeconfig --region ap-south-1 --name $CLUSTER_NAME
kubectl get svc nginx-ingress-controller -n egov -o jsonpath='{.status.loadBalancer.ingress[0].hostname}'
export KUBE_EDITOR='code --wait'
kubectl edit deployment egov-filestore -n egov
signup
installation guide
signup
installation guide
installation guide
import data guide
official document
AWS document
GitHub
DIGIT-DevOps
Master-Data
configs
Git guide
https://8gwifi.org/sshfunctions.jsp
Git guide
ae210873da6ff4c03bde2ad22e18fe04-233d3411.ap-south-1.elb.amazonaws.com
https://www.godaddy.com/en-in/help/add-a-cname-record-19236
Filestore secret

DIGIT Exchange

Overview

The DIGIT Exchange Service is a robust data interchange platform designed to facilitate the seamless and secure exchange of digital information between two endpoints. Built with a fixed schema for headers and dynamic messaging capabilities, this service ensures reliable communication while prioritizing data integrity and confidentiality.

Dependencies

DIGIT-exchange can implement any service if it has the same request structure as the program.

  • Program Service

API Specifications

Base Path: /digit-exchange/

API Contract Link

API spec YAML is here. Click below to view it in Swagger Editor.

APIs

Exchange Flow

Data Model

DB Schema Diagram

Web Sequence Diagrams

Sequence of exchange between two environments

Exchange Service example of an exchange

MUKTASoft v2.2 | DIGIT Works
Swagger Editor

MDMS & Configuration Updates

MDMS Changes

Features
Services Names
Changes
Descriptions

Config Changes

Features
Services Names
Changes
Descriptions

Infra Changes

Features
Services Names
Changes
Descriptions

SSU Details

MDMS Service

SSU Details

Head Of Accounts

MDMS Service

Head of Accounts

ID Gen

Program Service

IDGen

Exchange

Program Service

Exchange

Exchange indexer

Digit Exchange

Exchange-indexer

Exchange devops

Digit Exchange

dev-ops config

ifms-pi-indexer

Mukta-ifix-Adapter

ifms-pi-indexer

mukta-ifix-adapter-persister

Mukta-ifix-Adapter

mukta-ifix-adapter-persister

Charts

Program Service

Charts

Environment

Program Service

Environment

Secrets

Program Service

Secrets

Adapter Helm

Mukta-ifix-Adapter

Adapter Helm

Adapter Environment

Mukta-ifix-Adapter

Adapter Environment

Adapter Encryption

Mukta-ifix-Adapter

Adapter Encryption

Contact UseGov Foundation
Swagger Editor
Swagger Editor
Logo
Swagger Editor

Creates a program

post

Create programs in the system

Body
signaturestringOptional

Signature of {header}+{message} body verified using sender's signing public key

Example: TgE1hcA2E+YPMdPGz4vveKQpR0x+pgzRTlet52qh63Kekr71vWWScXqaRFtQW64uRFZGBUhHYYZQ2y6LffwnNOOQhhssaThhqVBhXNEwX9i75SNYXi5XSJVDYzSyHrhF20HW6RE9mAVWdc80i7d+FXlh+b/U+fnj+SrZ2s6Xd0WUZvU29LgqeUpyznlWLu1mDdJxNZavsDLWmxjTnknqBjDvwSc35WhFDhXDA2lWmm8YpZ1Y6TBmvvtVS7mAOTnhFy9sdCbrLcfXk5QWIsdzlvPqlkvdwEf30OZ6ewb680Aj3hO2OT5LCv7iLyz7C7srnB9lJT5gXiw+eSnktPXlDA==
headerall ofRequired
and
Responses
401
HTTP layer error details
application/json
403
HTTP layer error details
application/json
500
HTTP layer error details
application/json
default
Acknowledgement of message received after successful validation of message and signature
application/json
post
POST /ifix/v1/program HTTP/1.1
Host: 
Content-Type: application/json
Accept: */*
Content-Length: 2882

{
  "signature": "TgE1hcA2E+YPMdPGz4vveKQpR0x+pgzRTlet52qh63Kekr71vWWScXqaRFtQW64uRFZGBUhHYYZQ2y6LffwnNOOQhhssaThhqVBhXNEwX9i75SNYXi5XSJVDYzSyHrhF20HW6RE9mAVWdc80i7d+FXlh+b/U+fnj+SrZ2s6Xd0WUZvU29LgqeUpyznlWLu1mDdJxNZavsDLWmxjTnknqBjDvwSc35WhFDhXDA2lWmm8YpZ1Y6TBmvvtVS7mAOTnhFy9sdCbrLcfXk5QWIsdzlvPqlkvdwEf30OZ6ewb680Aj3hO2OT5LCv7iLyz7C7srnB9lJT5gXiw+eSnktPXlDA==",
  "header": {
    "message_id": "251c51eb-e970-4e01-a99a-70136c47a934",
    "message_ts": 1708428280,
    "action": "create",
    "sender_id": "ifix@https://mukta.odisa.govt.org",
    "sender_uri": "https://mukta.odisa.govt.org/{namespace}/callback/on-search",
    "receiver_id": "ifix@https://ifms.odisa.govt.org"
  },
  "message": {
    "name": "Community Development Initiative",
    "linked_id": "sanction:251c51eb-e970-4e01-a99a-70136c47a934",
    "location_code": "pb.jalandhar",
    "program_code": "PORG/2023-24/00001",
    "transaction_id": "PI/2023-24/00001",
    "net_amount": 1000,
    "gross_amount": 1000,
    "individual": {
      "name": "John",
      "email": "[email protected]",
      "phone": 9876543210,
      "pin": 110001,
      "address": "3476, Gali Bajrang Bali, Delhi"
    },
    "children": [
      {
        "name": "Community Development Initiative",
        "linked_id": "sanction:251c51eb-e970-4e01-a99a-70136c47a934",
        "location_code": "pb.jalandhar",
        "program_code": "PORG/2023-24/00001",
        "transaction_id": "PI/2023-24/00001",
        "net_amount": 1000,
        "gross_amount": 1000,
        "individual": {
          "name": "John",
          "email": "[email protected]",
          "phone": 9876543210,
          "pin": 110001,
          "address": "3476, Gali Bajrang Bali, Delhi"
        },
        "children": [
          {
            "name": "Community Development Initiative",
            "linked_id": "sanction:251c51eb-e970-4e01-a99a-70136c47a934",
            "location_code": "pb.jalandhar",
            "program_code": "PORG/2023-24/00001",
            "transaction_id": "PI/2023-24/00001",
            "net_amount": 1000,
            "gross_amount": 1000,
            "individual": {
              "name": "John",
              "email": "[email protected]",
              "phone": 9876543210,
              "pin": 110001,
              "address": "3476, Gali Bajrang Bali, Delhi"
            },
            "children": "[Circular Reference]",
            "status": {
              "status_code": "SUCCESSFUL",
              "status_message": "text"
            },
            "additional_details": {},
            "account_code": "1234567890@SBIN0003491",
            "function_code": "LIVELIHOOD",
            "administration_code": "HUDD",
            "recipient_segment_code": "CBO",
            "economic_segment_code": "PEOPLE",
            "source_of_fund_code": "STATE",
            "target_segment_code": "MALE",
            "currency_code": "INR",
            "locale_code": "LC007"
          }
        ],
        "status": {
          "status_code": "SUCCESSFUL",
          "status_message": "text"
        },
        "additional_details": {},
        "account_code": "1234567890@SBIN0003491",
        "function_code": "LIVELIHOOD",
        "administration_code": "HUDD",
        "recipient_segment_code": "CBO",
        "economic_segment_code": "PEOPLE",
        "source_of_fund_code": "STATE",
        "target_segment_code": "MALE",
        "currency_code": "INR",
        "locale_code": "LC007"
      }
    ],
    "status": {
      "status_code": "SUCCESSFUL",
      "status_message": "text"
    },
    "additional_details": {},
    "account_code": "1234567890@SBIN0003491",
    "function_code": "LIVELIHOOD",
    "administration_code": "HUDD",
    "recipient_segment_code": "CBO",
    "economic_segment_code": "PEOPLE",
    "source_of_fund_code": "STATE",
    "target_segment_code": "MALE",
    "currency_code": "INR",
    "locale_code": "LC007"
  }
}
{
  "errors": [
    {
      "code": "text",
      "message": "text"
    }
  ]
}

Update program after create response

post

Enables exchange of program related messages

Body
signaturestringOptional

Signature of {header}+{message} body verified using sender's signing public key

Example: TgE1hcA2E+YPMdPGz4vveKQpR0x+pgzRTlet52qh63Kekr71vWWScXqaRFtQW64uRFZGBUhHYYZQ2y6LffwnNOOQhhssaThhqVBhXNEwX9i75SNYXi5XSJVDYzSyHrhF20HW6RE9mAVWdc80i7d+FXlh+b/U+fnj+SrZ2s6Xd0WUZvU29LgqeUpyznlWLu1mDdJxNZavsDLWmxjTnknqBjDvwSc35WhFDhXDA2lWmm8YpZ1Y6TBmvvtVS7mAOTnhFy9sdCbrLcfXk5QWIsdzlvPqlkvdwEf30OZ6ewb680Aj3hO2OT5LCv7iLyz7C7srnB9lJT5gXiw+eSnktPXlDA==
headerall ofRequired
and
messageall ofRequired
Responses
401
HTTP layer error details
application/json
403
HTTP layer error details
application/json
500
HTTP layer error details
application/json
default
Acknowledgement of message received after successful validation of message and signature
application/json
post
POST /ifix/v1/on-program HTTP/1.1
Host: 
Content-Type: application/json
Accept: */*
Content-Length: 2146

{
  "signature": "TgE1hcA2E+YPMdPGz4vveKQpR0x+pgzRTlet52qh63Kekr71vWWScXqaRFtQW64uRFZGBUhHYYZQ2y6LffwnNOOQhhssaThhqVBhXNEwX9i75SNYXi5XSJVDYzSyHrhF20HW6RE9mAVWdc80i7d+FXlh+b/U+fnj+SrZ2s6Xd0WUZvU29LgqeUpyznlWLu1mDdJxNZavsDLWmxjTnknqBjDvwSc35WhFDhXDA2lWmm8YpZ1Y6TBmvvtVS7mAOTnhFy9sdCbrLcfXk5QWIsdzlvPqlkvdwEf30OZ6ewb680Aj3hO2OT5LCv7iLyz7C7srnB9lJT5gXiw+eSnktPXlDA==",
  "header": {
    "message_id": "251c51eb-e970-4e01-a99a-70136c47a934",
    "message_ts": 1708428280,
    "action": "update",
    "sender_id": "ifix@https://mukta.odisa.govt.org",
    "sender_uri": "https://mukta.odisa.govt.org/{namespace}/callback/on-search",
    "receiver_id": "ifix@https://ifms.odisa.govt.org"
  },
  "message": {
    "name": "Community Development Initiative",
    "linked_id": "sanction:251c51eb-e970-4e01-a99a-70136c47a934",
    "location_code": "pb.jalandhar",
    "program_code": "PORG/2023-24/00001",
    "transaction_id": "PI/2023-24/00001",
    "net_amount": 1000,
    "gross_amount": 1000,
    "individual": {
      "name": "John",
      "email": "[email protected]",
      "phone": 9876543210,
      "pin": 110001,
      "address": "3476, Gali Bajrang Bali, Delhi"
    },
    "children": [
      {
        "name": "Community Development Initiative",
        "linked_id": "sanction:251c51eb-e970-4e01-a99a-70136c47a934",
        "location_code": "pb.jalandhar",
        "program_code": "PORG/2023-24/00001",
        "transaction_id": "PI/2023-24/00001",
        "net_amount": 1000,
        "gross_amount": 1000,
        "individual": {
          "name": "John",
          "email": "[email protected]",
          "phone": 9876543210,
          "pin": 110001,
          "address": "3476, Gali Bajrang Bali, Delhi"
        },
        "children": [
          "[Circular Reference]"
        ],
        "status": {
          "status_code": "SUCCESSFUL",
          "status_message": "text"
        },
        "additional_details": {},
        "account_code": "1234567890@SBIN0003491",
        "function_code": "LIVELIHOOD",
        "administration_code": "HUDD",
        "recipient_segment_code": "CBO",
        "economic_segment_code": "PEOPLE",
        "source_of_fund_code": "STATE",
        "target_segment_code": "MALE",
        "currency_code": "INR",
        "locale_code": "LC007"
      }
    ],
    "status": {
      "status_code": "SUCCESSFUL",
      "status_message": "text"
    },
    "additional_details": {},
    "account_code": "1234567890@SBIN0003491",
    "function_code": "LIVELIHOOD",
    "administration_code": "HUDD",
    "recipient_segment_code": "CBO",
    "economic_segment_code": "PEOPLE",
    "source_of_fund_code": "STATE",
    "target_segment_code": "MALE",
    "currency_code": "INR",
    "locale_code": "LC007"
  }
}
{
  "errors": [
    {
      "code": "text",
      "message": "text"
    }
  ]
}

Create estimate

post

Creates estimate for the program.

Body
signaturestringOptional

Signature of {header}+{message} body verified using sender's signing public key

Example: TgE1hcA2E+YPMdPGz4vveKQpR0x+pgzRTlet52qh63Kekr71vWWScXqaRFtQW64uRFZGBUhHYYZQ2y6LffwnNOOQhhssaThhqVBhXNEwX9i75SNYXi5XSJVDYzSyHrhF20HW6RE9mAVWdc80i7d+FXlh+b/U+fnj+SrZ2s6Xd0WUZvU29LgqeUpyznlWLu1mDdJxNZavsDLWmxjTnknqBjDvwSc35WhFDhXDA2lWmm8YpZ1Y6TBmvvtVS7mAOTnhFy9sdCbrLcfXk5QWIsdzlvPqlkvdwEf30OZ6ewb680Aj3hO2OT5LCv7iLyz7C7srnB9lJT5gXiw+eSnktPXlDA==
headerall ofRequired
and
Responses
401
HTTP layer error details
application/json
403
HTTP layer error details
application/json
500
HTTP layer error details
application/json
default
Acknowledgement of message received after successful validation of message and signature
application/json
post
POST /ifix/v1/estimate HTTP/1.1
Host: 
Content-Type: application/json
Accept: */*
Content-Length: 2882

{
  "signature": "TgE1hcA2E+YPMdPGz4vveKQpR0x+pgzRTlet52qh63Kekr71vWWScXqaRFtQW64uRFZGBUhHYYZQ2y6LffwnNOOQhhssaThhqVBhXNEwX9i75SNYXi5XSJVDYzSyHrhF20HW6RE9mAVWdc80i7d+FXlh+b/U+fnj+SrZ2s6Xd0WUZvU29LgqeUpyznlWLu1mDdJxNZavsDLWmxjTnknqBjDvwSc35WhFDhXDA2lWmm8YpZ1Y6TBmvvtVS7mAOTnhFy9sdCbrLcfXk5QWIsdzlvPqlkvdwEf30OZ6ewb680Aj3hO2OT5LCv7iLyz7C7srnB9lJT5gXiw+eSnktPXlDA==",
  "header": {
    "message_id": "251c51eb-e970-4e01-a99a-70136c47a934",
    "message_ts": 1708428280,
    "action": "create",
    "sender_id": "ifix@https://mukta.odisa.govt.org",
    "sender_uri": "https://mukta.odisa.govt.org/{namespace}/callback/on-search",
    "receiver_id": "ifix@https://ifms.odisa.govt.org"
  },
  "message": {
    "name": "Community Development Initiative",
    "linked_id": "sanction:251c51eb-e970-4e01-a99a-70136c47a934",
    "location_code": "pb.jalandhar",
    "program_code": "PORG/2023-24/00001",
    "transaction_id": "PI/2023-24/00001",
    "net_amount": 1000,
    "gross_amount": 1000,
    "individual": {
      "name": "John",
      "email": "[email protected]",
      "phone": 9876543210,
      "pin": 110001,
      "address": "3476, Gali Bajrang Bali, Delhi"
    },
    "children": [
      {
        "name": "Community Development Initiative",
        "linked_id": "sanction:251c51eb-e970-4e01-a99a-70136c47a934",
        "location_code": "pb.jalandhar",
        "program_code": "PORG/2023-24/00001",
        "transaction_id": "PI/2023-24/00001",
        "net_amount": 1000,
        "gross_amount": 1000,
        "individual": {
          "name": "John",
          "email": "[email protected]",
          "phone": 9876543210,
          "pin": 110001,
          "address": "3476, Gali Bajrang Bali, Delhi"
        },
        "children": [
          {
            "name": "Community Development Initiative",
            "linked_id": "sanction:251c51eb-e970-4e01-a99a-70136c47a934",
            "location_code": "pb.jalandhar",
            "program_code": "PORG/2023-24/00001",
            "transaction_id": "PI/2023-24/00001",
            "net_amount": 1000,
            "gross_amount": 1000,
            "individual": {
              "name": "John",
              "email": "[email protected]",
              "phone": 9876543210,
              "pin": 110001,
              "address": "3476, Gali Bajrang Bali, Delhi"
            },
            "children": "[Circular Reference]",
            "status": {
              "status_code": "SUCCESSFUL",
              "status_message": "text"
            },
            "additional_details": {},
            "account_code": "1234567890@SBIN0003491",
            "function_code": "LIVELIHOOD",
            "administration_code": "HUDD",
            "recipient_segment_code": "CBO",
            "economic_segment_code": "PEOPLE",
            "source_of_fund_code": "STATE",
            "target_segment_code": "MALE",
            "currency_code": "INR",
            "locale_code": "LC007"
          }
        ],
        "status": {
          "status_code": "SUCCESSFUL",
          "status_message": "text"
        },
        "additional_details": {},
        "account_code": "1234567890@SBIN0003491",
        "function_code": "LIVELIHOOD",
        "administration_code": "HUDD",
        "recipient_segment_code": "CBO",
        "economic_segment_code": "PEOPLE",
        "source_of_fund_code": "STATE",
        "target_segment_code": "MALE",
        "currency_code": "INR",
        "locale_code": "LC007"
      }
    ],
    "status": {
      "status_code": "SUCCESSFUL",
      "status_message": "text"
    },
    "additional_details": {},
    "account_code": "1234567890@SBIN0003491",
    "function_code": "LIVELIHOOD",
    "administration_code": "HUDD",
    "recipient_segment_code": "CBO",
    "economic_segment_code": "PEOPLE",
    "source_of_fund_code": "STATE",
    "target_segment_code": "MALE",
    "currency_code": "INR",
    "locale_code": "LC007"
  }
}
{
  "errors": [
    {
      "code": "text",
      "message": "text"
    }
  ]
}

Update estimate after create

post

User can update the estimate if already created using on-estimate.

Body
signaturestringOptional

Signature of {header}+{message} body verified using sender's signing public key

Example: TgE1hcA2E+YPMdPGz4vveKQpR0x+pgzRTlet52qh63Kekr71vWWScXqaRFtQW64uRFZGBUhHYYZQ2y6LffwnNOOQhhssaThhqVBhXNEwX9i75SNYXi5XSJVDYzSyHrhF20HW6RE9mAVWdc80i7d+FXlh+b/U+fnj+SrZ2s6Xd0WUZvU29LgqeUpyznlWLu1mDdJxNZavsDLWmxjTnknqBjDvwSc35WhFDhXDA2lWmm8YpZ1Y6TBmvvtVS7mAOTnhFy9sdCbrLcfXk5QWIsdzlvPqlkvdwEf30OZ6ewb680Aj3hO2OT5LCv7iLyz7C7srnB9lJT5gXiw+eSnktPXlDA==
headerall ofRequired
and
Responses
401
HTTP layer error details
application/json
403
HTTP layer error details
application/json
500
HTTP layer error details
application/json
default
Acknowledgement of message received after successful validation of message and signature
application/json
post
POST /ifix/v1/on-estimate HTTP/1.1
Host: 
Content-Type: application/json
Accept: */*
Content-Length: 2882

{
  "signature": "TgE1hcA2E+YPMdPGz4vveKQpR0x+pgzRTlet52qh63Kekr71vWWScXqaRFtQW64uRFZGBUhHYYZQ2y6LffwnNOOQhhssaThhqVBhXNEwX9i75SNYXi5XSJVDYzSyHrhF20HW6RE9mAVWdc80i7d+FXlh+b/U+fnj+SrZ2s6Xd0WUZvU29LgqeUpyznlWLu1mDdJxNZavsDLWmxjTnknqBjDvwSc35WhFDhXDA2lWmm8YpZ1Y6TBmvvtVS7mAOTnhFy9sdCbrLcfXk5QWIsdzlvPqlkvdwEf30OZ6ewb680Aj3hO2OT5LCv7iLyz7C7srnB9lJT5gXiw+eSnktPXlDA==",
  "header": {
    "message_id": "251c51eb-e970-4e01-a99a-70136c47a934",
    "message_ts": 1708428280,
    "action": "create",
    "sender_id": "ifix@https://mukta.odisa.govt.org",
    "sender_uri": "https://mukta.odisa.govt.org/{namespace}/callback/on-search",
    "receiver_id": "ifix@https://ifms.odisa.govt.org"
  },
  "message": {
    "name": "Community Development Initiative",
    "linked_id": "sanction:251c51eb-e970-4e01-a99a-70136c47a934",
    "location_code": "pb.jalandhar",
    "program_code": "PORG/2023-24/00001",
    "transaction_id": "PI/2023-24/00001",
    "net_amount": 1000,
    "gross_amount": 1000,
    "individual": {
      "name": "John",
      "email": "[email protected]",
      "phone": 9876543210,
      "pin": 110001,
      "address": "3476, Gali Bajrang Bali, Delhi"
    },
    "children": [
      {
        "name": "Community Development Initiative",
        "linked_id": "sanction:251c51eb-e970-4e01-a99a-70136c47a934",
        "location_code": "pb.jalandhar",
        "program_code": "PORG/2023-24/00001",
        "transaction_id": "PI/2023-24/00001",
        "net_amount": 1000,
        "gross_amount": 1000,
        "individual": {
          "name": "John",
          "email": "[email protected]",
          "phone": 9876543210,
          "pin": 110001,
          "address": "3476, Gali Bajrang Bali, Delhi"
        },
        "children": [
          {
            "name": "Community Development Initiative",
            "linked_id": "sanction:251c51eb-e970-4e01-a99a-70136c47a934",
            "location_code": "pb.jalandhar",
            "program_code": "PORG/2023-24/00001",
            "transaction_id": "PI/2023-24/00001",
            "net_amount": 1000,
            "gross_amount": 1000,
            "individual": {
              "name": "John",
              "email": "[email protected]",
              "phone": 9876543210,
              "pin": 110001,
              "address": "3476, Gali Bajrang Bali, Delhi"
            },
            "children": "[Circular Reference]",
            "status": {
              "status_code": "SUCCESSFUL",
              "status_message": "text"
            },
            "additional_details": {},
            "account_code": "1234567890@SBIN0003491",
            "function_code": "LIVELIHOOD",
            "administration_code": "HUDD",
            "recipient_segment_code": "CBO",
            "economic_segment_code": "PEOPLE",
            "source_of_fund_code": "STATE",
            "target_segment_code": "MALE",
            "currency_code": "INR",
            "locale_code": "LC007"
          }
        ],
        "status": {
          "status_code": "SUCCESSFUL",
          "status_message": "text"
        },
        "additional_details": {},
        "account_code": "1234567890@SBIN0003491",
        "function_code": "LIVELIHOOD",
        "administration_code": "HUDD",
        "recipient_segment_code": "CBO",
        "economic_segment_code": "PEOPLE",
        "source_of_fund_code": "STATE",
        "target_segment_code": "MALE",
        "currency_code": "INR",
        "locale_code": "LC007"
      }
    ],
    "status": {
      "status_code": "SUCCESSFUL",
      "status_message": "text"
    },
    "additional_details": {},
    "account_code": "1234567890@SBIN0003491",
    "function_code": "LIVELIHOOD",
    "administration_code": "HUDD",
    "recipient_segment_code": "CBO",
    "economic_segment_code": "PEOPLE",
    "source_of_fund_code": "STATE",
    "target_segment_code": "MALE",
    "currency_code": "INR",
    "locale_code": "LC007"
  }
}
{
  "errors": [
    {
      "code": "text",
      "message": "text"
    }
  ]
}

Create sanction request

post

Create sanction request in the system, this sanction is linked with program.

Body
signaturestringOptional

Signature of {header}+{message} body verified using sender's signing public key

Example: TgE1hcA2E+YPMdPGz4vveKQpR0x+pgzRTlet52qh63Kekr71vWWScXqaRFtQW64uRFZGBUhHYYZQ2y6LffwnNOOQhhssaThhqVBhXNEwX9i75SNYXi5XSJVDYzSyHrhF20HW6RE9mAVWdc80i7d+FXlh+b/U+fnj+SrZ2s6Xd0WUZvU29LgqeUpyznlWLu1mDdJxNZavsDLWmxjTnknqBjDvwSc35WhFDhXDA2lWmm8YpZ1Y6TBmvvtVS7mAOTnhFy9sdCbrLcfXk5QWIsdzlvPqlkvdwEf30OZ6ewb680Aj3hO2OT5LCv7iLyz7C7srnB9lJT5gXiw+eSnktPXlDA==
headerall ofRequired
and
Responses
401
HTTP layer error details
application/json
403
HTTP layer error details
application/json
500
HTTP layer error details
application/json
default
Acknowledgement of message received after successful validation of message and signature
application/json
post
POST /ifix/v1/sanction HTTP/1.1
Host: 
Content-Type: application/json
Accept: */*
Content-Length: 2882

{
  "signature": "TgE1hcA2E+YPMdPGz4vveKQpR0x+pgzRTlet52qh63Kekr71vWWScXqaRFtQW64uRFZGBUhHYYZQ2y6LffwnNOOQhhssaThhqVBhXNEwX9i75SNYXi5XSJVDYzSyHrhF20HW6RE9mAVWdc80i7d+FXlh+b/U+fnj+SrZ2s6Xd0WUZvU29LgqeUpyznlWLu1mDdJxNZavsDLWmxjTnknqBjDvwSc35WhFDhXDA2lWmm8YpZ1Y6TBmvvtVS7mAOTnhFy9sdCbrLcfXk5QWIsdzlvPqlkvdwEf30OZ6ewb680Aj3hO2OT5LCv7iLyz7C7srnB9lJT5gXiw+eSnktPXlDA==",
  "header": {
    "message_id": "251c51eb-e970-4e01-a99a-70136c47a934",
    "message_ts": 1708428280,
    "action": "create",
    "sender_id": "ifix@https://mukta.odisa.govt.org",
    "sender_uri": "https://mukta.odisa.govt.org/{namespace}/callback/on-search",
    "receiver_id": "ifix@https://ifms.odisa.govt.org"
  },
  "message": {
    "name": "Community Development Initiative",
    "linked_id": "sanction:251c51eb-e970-4e01-a99a-70136c47a934",
    "location_code": "pb.jalandhar",
    "program_code": "PORG/2023-24/00001",
    "transaction_id": "PI/2023-24/00001",
    "net_amount": 1000,
    "gross_amount": 1000,
    "individual": {
      "name": "John",
      "email": "[email protected]",
      "phone": 9876543210,
      "pin": 110001,
      "address": "3476, Gali Bajrang Bali, Delhi"
    },
    "children": [
      {
        "name": "Community Development Initiative",
        "linked_id": "sanction:251c51eb-e970-4e01-a99a-70136c47a934",
        "location_code": "pb.jalandhar",
        "program_code": "PORG/2023-24/00001",
        "transaction_id": "PI/2023-24/00001",
        "net_amount": 1000,
        "gross_amount": 1000,
        "individual": {
          "name": "John",
          "email": "[email protected]",
          "phone": 9876543210,
          "pin": 110001,
          "address": "3476, Gali Bajrang Bali, Delhi"
        },
        "children": [
          {
            "name": "Community Development Initiative",
            "linked_id": "sanction:251c51eb-e970-4e01-a99a-70136c47a934",
            "location_code": "pb.jalandhar",
            "program_code": "PORG/2023-24/00001",
            "transaction_id": "PI/2023-24/00001",
            "net_amount": 1000,
            "gross_amount": 1000,
            "individual": {
              "name": "John",
              "email": "[email protected]",
              "phone": 9876543210,
              "pin": 110001,
              "address": "3476, Gali Bajrang Bali, Delhi"
            },
            "children": "[Circular Reference]",
            "status": {
              "status_code": "SUCCESSFUL",
              "status_message": "text"
            },
            "additional_details": {},
            "account_code": "1234567890@SBIN0003491",
            "function_code": "LIVELIHOOD",
            "administration_code": "HUDD",
            "recipient_segment_code": "CBO",
            "economic_segment_code": "PEOPLE",
            "source_of_fund_code": "STATE",
            "target_segment_code": "MALE",
            "currency_code": "INR",
            "locale_code": "LC007"
          }
        ],
        "status": {
          "status_code": "SUCCESSFUL",
          "status_message": "text"
        },
        "additional_details": {},
        "account_code": "1234567890@SBIN0003491",
        "function_code": "LIVELIHOOD",
        "administration_code": "HUDD",
        "recipient_segment_code": "CBO",
        "economic_segment_code": "PEOPLE",
        "source_of_fund_code": "STATE",
        "target_segment_code": "MALE",
        "currency_code": "INR",
        "locale_code": "LC007"
      }
    ],
    "status": {
      "status_code": "SUCCESSFUL",
      "status_message": "text"
    },
    "additional_details": {},
    "account_code": "1234567890@SBIN0003491",
    "function_code": "LIVELIHOOD",
    "administration_code": "HUDD",
    "recipient_segment_code": "CBO",
    "economic_segment_code": "PEOPLE",
    "source_of_fund_code": "STATE",
    "target_segment_code": "MALE",
    "currency_code": "INR",
    "locale_code": "LC007"
  }
}
{
  "errors": [
    {
      "code": "text",
      "message": "text"
    }
  ]
}

Update created sanction

post

Update staus of created sanciton request.

Body
signaturestringOptional

Signature of {header}+{message} body verified using sender's signing public key

Example: TgE1hcA2E+YPMdPGz4vveKQpR0x+pgzRTlet52qh63Kekr71vWWScXqaRFtQW64uRFZGBUhHYYZQ2y6LffwnNOOQhhssaThhqVBhXNEwX9i75SNYXi5XSJVDYzSyHrhF20HW6RE9mAVWdc80i7d+FXlh+b/U+fnj+SrZ2s6Xd0WUZvU29LgqeUpyznlWLu1mDdJxNZavsDLWmxjTnknqBjDvwSc35WhFDhXDA2lWmm8YpZ1Y6TBmvvtVS7mAOTnhFy9sdCbrLcfXk5QWIsdzlvPqlkvdwEf30OZ6ewb680Aj3hO2OT5LCv7iLyz7C7srnB9lJT5gXiw+eSnktPXlDA==
headerall ofRequired
and
Responses
401
HTTP layer error details
application/json
403
HTTP layer error details
application/json
500
HTTP layer error details
application/json
default
Acknowledgement of message received after successful validation of message and signature
application/json
post
POST /ifix/v1/on-sanction HTTP/1.1
Host: 
Content-Type: application/json
Accept: */*
Content-Length: 2882

{
  "signature": "TgE1hcA2E+YPMdPGz4vveKQpR0x+pgzRTlet52qh63Kekr71vWWScXqaRFtQW64uRFZGBUhHYYZQ2y6LffwnNOOQhhssaThhqVBhXNEwX9i75SNYXi5XSJVDYzSyHrhF20HW6RE9mAVWdc80i7d+FXlh+b/U+fnj+SrZ2s6Xd0WUZvU29LgqeUpyznlWLu1mDdJxNZavsDLWmxjTnknqBjDvwSc35WhFDhXDA2lWmm8YpZ1Y6TBmvvtVS7mAOTnhFy9sdCbrLcfXk5QWIsdzlvPqlkvdwEf30OZ6ewb680Aj3hO2OT5LCv7iLyz7C7srnB9lJT5gXiw+eSnktPXlDA==",
  "header": {
    "message_id": "251c51eb-e970-4e01-a99a-70136c47a934",
    "message_ts": 1708428280,
    "action": "update",
    "sender_id": "ifix@https://mukta.odisa.govt.org",
    "sender_uri": "https://mukta.odisa.govt.org/{namespace}/callback/on-search",
    "receiver_id": "ifix@https://ifms.odisa.govt.org"
  },
  "message": {
    "name": "Community Development Initiative",
    "linked_id": "sanction:251c51eb-e970-4e01-a99a-70136c47a934",
    "location_code": "pb.jalandhar",
    "program_code": "PORG/2023-24/00001",
    "transaction_id": "PI/2023-24/00001",
    "net_amount": 1000,
    "gross_amount": 1000,
    "individual": {
      "name": "John",
      "email": "[email protected]",
      "phone": 9876543210,
      "pin": 110001,
      "address": "3476, Gali Bajrang Bali, Delhi"
    },
    "children": [
      {
        "name": "Community Development Initiative",
        "linked_id": "sanction:251c51eb-e970-4e01-a99a-70136c47a934",
        "location_code": "pb.jalandhar",
        "program_code": "PORG/2023-24/00001",
        "transaction_id": "PI/2023-24/00001",
        "net_amount": 1000,
        "gross_amount": 1000,
        "individual": {
          "name": "John",
          "email": "[email protected]",
          "phone": 9876543210,
          "pin": 110001,
          "address": "3476, Gali Bajrang Bali, Delhi"
        },
        "children": [
          {
            "name": "Community Development Initiative",
            "linked_id": "sanction:251c51eb-e970-4e01-a99a-70136c47a934",
            "location_code": "pb.jalandhar",
            "program_code": "PORG/2023-24/00001",
            "transaction_id": "PI/2023-24/00001",
            "net_amount": 1000,
            "gross_amount": 1000,
            "individual": {
              "name": "John",
              "email": "[email protected]",
              "phone": 9876543210,
              "pin": 110001,
              "address": "3476, Gali Bajrang Bali, Delhi"
            },
            "children": "[Circular Reference]",
            "status": {
              "status_code": "SUCCESSFUL",
              "status_message": "text"
            },
            "additional_details": {},
            "account_code": "1234567890@SBIN0003491",
            "function_code": "LIVELIHOOD",
            "administration_code": "HUDD",
            "recipient_segment_code": "CBO",
            "economic_segment_code": "PEOPLE",
            "source_of_fund_code": "STATE",
            "target_segment_code": "MALE",
            "currency_code": "INR",
            "locale_code": "LC007"
          }
        ],
        "status": {
          "status_code": "SUCCESSFUL",
          "status_message": "text"
        },
        "additional_details": {},
        "account_code": "1234567890@SBIN0003491",
        "function_code": "LIVELIHOOD",
        "administration_code": "HUDD",
        "recipient_segment_code": "CBO",
        "economic_segment_code": "PEOPLE",
        "source_of_fund_code": "STATE",
        "target_segment_code": "MALE",
        "currency_code": "INR",
        "locale_code": "LC007"
      }
    ],
    "status": {
      "status_code": "SUCCESSFUL",
      "status_message": "text"
    },
    "additional_details": {},
    "account_code": "1234567890@SBIN0003491",
    "function_code": "LIVELIHOOD",
    "administration_code": "HUDD",
    "recipient_segment_code": "CBO",
    "economic_segment_code": "PEOPLE",
    "source_of_fund_code": "STATE",
    "target_segment_code": "MALE",
    "currency_code": "INR",
    "locale_code": "LC007"
  }
}
{
  "errors": [
    {
      "code": "text",
      "message": "text"
    }
  ]
}

Request to create allocation

post

User can request to create an allocation for sanction.

Body
signaturestringOptional

Signature of {header}+{message} body verified using sender's signing public key

Example: TgE1hcA2E+YPMdPGz4vveKQpR0x+pgzRTlet52qh63Kekr71vWWScXqaRFtQW64uRFZGBUhHYYZQ2y6LffwnNOOQhhssaThhqVBhXNEwX9i75SNYXi5XSJVDYzSyHrhF20HW6RE9mAVWdc80i7d+FXlh+b/U+fnj+SrZ2s6Xd0WUZvU29LgqeUpyznlWLu1mDdJxNZavsDLWmxjTnknqBjDvwSc35WhFDhXDA2lWmm8YpZ1Y6TBmvvtVS7mAOTnhFy9sdCbrLcfXk5QWIsdzlvPqlkvdwEf30OZ6ewb680Aj3hO2OT5LCv7iLyz7C7srnB9lJT5gXiw+eSnktPXlDA==
headerall ofRequired
and
Responses
401
HTTP layer error details
application/json
403
HTTP layer error details
application/json
500
HTTP layer error details
application/json
default
Acknowledgement of message received after successful validation of message and signature
application/json
post
POST /ifix/v1/allocation HTTP/1.1
Host: 
Content-Type: application/json
Accept: */*
Content-Length: 2882

{
  "signature": "TgE1hcA2E+YPMdPGz4vveKQpR0x+pgzRTlet52qh63Kekr71vWWScXqaRFtQW64uRFZGBUhHYYZQ2y6LffwnNOOQhhssaThhqVBhXNEwX9i75SNYXi5XSJVDYzSyHrhF20HW6RE9mAVWdc80i7d+FXlh+b/U+fnj+SrZ2s6Xd0WUZvU29LgqeUpyznlWLu1mDdJxNZavsDLWmxjTnknqBjDvwSc35WhFDhXDA2lWmm8YpZ1Y6TBmvvtVS7mAOTnhFy9sdCbrLcfXk5QWIsdzlvPqlkvdwEf30OZ6ewb680Aj3hO2OT5LCv7iLyz7C7srnB9lJT5gXiw+eSnktPXlDA==",
  "header": {
    "message_id": "251c51eb-e970-4e01-a99a-70136c47a934",
    "message_ts": 1708428280,
    "action": "create",
    "sender_id": "ifix@https://mukta.odisa.govt.org",
    "sender_uri": "https://mukta.odisa.govt.org/{namespace}/callback/on-search",
    "receiver_id": "ifix@https://ifms.odisa.govt.org"
  },
  "message": {
    "name": "Community Development Initiative",
    "linked_id": "sanction:251c51eb-e970-4e01-a99a-70136c47a934",
    "location_code": "pb.jalandhar",
    "program_code": "PORG/2023-24/00001",
    "transaction_id": "PI/2023-24/00001",
    "net_amount": 1000,
    "gross_amount": 1000,
    "individual": {
      "name": "John",
      "email": "[email protected]",
      "phone": 9876543210,
      "pin": 110001,
      "address": "3476, Gali Bajrang Bali, Delhi"
    },
    "children": [
      {
        "name": "Community Development Initiative",
        "linked_id": "sanction:251c51eb-e970-4e01-a99a-70136c47a934",
        "location_code": "pb.jalandhar",
        "program_code": "PORG/2023-24/00001",
        "transaction_id": "PI/2023-24/00001",
        "net_amount": 1000,
        "gross_amount": 1000,
        "individual": {
          "name": "John",
          "email": "[email protected]",
          "phone": 9876543210,
          "pin": 110001,
          "address": "3476, Gali Bajrang Bali, Delhi"
        },
        "children": [
          {
            "name": "Community Development Initiative",
            "linked_id": "sanction:251c51eb-e970-4e01-a99a-70136c47a934",
            "location_code": "pb.jalandhar",
            "program_code": "PORG/2023-24/00001",
            "transaction_id": "PI/2023-24/00001",
            "net_amount": 1000,
            "gross_amount": 1000,
            "individual": {
              "name": "John",
              "email": "[email protected]",
              "phone": 9876543210,
              "pin": 110001,
              "address": "3476, Gali Bajrang Bali, Delhi"
            },
            "children": "[Circular Reference]",
            "status": {
              "status_code": "SUCCESSFUL",
              "status_message": "text"
            },
            "additional_details": {},
            "account_code": "1234567890@SBIN0003491",
            "function_code": "LIVELIHOOD",
            "administration_code": "HUDD",
            "recipient_segment_code": "CBO",
            "economic_segment_code": "PEOPLE",
            "source_of_fund_code": "STATE",
            "target_segment_code": "MALE",
            "currency_code": "INR",
            "locale_code": "LC007"
          }
        ],
        "status": {
          "status_code": "SUCCESSFUL",
          "status_message": "text"
        },
        "additional_details": {},
        "account_code": "1234567890@SBIN0003491",
        "function_code": "LIVELIHOOD",
        "administration_code": "HUDD",
        "recipient_segment_code": "CBO",
        "economic_segment_code": "PEOPLE",
        "source_of_fund_code": "STATE",
        "target_segment_code": "MALE",
        "currency_code": "INR",
        "locale_code": "LC007"
      }
    ],
    "status": {
      "status_code": "SUCCESSFUL",
      "status_message": "text"
    },
    "additional_details": {},
    "account_code": "1234567890@SBIN0003491",
    "function_code": "LIVELIHOOD",
    "administration_code": "HUDD",
    "recipient_segment_code": "CBO",
    "economic_segment_code": "PEOPLE",
    "source_of_fund_code": "STATE",
    "target_segment_code": "MALE",
    "currency_code": "INR",
    "locale_code": "LC007"
  }
}
{
  "errors": [
    {
      "code": "text",
      "message": "text"
    }
  ]
}

Update allocation status

post

Update created allocation staus

Body
signaturestringOptional

Signature of {header}+{message} body verified using sender's signing public key

Example: TgE1hcA2E+YPMdPGz4vveKQpR0x+pgzRTlet52qh63Kekr71vWWScXqaRFtQW64uRFZGBUhHYYZQ2y6LffwnNOOQhhssaThhqVBhXNEwX9i75SNYXi5XSJVDYzSyHrhF20HW6RE9mAVWdc80i7d+FXlh+b/U+fnj+SrZ2s6Xd0WUZvU29LgqeUpyznlWLu1mDdJxNZavsDLWmxjTnknqBjDvwSc35WhFDhXDA2lWmm8YpZ1Y6TBmvvtVS7mAOTnhFy9sdCbrLcfXk5QWIsdzlvPqlkvdwEf30OZ6ewb680Aj3hO2OT5LCv7iLyz7C7srnB9lJT5gXiw+eSnktPXlDA==
headerall ofRequired
and
Responses
401
HTTP layer error details
application/json
403
HTTP layer error details
application/json
500
HTTP layer error details
application/json
default
Acknowledgement of message received after successful validation of message and signature
application/json
post
POST /ifix/v1/on-allocation HTTP/1.1
Host: 
Content-Type: application/json
Accept: */*
Content-Length: 2882

{
  "signature": "TgE1hcA2E+YPMdPGz4vveKQpR0x+pgzRTlet52qh63Kekr71vWWScXqaRFtQW64uRFZGBUhHYYZQ2y6LffwnNOOQhhssaThhqVBhXNEwX9i75SNYXi5XSJVDYzSyHrhF20HW6RE9mAVWdc80i7d+FXlh+b/U+fnj+SrZ2s6Xd0WUZvU29LgqeUpyznlWLu1mDdJxNZavsDLWmxjTnknqBjDvwSc35WhFDhXDA2lWmm8YpZ1Y6TBmvvtVS7mAOTnhFy9sdCbrLcfXk5QWIsdzlvPqlkvdwEf30OZ6ewb680Aj3hO2OT5LCv7iLyz7C7srnB9lJT5gXiw+eSnktPXlDA==",
  "header": {
    "message_id": "251c51eb-e970-4e01-a99a-70136c47a934",
    "message_ts": 1708428280,
    "action": "create",
    "sender_id": "ifix@https://mukta.odisa.govt.org",
    "sender_uri": "https://mukta.odisa.govt.org/{namespace}/callback/on-search",
    "receiver_id": "ifix@https://ifms.odisa.govt.org"
  },
  "message": {
    "name": "Community Development Initiative",
    "linked_id": "sanction:251c51eb-e970-4e01-a99a-70136c47a934",
    "location_code": "pb.jalandhar",
    "program_code": "PORG/2023-24/00001",
    "transaction_id": "PI/2023-24/00001",
    "net_amount": 1000,
    "gross_amount": 1000,
    "individual": {
      "name": "John",
      "email": "[email protected]",
      "phone": 9876543210,
      "pin": 110001,
      "address": "3476, Gali Bajrang Bali, Delhi"
    },
    "children": [
      {
        "name": "Community Development Initiative",
        "linked_id": "sanction:251c51eb-e970-4e01-a99a-70136c47a934",
        "location_code": "pb.jalandhar",
        "program_code": "PORG/2023-24/00001",
        "transaction_id": "PI/2023-24/00001",
        "net_amount": 1000,
        "gross_amount": 1000,
        "individual": {
          "name": "John",
          "email": "[email protected]",
          "phone": 9876543210,
          "pin": 110001,
          "address": "3476, Gali Bajrang Bali, Delhi"
        },
        "children": [
          {
            "name": "Community Development Initiative",
            "linked_id": "sanction:251c51eb-e970-4e01-a99a-70136c47a934",
            "location_code": "pb.jalandhar",
            "program_code": "PORG/2023-24/00001",
            "transaction_id": "PI/2023-24/00001",
            "net_amount": 1000,
            "gross_amount": 1000,
            "individual": {
              "name": "John",
              "email": "[email protected]",
              "phone": 9876543210,
              "pin": 110001,
              "address": "3476, Gali Bajrang Bali, Delhi"
            },
            "children": "[Circular Reference]",
            "status": {
              "status_code": "SUCCESSFUL",
              "status_message": "text"
            },
            "additional_details": {},
            "account_code": "1234567890@SBIN0003491",
            "function_code": "LIVELIHOOD",
            "administration_code": "HUDD",
            "recipient_segment_code": "CBO",
            "economic_segment_code": "PEOPLE",
            "source_of_fund_code": "STATE",
            "target_segment_code": "MALE",
            "currency_code": "INR",
            "locale_code": "LC007"
          }
        ],
        "status": {
          "status_code": "SUCCESSFUL",
          "status_message": "text"
        },
        "additional_details": {},
        "account_code": "1234567890@SBIN0003491",
        "function_code": "LIVELIHOOD",
        "administration_code": "HUDD",
        "recipient_segment_code": "CBO",
        "economic_segment_code": "PEOPLE",
        "source_of_fund_code": "STATE",
        "target_segment_code": "MALE",
        "currency_code": "INR",
        "locale_code": "LC007"
      }
    ],
    "status": {
      "status_code": "SUCCESSFUL",
      "status_message": "text"
    },
    "additional_details": {},
    "account_code": "1234567890@SBIN0003491",
    "function_code": "LIVELIHOOD",
    "administration_code": "HUDD",
    "recipient_segment_code": "CBO",
    "economic_segment_code": "PEOPLE",
    "source_of_fund_code": "STATE",
    "target_segment_code": "MALE",
    "currency_code": "INR",
    "locale_code": "LC007"
  }
}
{
  "errors": [
    {
      "code": "text",
      "message": "text"
    }
  ]
}

Initiate payment request

post

Create new disbursement request to initiate payment.

Body
signaturestringOptional

Signature of {header}+{message} body verified using sender's signing public key

Example: TgE1hcA2E+YPMdPGz4vveKQpR0x+pgzRTlet52qh63Kekr71vWWScXqaRFtQW64uRFZGBUhHYYZQ2y6LffwnNOOQhhssaThhqVBhXNEwX9i75SNYXi5XSJVDYzSyHrhF20HW6RE9mAVWdc80i7d+FXlh+b/U+fnj+SrZ2s6Xd0WUZvU29LgqeUpyznlWLu1mDdJxNZavsDLWmxjTnknqBjDvwSc35WhFDhXDA2lWmm8YpZ1Y6TBmvvtVS7mAOTnhFy9sdCbrLcfXk5QWIsdzlvPqlkvdwEf30OZ6ewb680Aj3hO2OT5LCv7iLyz7C7srnB9lJT5gXiw+eSnktPXlDA==
headerall ofRequired
and
messageall ofRequired
Responses
401
HTTP layer error details
application/json
403
HTTP layer error details
application/json
500
HTTP layer error details
application/json
default
Acknowledgement of message received after successful validation of message and signature
application/json
post
POST /ifix/v1/disburse HTTP/1.1
Host: 
Content-Type: application/json
Accept: */*
Content-Length: 2146

{
  "signature": "TgE1hcA2E+YPMdPGz4vveKQpR0x+pgzRTlet52qh63Kekr71vWWScXqaRFtQW64uRFZGBUhHYYZQ2y6LffwnNOOQhhssaThhqVBhXNEwX9i75SNYXi5XSJVDYzSyHrhF20HW6RE9mAVWdc80i7d+FXlh+b/U+fnj+SrZ2s6Xd0WUZvU29LgqeUpyznlWLu1mDdJxNZavsDLWmxjTnknqBjDvwSc35WhFDhXDA2lWmm8YpZ1Y6TBmvvtVS7mAOTnhFy9sdCbrLcfXk5QWIsdzlvPqlkvdwEf30OZ6ewb680Aj3hO2OT5LCv7iLyz7C7srnB9lJT5gXiw+eSnktPXlDA==",
  "header": {
    "message_id": "251c51eb-e970-4e01-a99a-70136c47a934",
    "message_ts": 1708428280,
    "action": "create",
    "sender_id": "ifix@https://mukta.odisa.govt.org",
    "sender_uri": "https://mukta.odisa.govt.org/{namespace}/callback/on-search",
    "receiver_id": "ifix@https://ifms.odisa.govt.org"
  },
  "message": {
    "name": "Community Development Initiative",
    "linked_id": "sanction:251c51eb-e970-4e01-a99a-70136c47a934",
    "location_code": "pb.jalandhar",
    "program_code": "PORG/2023-24/00001",
    "transaction_id": "PI/2023-24/00001",
    "net_amount": 1000,
    "gross_amount": 1000,
    "individual": {
      "name": "John",
      "email": "[email protected]",
      "phone": 9876543210,
      "pin": 110001,
      "address": "3476, Gali Bajrang Bali, Delhi"
    },
    "children": [
      {
        "name": "Community Development Initiative",
        "linked_id": "sanction:251c51eb-e970-4e01-a99a-70136c47a934",
        "location_code": "pb.jalandhar",
        "program_code": "PORG/2023-24/00001",
        "transaction_id": "PI/2023-24/00001",
        "net_amount": 1000,
        "gross_amount": 1000,
        "individual": {
          "name": "John",
          "email": "[email protected]",
          "phone": 9876543210,
          "pin": 110001,
          "address": "3476, Gali Bajrang Bali, Delhi"
        },
        "children": [
          "[Circular Reference]"
        ],
        "status": {
          "status_code": "SUCCESSFUL",
          "status_message": "text"
        },
        "additional_details": {},
        "account_code": "1234567890@SBIN0003491",
        "function_code": "LIVELIHOOD",
        "administration_code": "HUDD",
        "recipient_segment_code": "CBO",
        "economic_segment_code": "PEOPLE",
        "source_of_fund_code": "STATE",
        "target_segment_code": "MALE",
        "currency_code": "INR",
        "locale_code": "LC007"
      }
    ],
    "status": {
      "status_code": "SUCCESSFUL",
      "status_message": "text"
    },
    "additional_details": {},
    "account_code": "1234567890@SBIN0003491",
    "function_code": "LIVELIHOOD",
    "administration_code": "HUDD",
    "recipient_segment_code": "CBO",
    "economic_segment_code": "PEOPLE",
    "source_of_fund_code": "STATE",
    "target_segment_code": "MALE",
    "currency_code": "INR",
    "locale_code": "LC007"
  }
}
{
  "errors": [
    {
      "code": "text",
      "message": "text"
    }
  ]
}

Updated status of create disburse request

post

Updated status of create disburse request

Body
signaturestringOptional

Signature of {header}+{message} body verified using sender's signing public key

Example: TgE1hcA2E+YPMdPGz4vveKQpR0x+pgzRTlet52qh63Kekr71vWWScXqaRFtQW64uRFZGBUhHYYZQ2y6LffwnNOOQhhssaThhqVBhXNEwX9i75SNYXi5XSJVDYzSyHrhF20HW6RE9mAVWdc80i7d+FXlh+b/U+fnj+SrZ2s6Xd0WUZvU29LgqeUpyznlWLu1mDdJxNZavsDLWmxjTnknqBjDvwSc35WhFDhXDA2lWmm8YpZ1Y6TBmvvtVS7mAOTnhFy9sdCbrLcfXk5QWIsdzlvPqlkvdwEf30OZ6ewb680Aj3hO2OT5LCv7iLyz7C7srnB9lJT5gXiw+eSnktPXlDA==
headerall ofRequired
and
messageall ofRequired
Responses
401
HTTP layer error details
application/json
403
HTTP layer error details
application/json
500
HTTP layer error details
application/json
default
Acknowledgement of message received after successful validation of message and signature
application/json
post
POST /ifix/v1/on-disburse HTTP/1.1
Host: 
Content-Type: application/json
Accept: */*
Content-Length: 2146

{
  "signature": "TgE1hcA2E+YPMdPGz4vveKQpR0x+pgzRTlet52qh63Kekr71vWWScXqaRFtQW64uRFZGBUhHYYZQ2y6LffwnNOOQhhssaThhqVBhXNEwX9i75SNYXi5XSJVDYzSyHrhF20HW6RE9mAVWdc80i7d+FXlh+b/U+fnj+SrZ2s6Xd0WUZvU29LgqeUpyznlWLu1mDdJxNZavsDLWmxjTnknqBjDvwSc35WhFDhXDA2lWmm8YpZ1Y6TBmvvtVS7mAOTnhFy9sdCbrLcfXk5QWIsdzlvPqlkvdwEf30OZ6ewb680Aj3hO2OT5LCv7iLyz7C7srnB9lJT5gXiw+eSnktPXlDA==",
  "header": {
    "message_id": "251c51eb-e970-4e01-a99a-70136c47a934",
    "message_ts": 1708428280,
    "action": "update",
    "sender_id": "ifix@https://mukta.odisa.govt.org",
    "sender_uri": "https://mukta.odisa.govt.org/{namespace}/callback/on-search",
    "receiver_id": "ifix@https://ifms.odisa.govt.org"
  },
  "message": {
    "name": "Community Development Initiative",
    "linked_id": "sanction:251c51eb-e970-4e01-a99a-70136c47a934",
    "location_code": "pb.jalandhar",
    "program_code": "PORG/2023-24/00001",
    "transaction_id": "PI/2023-24/00001",
    "net_amount": 1000,
    "gross_amount": 1000,
    "individual": {
      "name": "John",
      "email": "[email protected]",
      "phone": 9876543210,
      "pin": 110001,
      "address": "3476, Gali Bajrang Bali, Delhi"
    },
    "children": [
      {
        "name": "Community Development Initiative",
        "linked_id": "sanction:251c51eb-e970-4e01-a99a-70136c47a934",
        "location_code": "pb.jalandhar",
        "program_code": "PORG/2023-24/00001",
        "transaction_id": "PI/2023-24/00001",
        "net_amount": 1000,
        "gross_amount": 1000,
        "individual": {
          "name": "John",
          "email": "[email protected]",
          "phone": 9876543210,
          "pin": 110001,
          "address": "3476, Gali Bajrang Bali, Delhi"
        },
        "children": [
          "[Circular Reference]"
        ],
        "status": {
          "status_code": "SUCCESSFUL",
          "status_message": "text"
        },
        "additional_details": {},
        "account_code": "1234567890@SBIN0003491",
        "function_code": "LIVELIHOOD",
        "administration_code": "HUDD",
        "recipient_segment_code": "CBO",
        "economic_segment_code": "PEOPLE",
        "source_of_fund_code": "STATE",
        "target_segment_code": "MALE",
        "currency_code": "INR",
        "locale_code": "LC007"
      }
    ],
    "status": {
      "status_code": "SUCCESSFUL",
      "status_message": "text"
    },
    "additional_details": {},
    "account_code": "1234567890@SBIN0003491",
    "function_code": "LIVELIHOOD",
    "administration_code": "HUDD",
    "recipient_segment_code": "CBO",
    "economic_segment_code": "PEOPLE",
    "source_of_fund_code": "STATE",
    "target_segment_code": "MALE",
    "currency_code": "INR",
    "locale_code": "LC007"
  }
}
{
  "errors": [
    {
      "code": "text",
      "message": "text"
    }
  ]
}

Initiate demand request

post

Create new demand request.

Body
signaturestringOptional

Signature of {header}+{message} body verified using sender's signing public key

Example: TgE1hcA2E+YPMdPGz4vveKQpR0x+pgzRTlet52qh63Kekr71vWWScXqaRFtQW64uRFZGBUhHYYZQ2y6LffwnNOOQhhssaThhqVBhXNEwX9i75SNYXi5XSJVDYzSyHrhF20HW6RE9mAVWdc80i7d+FXlh+b/U+fnj+SrZ2s6Xd0WUZvU29LgqeUpyznlWLu1mDdJxNZavsDLWmxjTnknqBjDvwSc35WhFDhXDA2lWmm8YpZ1Y6TBmvvtVS7mAOTnhFy9sdCbrLcfXk5QWIsdzlvPqlkvdwEf30OZ6ewb680Aj3hO2OT5LCv7iLyz7C7srnB9lJT5gXiw+eSnktPXlDA==
headerall ofRequired
and
messageall ofRequired
Responses
401
HTTP layer error details
application/json
403
HTTP layer error details
application/json
500
HTTP layer error details
application/json
default
Acknowledgement of message received after successful validation of message and signature
application/json
post
POST /ifix/v1/demand HTTP/1.1
Host: 
Content-Type: application/json
Accept: */*
Content-Length: 2146

{
  "signature": "TgE1hcA2E+YPMdPGz4vveKQpR0x+pgzRTlet52qh63Kekr71vWWScXqaRFtQW64uRFZGBUhHYYZQ2y6LffwnNOOQhhssaThhqVBhXNEwX9i75SNYXi5XSJVDYzSyHrhF20HW6RE9mAVWdc80i7d+FXlh+b/U+fnj+SrZ2s6Xd0WUZvU29LgqeUpyznlWLu1mDdJxNZavsDLWmxjTnknqBjDvwSc35WhFDhXDA2lWmm8YpZ1Y6TBmvvtVS7mAOTnhFy9sdCbrLcfXk5QWIsdzlvPqlkvdwEf30OZ6ewb680Aj3hO2OT5LCv7iLyz7C7srnB9lJT5gXiw+eSnktPXlDA==",
  "header": {
    "message_id": "251c51eb-e970-4e01-a99a-70136c47a934",
    "message_ts": 1708428280,
    "action": "create",
    "sender_id": "ifix@https://mukta.odisa.govt.org",
    "sender_uri": "https://mukta.odisa.govt.org/{namespace}/callback/on-search",
    "receiver_id": "ifix@https://ifms.odisa.govt.org"
  },
  "message": {
    "name": "Community Development Initiative",
    "linked_id": "sanction:251c51eb-e970-4e01-a99a-70136c47a934",
    "location_code": "pb.jalandhar",
    "program_code": "PORG/2023-24/00001",
    "transaction_id": "PI/2023-24/00001",
    "net_amount": 1000,
    "gross_amount": 1000,
    "individual": {
      "name": "John",
      "email": "[email protected]",
      "phone": 9876543210,
      "pin": 110001,
      "address": "3476, Gali Bajrang Bali, Delhi"
    },
    "children": [
      {
        "name": "Community Development Initiative",
        "linked_id": "sanction:251c51eb-e970-4e01-a99a-70136c47a934",
        "location_code": "pb.jalandhar",
        "program_code": "PORG/2023-24/00001",
        "transaction_id": "PI/2023-24/00001",
        "net_amount": 1000,
        "gross_amount": 1000,
        "individual": {
          "name": "John",
          "email": "[email protected]",
          "phone": 9876543210,
          "pin": 110001,
          "address": "3476, Gali Bajrang Bali, Delhi"
        },
        "children": [
          "[Circular Reference]"
        ],
        "status": {
          "status_code": "SUCCESSFUL",
          "status_message": "text"
        },
        "additional_details": {},
        "account_code": "1234567890@SBIN0003491",
        "function_code": "LIVELIHOOD",
        "administration_code": "HUDD",
        "recipient_segment_code": "CBO",
        "economic_segment_code": "PEOPLE",
        "source_of_fund_code": "STATE",
        "target_segment_code": "MALE",
        "currency_code": "INR",
        "locale_code": "LC007"
      }
    ],
    "status": {
      "status_code": "SUCCESSFUL",
      "status_message": "text"
    },
    "additional_details": {},
    "account_code": "1234567890@SBIN0003491",
    "function_code": "LIVELIHOOD",
    "administration_code": "HUDD",
    "recipient_segment_code": "CBO",
    "economic_segment_code": "PEOPLE",
    "source_of_fund_code": "STATE",
    "target_segment_code": "MALE",
    "currency_code": "INR",
    "locale_code": "LC007"
  }
}
{
  "errors": [
    {
      "code": "text",
      "message": "text"
    }
  ]
}

Updated create demand request

post

Updated create demand request

Body
signaturestringOptional

Signature of {header}+{message} body verified using sender's signing public key

Example: TgE1hcA2E+YPMdPGz4vveKQpR0x+pgzRTlet52qh63Kekr71vWWScXqaRFtQW64uRFZGBUhHYYZQ2y6LffwnNOOQhhssaThhqVBhXNEwX9i75SNYXi5XSJVDYzSyHrhF20HW6RE9mAVWdc80i7d+FXlh+b/U+fnj+SrZ2s6Xd0WUZvU29LgqeUpyznlWLu1mDdJxNZavsDLWmxjTnknqBjDvwSc35WhFDhXDA2lWmm8YpZ1Y6TBmvvtVS7mAOTnhFy9sdCbrLcfXk5QWIsdzlvPqlkvdwEf30OZ6ewb680Aj3hO2OT5LCv7iLyz7C7srnB9lJT5gXiw+eSnktPXlDA==
headerall ofRequired
and
messageall ofRequired
Responses
401
HTTP layer error details
application/json
403
HTTP layer error details
application/json
500
HTTP layer error details
application/json
default
Acknowledgement of message received after successful validation of message and signature
application/json
post
POST /ifix/v1/on-demand HTTP/1.1
Host: 
Content-Type: application/json
Accept: */*
Content-Length: 2146

{
  "signature": "TgE1hcA2E+YPMdPGz4vveKQpR0x+pgzRTlet52qh63Kekr71vWWScXqaRFtQW64uRFZGBUhHYYZQ2y6LffwnNOOQhhssaThhqVBhXNEwX9i75SNYXi5XSJVDYzSyHrhF20HW6RE9mAVWdc80i7d+FXlh+b/U+fnj+SrZ2s6Xd0WUZvU29LgqeUpyznlWLu1mDdJxNZavsDLWmxjTnknqBjDvwSc35WhFDhXDA2lWmm8YpZ1Y6TBmvvtVS7mAOTnhFy9sdCbrLcfXk5QWIsdzlvPqlkvdwEf30OZ6ewb680Aj3hO2OT5LCv7iLyz7C7srnB9lJT5gXiw+eSnktPXlDA==",
  "header": {
    "message_id": "251c51eb-e970-4e01-a99a-70136c47a934",
    "message_ts": 1708428280,
    "action": "update",
    "sender_id": "ifix@https://mukta.odisa.govt.org",
    "sender_uri": "https://mukta.odisa.govt.org/{namespace}/callback/on-search",
    "receiver_id": "ifix@https://ifms.odisa.govt.org"
  },
  "message": {
    "name": "Community Development Initiative",
    "linked_id": "sanction:251c51eb-e970-4e01-a99a-70136c47a934",
    "location_code": "pb.jalandhar",
    "program_code": "PORG/2023-24/00001",
    "transaction_id": "PI/2023-24/00001",
    "net_amount": 1000,
    "gross_amount": 1000,
    "individual": {
      "name": "John",
      "email": "[email protected]",
      "phone": 9876543210,
      "pin": 110001,
      "address": "3476, Gali Bajrang Bali, Delhi"
    },
    "children": [
      {
        "name": "Community Development Initiative",
        "linked_id": "sanction:251c51eb-e970-4e01-a99a-70136c47a934",
        "location_code": "pb.jalandhar",
        "program_code": "PORG/2023-24/00001",
        "transaction_id": "PI/2023-24/00001",
        "net_amount": 1000,
        "gross_amount": 1000,
        "individual": {
          "name": "John",
          "email": "[email protected]",
          "phone": 9876543210,
          "pin": 110001,
          "address": "3476, Gali Bajrang Bali, Delhi"
        },
        "children": [
          "[Circular Reference]"
        ],
        "status": {
          "status_code": "SUCCESSFUL",
          "status_message": "text"
        },
        "additional_details": {},
        "account_code": "1234567890@SBIN0003491",
        "function_code": "LIVELIHOOD",
        "administration_code": "HUDD",
        "recipient_segment_code": "CBO",
        "economic_segment_code": "PEOPLE",
        "source_of_fund_code": "STATE",
        "target_segment_code": "MALE",
        "currency_code": "INR",
        "locale_code": "LC007"
      }
    ],
    "status": {
      "status_code": "SUCCESSFUL",
      "status_message": "text"
    },
    "additional_details": {},
    "account_code": "1234567890@SBIN0003491",
    "function_code": "LIVELIHOOD",
    "administration_code": "HUDD",
    "recipient_segment_code": "CBO",
    "economic_segment_code": "PEOPLE",
    "source_of_fund_code": "STATE",
    "target_segment_code": "MALE",
    "currency_code": "INR",
    "locale_code": "LC007"
  }
}
{
  "errors": [
    {
      "code": "text",
      "message": "text"
    }
  ]
}

Initiate receipt request

post

Create new receipt.

Body
signaturestringOptional

Signature of {header}+{message} body verified using sender's signing public key

Example: TgE1hcA2E+YPMdPGz4vveKQpR0x+pgzRTlet52qh63Kekr71vWWScXqaRFtQW64uRFZGBUhHYYZQ2y6LffwnNOOQhhssaThhqVBhXNEwX9i75SNYXi5XSJVDYzSyHrhF20HW6RE9mAVWdc80i7d+FXlh+b/U+fnj+SrZ2s6Xd0WUZvU29LgqeUpyznlWLu1mDdJxNZavsDLWmxjTnknqBjDvwSc35WhFDhXDA2lWmm8YpZ1Y6TBmvvtVS7mAOTnhFy9sdCbrLcfXk5QWIsdzlvPqlkvdwEf30OZ6ewb680Aj3hO2OT5LCv7iLyz7C7srnB9lJT5gXiw+eSnktPXlDA==
headerall ofRequired
and
messageall ofRequired
Responses
401
HTTP layer error details
application/json
403
HTTP layer error details
application/json
500
HTTP layer error details
application/json
default
Acknowledgement of message received after successful validation of message and signature
application/json
post
POST /ifix/v1/receipt HTTP/1.1
Host: 
Content-Type: application/json
Accept: */*
Content-Length: 2146

{
  "signature": "TgE1hcA2E+YPMdPGz4vveKQpR0x+pgzRTlet52qh63Kekr71vWWScXqaRFtQW64uRFZGBUhHYYZQ2y6LffwnNOOQhhssaThhqVBhXNEwX9i75SNYXi5XSJVDYzSyHrhF20HW6RE9mAVWdc80i7d+FXlh+b/U+fnj+SrZ2s6Xd0WUZvU29LgqeUpyznlWLu1mDdJxNZavsDLWmxjTnknqBjDvwSc35WhFDhXDA2lWmm8YpZ1Y6TBmvvtVS7mAOTnhFy9sdCbrLcfXk5QWIsdzlvPqlkvdwEf30OZ6ewb680Aj3hO2OT5LCv7iLyz7C7srnB9lJT5gXiw+eSnktPXlDA==",
  "header": {
    "message_id": "251c51eb-e970-4e01-a99a-70136c47a934",
    "message_ts": 1708428280,
    "action": "create",
    "sender_id": "ifix@https://mukta.odisa.govt.org",
    "sender_uri": "https://mukta.odisa.govt.org/{namespace}/callback/on-search",
    "receiver_id": "ifix@https://ifms.odisa.govt.org"
  },
  "message": {
    "name": "Community Development Initiative",
    "linked_id": "sanction:251c51eb-e970-4e01-a99a-70136c47a934",
    "location_code": "pb.jalandhar",
    "program_code": "PORG/2023-24/00001",
    "transaction_id": "PI/2023-24/00001",
    "net_amount": 1000,
    "gross_amount": 1000,
    "individual": {
      "name": "John",
      "email": "[email protected]",
      "phone": 9876543210,
      "pin": 110001,
      "address": "3476, Gali Bajrang Bali, Delhi"
    },
    "children": [
      {
        "name": "Community Development Initiative",
        "linked_id": "sanction:251c51eb-e970-4e01-a99a-70136c47a934",
        "location_code": "pb.jalandhar",
        "program_code": "PORG/2023-24/00001",
        "transaction_id": "PI/2023-24/00001",
        "net_amount": 1000,
        "gross_amount": 1000,
        "individual": {
          "name": "John",
          "email": "[email protected]",
          "phone": 9876543210,
          "pin": 110001,
          "address": "3476, Gali Bajrang Bali, Delhi"
        },
        "children": [
          "[Circular Reference]"
        ],
        "status": {
          "status_code": "SUCCESSFUL",
          "status_message": "text"
        },
        "additional_details": {},
        "account_code": "1234567890@SBIN0003491",
        "function_code": "LIVELIHOOD",
        "administration_code": "HUDD",
        "recipient_segment_code": "CBO",
        "economic_segment_code": "PEOPLE",
        "source_of_fund_code": "STATE",
        "target_segment_code": "MALE",
        "currency_code": "INR",
        "locale_code": "LC007"
      }
    ],
    "status": {
      "status_code": "SUCCESSFUL",
      "status_message": "text"
    },
    "additional_details": {},
    "account_code": "1234567890@SBIN0003491",
    "function_code": "LIVELIHOOD",
    "administration_code": "HUDD",
    "recipient_segment_code": "CBO",
    "economic_segment_code": "PEOPLE",
    "source_of_fund_code": "STATE",
    "target_segment_code": "MALE",
    "currency_code": "INR",
    "locale_code": "LC007"
  }
}
{
  "errors": [
    {
      "code": "text",
      "message": "text"
    }
  ]
}

Updated status of create receipt request

post

Updated status of create receipt request

Body
signaturestringOptional

Signature of {header}+{message} body verified using sender's signing public key

Example: TgE1hcA2E+YPMdPGz4vveKQpR0x+pgzRTlet52qh63Kekr71vWWScXqaRFtQW64uRFZGBUhHYYZQ2y6LffwnNOOQhhssaThhqVBhXNEwX9i75SNYXi5XSJVDYzSyHrhF20HW6RE9mAVWdc80i7d+FXlh+b/U+fnj+SrZ2s6Xd0WUZvU29LgqeUpyznlWLu1mDdJxNZavsDLWmxjTnknqBjDvwSc35WhFDhXDA2lWmm8YpZ1Y6TBmvvtVS7mAOTnhFy9sdCbrLcfXk5QWIsdzlvPqlkvdwEf30OZ6ewb680Aj3hO2OT5LCv7iLyz7C7srnB9lJT5gXiw+eSnktPXlDA==
headerall ofRequired
and
messageall ofRequired
Responses
401
HTTP layer error details
application/json
403
HTTP layer error details
application/json
500
HTTP layer error details
application/json
default
Acknowledgement of message received after successful validation of message and signature
application/json
post
POST /ifix/v1/on-receipt HTTP/1.1
Host: 
Content-Type: application/json
Accept: */*
Content-Length: 2146

{
  "signature": "TgE1hcA2E+YPMdPGz4vveKQpR0x+pgzRTlet52qh63Kekr71vWWScXqaRFtQW64uRFZGBUhHYYZQ2y6LffwnNOOQhhssaThhqVBhXNEwX9i75SNYXi5XSJVDYzSyHrhF20HW6RE9mAVWdc80i7d+FXlh+b/U+fnj+SrZ2s6Xd0WUZvU29LgqeUpyznlWLu1mDdJxNZavsDLWmxjTnknqBjDvwSc35WhFDhXDA2lWmm8YpZ1Y6TBmvvtVS7mAOTnhFy9sdCbrLcfXk5QWIsdzlvPqlkvdwEf30OZ6ewb680Aj3hO2OT5LCv7iLyz7C7srnB9lJT5gXiw+eSnktPXlDA==",
  "header": {
    "message_id": "251c51eb-e970-4e01-a99a-70136c47a934",
    "message_ts": 1708428280,
    "action": "update",
    "sender_id": "ifix@https://mukta.odisa.govt.org",
    "sender_uri": "https://mukta.odisa.govt.org/{namespace}/callback/on-search",
    "receiver_id": "ifix@https://ifms.odisa.govt.org"
  },
  "message": {
    "name": "Community Development Initiative",
    "linked_id": "sanction:251c51eb-e970-4e01-a99a-70136c47a934",
    "location_code": "pb.jalandhar",
    "program_code": "PORG/2023-24/00001",
    "transaction_id": "PI/2023-24/00001",
    "net_amount": 1000,
    "gross_amount": 1000,
    "individual": {
      "name": "John",
      "email": "[email protected]",
      "phone": 9876543210,
      "pin": 110001,
      "address": "3476, Gali Bajrang Bali, Delhi"
    },
    "children": [
      {
        "name": "Community Development Initiative",
        "linked_id": "sanction:251c51eb-e970-4e01-a99a-70136c47a934",
        "location_code": "pb.jalandhar",
        "program_code": "PORG/2023-24/00001",
        "transaction_id": "PI/2023-24/00001",
        "net_amount": 1000,
        "gross_amount": 1000,
        "individual": {
          "name": "John",
          "email": "[email protected]",
          "phone": 9876543210,
          "pin": 110001,
          "address": "3476, Gali Bajrang Bali, Delhi"
        },
        "children": [
          "[Circular Reference]"
        ],
        "status": {
          "status_code": "SUCCESSFUL",
          "status_message": "text"
        },
        "additional_details": {},
        "account_code": "1234567890@SBIN0003491",
        "function_code": "LIVELIHOOD",
        "administration_code": "HUDD",
        "recipient_segment_code": "CBO",
        "economic_segment_code": "PEOPLE",
        "source_of_fund_code": "STATE",
        "target_segment_code": "MALE",
        "currency_code": "INR",
        "locale_code": "LC007"
      }
    ],
    "status": {
      "status_code": "SUCCESSFUL",
      "status_message": "text"
    },
    "additional_details": {},
    "account_code": "1234567890@SBIN0003491",
    "function_code": "LIVELIHOOD",
    "administration_code": "HUDD",
    "recipient_segment_code": "CBO",
    "economic_segment_code": "PEOPLE",
    "source_of_fund_code": "STATE",
    "target_segment_code": "MALE",
    "currency_code": "INR",
    "locale_code": "LC007"
  }
}
{
  "errors": [
    {
      "code": "text",
      "message": "text"
    }
  ]
}
Logo
Logo
Logo
Logo
Logo
Swagger Editor

/digit-exchange/v1/exchange/{EXCHANGE_TYPE}

post

Enables exchange of program, on-program, sanction, on-sanction etc

Body
signaturestringRequired

Signature of {header}+{message} body verified using sender's signing public key

Example: TgE1hcA2E+YPMdPGz4vveKQpR0x+pgzRTlet52qh63Kekr71vWWScXqaRFtQW64uRFZGBUhHYYZQ2y6LffwnNOOQhhssaThhqVBhXNEwX9i75SNYXi5XSJVDYzSyHrhF20HW6RE9mAVWdc80i7d+FXlh+b/U+fnj+SrZ2s6Xd0WUZvU29LgqeUpyznlWLu1mDdJxNZavsDLWmxjTnknqBjDvwSc35WhFDhXDA2lWmm8YpZ1Y6TBmvvtVS7mAOTnhFy9sdCbrLcfXk5QWIsdzlvPqlkvdwEf30OZ6ewb680Aj3hO2OT5LCv7iLyz7C7srnB9lJT5gXiw+eSnktPXlDA==
headerall ofRequired
and
messagestringRequiredExample: {"location_code":"pg.citya","name":"Test 1","start_date":0,"end_date":0,"client_host_url":"https://unified-dev.digit.org","function_code":"string","administration_code":"string","recipient_segment_code":"string","economic_segment_code":"string","source_of_fund_code":"string","target_segment_code":"string","currency_code":"string","locale_code":"string","status":{"status_code":"RECEIVED","status_message":"string"}}
Responses
401
HTTP layer error details
application/json
403
HTTP layer error details
application/json
500
HTTP layer error details
application/json
default
Acknowledgement of message received after successful validation of message and signature
application/json
post
POST /digit-exchange/v1/exchange/EXCHANGE_TYPE HTTP/1.1
Host: 
Content-Type: application/json
Accept: */*
Content-Length: 1107

{
  "signature": "TgE1hcA2E+YPMdPGz4vveKQpR0x+pgzRTlet52qh63Kekr71vWWScXqaRFtQW64uRFZGBUhHYYZQ2y6LffwnNOOQhhssaThhqVBhXNEwX9i75SNYXi5XSJVDYzSyHrhF20HW6RE9mAVWdc80i7d+FXlh+b/U+fnj+SrZ2s6Xd0WUZvU29LgqeUpyznlWLu1mDdJxNZavsDLWmxjTnknqBjDvwSc35WhFDhXDA2lWmm8YpZ1Y6TBmvvtVS7mAOTnhFy9sdCbrLcfXk5QWIsdzlvPqlkvdwEf30OZ6ewb680Aj3hO2OT5LCv7iLyz7C7srnB9lJT5gXiw+eSnktPXlDA==",
  "header": {
    "message_id": "123",
    "message_ts": "text",
    "action": "create",
    "sender_id": "program@https://spp.example.org",
    "sender_uri": "https://spp.example.org/{namespace}/callback/on-create",
    "receiver_id": "program@https://pymts.example.org",
    "is_msg_encrypted": false
  },
  "message": "{\"location_code\":\"pg.citya\",\"name\":\"Test 1\",\"start_date\":0,\"end_date\":0,\"client_host_url\":\"https://unified-dev.digit.org\",\"function_code\":\"string\",\"administration_code\":\"string\",\"recipient_segment_code\":\"string\",\"economic_segment_code\":\"string\",\"source_of_fund_code\":\"string\",\"target_segment_code\":\"string\",\"currency_code\":\"string\",\"locale_code\":\"string\",\"status\":{\"status_code\":\"RECEIVED\",\"status_message\":\"string\"}}"
}
{
  "errors": [
    {
      "code": "text",
      "message": "text"
    }
  ]
}

Public Finance Strategy & Approach

Public Finance Management Challenges

Public finance management is becoming an increasingly complex discipline owing to the compounding effects of socio-economic, technological, and institutional factors. The key challenge stems from the need to manage public funds in a transparent, efficient and accountable manner.

The iFIX helps address the following challenges linked to the information on government fiscal programmes -

  • Unlocking fiscal and operational data locked in silos

  • Generating relevant information based on common data standards

  • Ensuring the information generated is credible, reliable and verifiable

  • Accelerating fund flows by providing trusted, usable data and reducing the interdepartmental coordination time

Fiscal Information Exchange (iFIX)

The existing public finance system applies multiple information channel flows that are unique and can be accessed by various sources. iFIX simplifies the network and fiscal information flows through standardised formats and protocols.

Need For iFIX

As government service delivery requires multiple actors and interactions to come together across different levels, visibility of information is critical to bring down the cost of coordination. This includes real-time information on the financial health of a government agency/department - expenditure, revenue and availability of funds.

Public finance management faces significant challenges in terms of promoting accountability and transparency. The problem is more on account of siloed information structures that restrict the scope to get a broader view of the flow of funds or data across agencies and stakeholders.

The information flow is slow and limited, resulting in several gaps and breaks in the PFM processes. This is essentially attributed to the lack of information standards and exchange mechanisms, making it difficult to achieve a seamless data flow across agencies.

iFIX allows departments to share fiscal information from existing systems without having to invest in multiple integrations for different stakeholder requirements. The solution plays a pivotal role in driving efficient and performance-driven financial planning across all levels of governance. Real-time availability of financial information to stakeholders facilitates data-driven deployment of public funds and policy-making. The solution design specification sets the base for the real-time exchange of fiscal information across funding and implementing agencies.

Scope

iFIX identifies and resolves Public Financial Management issues like delays in funds flow, floating of unutilised funds, problems of low data fidelity, the administrative burden of implementation and outcome-oriented funding using the platform approach and associated policy reforms.

The platform helps achieve overall fiscal discipline, allocation of resources to priority needs and efficient and effective allocation of public services. Public financial management includes all phases of the budget cycle, including the preparation of the budget, internal control and audit, procurement, monitoring and reporting arrangements, and external audit.

Objectives

The standardised fiscal event and exchange mechanism enable various government agencies e.g. various departments, local governments, autonomous bodies, national government, and development agencies to -

  • exchange fiscal data much like email systems exchange data with each other

  • ease flow of fiscal information resulting in better planning, better execution, better accounting and better auditing thus transforming the entire PFM cycle

  • promote transparency and improve accountability while ensuring real-time access to the financial health of the government stakeholders

Approach

iFIX offers a solution that standardises fiscal event data and the capabilities to exchange information across multiple sources. It is built as a digital public good and is open source with minimal specifications. The design incorporates the security and privacy of all data and users and ensures performance at scale.

Data standards streamline the flow of information paving the way for timely exchange and cost-effective means of managing fiscal events. The iFIX solution establishes the standards and specifications for fiscal event data that make it easier to exchange fiscal information between funding and implementing agencies. Event data is captured in real-time and at the micro level which ensures there is no intentional or unintentional data loss. Any transaction triggers a fiscal event that is accessible to integrated agencies for necessary approvals.

The standardized data exchange approach ensures that iFIX is not a replacement for the existing finance system. It is just a coordination and visibility layer between agencies within government and across governments.

Logo

Functional Specifications

Business requirements for iFIX

Make sure to read this in conjunction with the following documents:

  1. iFIX Bluebook

  2. iFIX Pitch Deck

Overview

This page provides the details of the fiscal event-based approach for building out iFIX as an information exchange platform. These details are used to define the technical specifications for iFIX and the functional specifications that are open for validation and inputs internally and from the ecosystem.

Abbreviations & Common Terms

AD

Administrative Department

ADFA

Assistant Director, Finance & Accounts

BCO

Budget Controlling Officer

BFC

Budget Finalisation Committee

BE

Budget Estimate

COA

Chart of Accounts

CS

Central Sector Schemes

CSS

Centrally Sponsored Schemes

DDO

Drawing & Disbursement Officer

DPR

Detailed Project Report

DWSS

Department of Water Supply and Sanitation

FD

Finance Department

FFC

Fifteenth Finance Commission

HoD

Head of the Department

IFMS

Integrated Financial Management System

RE

Revised Estimate

SNA

Single Nodal Account

SPS

State Plan Schemes

Scope

The specifications have been defined from the lens of a sub-national government (state in the current context) and will be limited to interactions from a financial information perspective. The interactions in the scope of the current draft are:

  1. State Finance Department (FD) and Central (National) Government

  2. State Finance Department (FD) and [1] at state

  3. State Line Department’s interactions with other line departments

  4. State Line Department’s interactions with government autonomous bodies including local government and/or non-government agencies

The current draft of specifications was built using publicly available information and inputs from the Department of Water Supply and Sanitation (DWSS), Punjab, and the Finance Department, Punjab.

Financial information-related interactions of the Central Government with other Central Line Departments are out of the scope of the current draft.

For further details on the context of this document and our approach to reimagining Public Finance Management refer to the Bluebook.

Fiscal Events-Based Approach

The broad objective of iFIX is to enable the flow of reliable and verifiable fiscal information on time. Recognizing the multiplicity of unique types of information flows in the current PFM system, iFIX aims to simplify the information flow network. The key driver of this simplification is the application of standardised formats for fiscal information exchange. To arrive at a crystallised set of formats and protocols covering all fiscal information exchanges follow the steps below:

  • Step 1 - Define what is a fiscal event (and its types) or what is the scope of relevant fiscal information from an iFIX perspective (refer to Fiscal Events Based Approach section)

  • Step 2 - Document the current public finance management processes at a generic level, i.e. defined using actors, verbs, inputs and outputs to ensure they are representative of all minor variants of the process at the level of various sub-national governments in India. (refer to tables in Inferring Fiscal Events from As-is-Process Flows, columns 1-6)

  • Step 3 - Apply the definition of the fiscal event to the current processes to collapse or abstract the fiscal event essence of the whole process to a set of fiscal events. (refer to tables in Inferring Fiscal Events from As-is-Process Flows, columns 7-9).

  • Step 4 - Extract the current data attributes used for fiscal information exchange to define the format for fiscal information exchange. (refer to tables in Inferring Fiscal Events from As-is-Process Flows, columns 10)

Definition of Fiscal Event

Events that trigger the generation of relevant fiscal information, at any stage in the budget cycle, are termed fiscal events. To be classified as a fiscal event, the event will need to meet one of the following criteria:

Transaction-Based Fiscal Events: Such fiscal events are triggered when there is fiscal information being generated due to an actual change of hands of a financial asset or in simple words due to a financial transaction.

Non-Transactional Fiscal Events: While numerous non-transactional events occur throughout the budget cycle, these are termed Fiscal events only if they meet at least one of the following criteria:

  • Minimum Degree of Finality: A non-transactional event will be considered a fiscal event only when the action resulting from or the document produced from the event has definitive implications for the budgetary cycle. Examples:

    1. A draft of the budget that has been prepared at the state line department level (DDO) and sent to the next competent authority (BCO) for approval will trigger a fiscal event. The reason for this is that it is assumed that the line department at its level has done the calculations for arriving at a final figure which then needs to be approved by the next competent authority.

    2. For any payments to be made out of state treasury, any verbal/ email-based intra-Finance department go-ahead (between State Treasury and Cash Planning Department) to make the payment will not be considered a Fiscal Event. Only the generation of Payment Advice to the concerned bank will trigger a fiscal event.

  • Change in ability to claim/ use/ dispose of a financial asset: A non-transactional event will be considered a fiscal event if it results in (de-)authorizing a certain individual or entity to claim/ utilize/ dispose of a financial asset. Examples:

    1. Allocation of the budget by the department to respective DDOs authorises the DDOs to utilize the funds as planned in the budget and will trigger a fiscal event.

Types of Fiscal Events

The fiscal information generated during each fiscal event needs to be recorded in a specific format for exchange. Based on the current budgetary practices and guidelines followed at the sub-national and national levels in India, the fiscal events triggered during the budget cycle can be classified into four major types:

  1. Revenue Receipts: Revenue receipts comprise receipts that do not result in the creation of a liability on the government. The total revenue receipts include the State’s Own Tax and Non-Tax revenues and Grants-in-Aid and Share in Central Taxes from the Government of India. The non-tax revenues consist mainly of interest and dividends on investments made by the Government, fees and other receipts for services rendered by the Government.

  2. Capital Receipts: The capital receipts are loans raised by the Government from the public (these are termed as market loans), borrowings by the Government through the sale of Treasury Bills, the loans received from Central Government and bodies, disinvestment receipts and recoveries of any loans and advances given.

  3. Revenue Expenditure: Revenue expenditure is for the normal running of different Government Departments and for the rendering of various services, making interest payments on debt, meeting subsidies, grants in aid, etc. Broadly, the expenditure which does not result in the creation of assets for the Government of India is treated as revenue expenditure. All grants given by the State are also treated as revenue expenditure even though some of the grants may be used for the creation of capital assets.

  4. Capital Expenditure: Capital payments consist of capital expenditure on the acquisition of assets like land, buildings, machinery, and equipment, as well as investments in shares, etc., and loans and advances made by the State Government to boards, corporations and other institutions.

Fiscal Event - Sub-Types

Further within each major type of fiscal event, there are varied types of events. To enable information exchange using an easily understandable and standardised format, subtypes of fiscal events are identified based on the similarity in nature of fiscal information generated due to these events.

This event results in fiscal information containing a high-level view regarding the amount of receipts/ expenditure expected/needed.

Revenue receipts - ☑️

Capital receipts - ☑️

Revenue expenditure - ☑️

Capital expenditure - ☑️

Event resulting in fiscal information containing a detailed view regarding how the estimated receipts/ expenditure will be met/ utilized.

Revenue receipts - ☑️

Capital receipts - ☑️

Revenue expenditure - ☑️

Capital expenditure - ☑️

Event resulting in fiscal information containing a request for transfer or payment of money into the government account.

Revenue receipts - ☑️

Capital receipts - ☑️

Revenue expenditure -

Capital expenditure -

Event resulting in fiscal information containing a request for transfer or payment of money out of the government account.

Revenue receipts -

Capital receipts -

Revenue expenditure - ☑️

Capital expenditure - ☑️

Event resulting in fiscal information containing banking transaction initiation details for any fund transferred into the government account.

Revenue receipts - ☑️

Capital receipts - ☑️

Revenue expenditure -

Capital expenditure -

Event resulting in fiscal information containing banking transaction initiation details for any fund transferred out of the government account.

Revenue receipts -

Capital receipts -

Revenue expenditure - ☑️

Capital expenditure - ☑️

Event resulting in fiscal information containing banking transaction completion details for any fund transferred out of the government account.

Revenue receipts -

Capital receipts -

Revenue expenditure - ☑️

Capital expenditure - ☑️

Event resulting in fiscal information containing banking transaction completion details for any fund transferred into the government account.

Revenue receipts - ☑️

Capital receipts - ☑️

Revenue expenditure -

Capital expenditure -

Application of Fiscal Event Framework to As-Is-Processes

Overview of Budget Cycle

The Budget Cycle comprises the following stages:

  1. Budget Planning

  2. Budget Preparation

  3. Budget Approval

  4. Budget Allocation

  5. Budget Execution

  6. Budget Accounting

  7. Budget Auditing

Additionally, budget planning is an activity that sits outside of the Budget Cycle and takes place throughout the year based on need. Examples:

  • A scheme/project announced by a state government official can happen at any point of the year, the planning for which begins right after the announcement. Thereafter, all the required approvals happen and estimates are prepared accordingly which then feed into the budget preparation phase of the budget cycle

  • Planning for already approved projects and planning to get approval

Inferring Fiscal Events from As-is-Process Flows

Budget Planning

Process for Planning for the New Projects/ Schemes (for Revenue and Capital Expenditure)

Actors (2)
Input (3)
Verb & Noun (4)
Output (5)
Attributes (6)
Does it trigger a fiscal event (7)
Fiscal Event Type (8)
Fiscal Event Sub Type (9)
Data Attributes for iFIX (10)
Actors (2)
Input (3)
Verb & Noun (4)
Output (5)
Attributes (6)
Does it trigger a fiscal event (7)
Fiscal Event Type (8)
Fiscal Event Sub Type (9)
Data Attributes for iFIX (10)
Actors (2)
Input (3)
Verb & Noun (4)
Output (5)
Attributes (6)
Does it trigger a fiscal event (7)
Fiscal Event Type (8)
Fiscal Event Sub Type (9)
Data Attributes for iFIX (10)
Actors (2)
Input (3)
Verb & Noun (4)
Output (5)
Attributes (6)
Does it trigger a fiscal event (7)
Fiscal Event Type (8)
Fiscal Event Sub Type (9)
Data Attributes for iFIX (10)
Actors (2)
Input (3)
Verb & Noun (4)
Output (5)
Attributes (6)
Does it trigger a fiscal event (7)
Fiscal Event Type (8)
Fiscal Event Sub Type (9)
Data Attributes for iFIX (10)
Actors (2)
Input (3)
Verb & Noun (4)
Output (5)
Attributes (6)
Does it trigger a fiscal event (7)
Fiscal Event Type (8)
Fiscal Event Sub Type (9)
Data Attributes for iFIX (10)
Actors (2)
Input (3)
Verb & Noun (4)
Output (5)
Attributes (6)
Does it trigger a fiscal event (7)
Fiscal Event Type (8)
Fiscal Event Sub Type (9)
Data Attributes for iFIX (10)
Actors (2)
Input (3)
Verb & Noun (4)
Output (5)
Attributes (6)
Does it trigger a fiscal event (7)
Fiscal Event Type (8)
Fiscal Event Sub Type (9)
Data Attributes for iFIX (10)
Actors (2)
Input (3)
Verb & Noun (4)
Output (5)
Attributes (6)
Does it trigger a fiscal event (7)
Fiscal Event Type (8)
Fiscal Event Sub Type (9)
Data Attributes for iFIX (10)
Actors (2)
Input (3)
Verb & Noun (4)
Output (5)
Attributes (6)
Does it trigger a fiscal event (7)
Fiscal Event Type (8)
Fiscal Event Sub Type (9)
Data Attributes for iFIX (10)

Budget Preparation

Budget Preparation for Revenue Receipt

Actors
Input
Verb & Noun
Output
Attributes
Does it trigger a fiscal event?
Fiscal event type
Fiscal event sub type
Data attributes for iFIX
Actors
Input
Verb & Noun
Output
Attributes
Does it trigger a fiscal event?
Fiscal event type
Fiscal event sub type
Data attributes for iFIX
Actors
Input
Verb & Noun
Output
Attributes
Does it trigger a fiscal event?
Fiscal event type
Fiscal event sub type
Data attributes for iFIX
Actors
Input
Verb & Noun
Output
Attributes
Does it trigger a fiscal event?
Fiscal event type
Fiscal event sub type
Data attributes for iFIX
Actors
Input
Verb & Noun
Output
Attributes
Does it trigger a fiscal event?
Fiscal event type
Fiscal event sub type
Data attributes for iFIX
Actors
Input
Verb & Noun
Output
Attributes
Does it trigger a fiscal event?
Fiscal event type
Fiscal event sub type
Data attributes for iFIX
Actors
Input
Verb & Noun
Output
Attributes
Does it trigger a fiscal event?
Fiscal event type
Fiscal event sub type
Data attributes for iFIX
Actors
Input
Verb & Noun
Output
Attributes
Does it trigger a fiscal event?
Fiscal event type
Fiscal event sub type
Data attributes for iFIX
Actors
Input
Verb & Noun
Output
Attributes
Does it trigger a fiscal event?
Fiscal event type
Fiscal event sub type
Data attributes for iFIX

Budget Preparation for Capital Expenditure - Capital Outlay

Actors
Input
Verb & Noun
Output
Attributes
Does it trigger a fiscal event
Fiscal event type
Fiscal event sub type
Data attributes for iFIX
Actors
Input
Verb & Noun
Output
Attributes
Does it trigger a fiscal event
Fiscal event type
Fiscal event sub type
Data attributes for iFIX
Actors
Input
Verb & Noun
Output
Attributes
Does it trigger a fiscal event
Fiscal event type
Fiscal event sub type
Data attributes for iFIX
Actors
Input
Verb & Noun
Output
Attributes
Does it trigger a fiscal event
Fiscal event type
Fiscal event sub type
Data attributes for iFIX
Actors
Input
Verb & Noun
Output
Attributes
Does it trigger a fiscal event
Fiscal event type
Fiscal event sub type
Data attributes for iFIX
Actors
Input
Verb & Noun
Output
Attributes
Does it trigger a fiscal event
Fiscal event type
Fiscal event sub type
Data attributes for iFIX
Actors
Input
Verb & Noun
Output
Attributes
Does it trigger a fiscal event
Fiscal event type
Fiscal event sub type
Data attributes for iFIX
Actors
Input
Verb & Noun
Output
Attributes
Does it trigger a fiscal event
Fiscal event type
Fiscal event sub type
Data attributes for iFIX
Actors
Input
Verb & Noun
Output
Attributes
Does it trigger a fiscal event
Fiscal event type
Fiscal event sub type
Data attributes for iFIX
Actors
Input
Verb & Noun
Output
Attributes
Does it trigger a fiscal event
Fiscal event type
Fiscal event sub type
Data attributes for iFIX
Actors
Input
Verb & Noun
Output
Attributes
Does it trigger a fiscal event
Fiscal event type
Fiscal event sub type
Data attributes for iFIX
Actors
Input
Verb & Noun
Output
Attributes
Does it trigger a fiscal event
Fiscal event type
Fiscal event sub type
Data attributes for iFIX

Budget Approval

Budget Approval from Legislature (Same process for Revenue and Capital nature Receipts and Expenditures)

Actors
Input
Verb & Noun
Output
Attributes
Does it trigger a fiscal event
Fiscal event type
Fiscal event sub type
Data attributes for iFIX
Actors
Input
Verb & Noun
Output
Attributes
Does it trigger a fiscal event
Fiscal event type
Fiscal event sub type
Data attributes for iFIX
Actors
Input
Verb & Noun
Output
Attributes
Does it trigger a fiscal event
Fiscal event type
Fiscal event sub type
Data attributes for iFIX
Actors
Input
Verb & Noun
Output
Attributes
Does it trigger a fiscal event
Fiscal event type
Fiscal event sub type
Data attributes for iFIX
Actors
Input
Verb & Noun
Output
Attributes
Does it trigger a fiscal event
Fiscal event type
Fiscal event sub type
Data attributes for iFIX
Actors
Input
Verb & Noun
Output
Attributes
Does it trigger a fiscal event
Fiscal event type
Fiscal event sub type
Data attributes for iFIX
Actors
Input
Verb & Noun
Output
Attributes
Does it trigger a fiscal event
Fiscal event type
Fiscal event sub type
Data attributes for iFIX

Budget Allocation

Communication and Distribution of funds (Same process for Revenue and Capital nature Expenditure)

Actors
Input
Verb & Noun
Output
Attributes
Does it trigger a fiscal event
Fiscal event type
Fiscal event sub type
Data attributes for iFIX
Actors
Input
Verb & Noun
Output
Attributes
Does it trigger a fiscal event
Fiscal event type
Fiscal event sub type
Data attributes for iFIX
Actors
Input
Verb & Noun
Output
Attributes
Does it trigger a fiscal event
Fiscal event type
Fiscal event sub type
Data attributes for iFIX
Actors
Input
Verb & Noun
Output
Attributes
Does it trigger a fiscal event
Fiscal event type
Fiscal event sub type
Data attributes for iFIX
Actors
Input
Verb & Noun
Output
Attributes
Does it trigger a fiscal event
Fiscal event type
Fiscal event sub type
Data attributes for iFIX

Budget Execution

Request for Release of Funds from State Treasury - Scheme-related Capital Expenditure

Release of funds to DDO

Actors
Input
Verb & Noun
Output
Attributes
Does it trigger a fiscal event
Fiscal event type
Fiscal event sub-type
Data attributes for iFIX
Actors
Input
Verb & Noun
Output
Attributes
Does it trigger a fiscal event
Fiscal event type
Fiscal event sub-type
Data attributes for iFIX
Actors
Input
Verb & Noun
Output
Attributes
Does it trigger a fiscal event
Fiscal event type
Fiscal event sub-type
Data attributes for iFIX
Actors
Input
Verb & Noun
Output
Attributes
Does it trigger a fiscal event
Fiscal event type
Fiscal event sub-type
Data attributes for iFIX

Work awarded to the vendor

Actors
Input
Verb & Noun
Output
Attributes
Does it trigger a fiscal event
Fiscal event type
Fiscal event sub type
Data attributes for iFIX
Actors
Input
Verb & Noun
Output
Attributes
Does it trigger a fiscal event
Fiscal event type
Fiscal event sub type
Data attributes for iFIX
Actors
Input
Verb & Noun
Output
Attributes
Does it trigger a fiscal event
Fiscal event type
Fiscal event sub type
Data attributes for iFIX

Work bill payment to the vendor

Actors
Input
Verb & Noun
Output
Attributes
Does it trigger a fiscal event
Fiscal event type
Fiscal event sub-type
Data attributes for iFIX
Actors
Input
Verb & Noun
Output
Attributes
Does it trigger a fiscal event
Fiscal event type
Fiscal event sub-type
Data attributes for iFIX
Actors
Input
Verb & Noun
Output
Attributes
Does it trigger a fiscal event
Fiscal event type
Fiscal event sub-type
Data attributes for iFIX
Actors
Input
Verb & Noun
Output
Attributes
Does it trigger a fiscal event
Fiscal event type
Fiscal event sub-type
Data attributes for iFIX
Actors
Input
Verb & Noun
Output
Attributes
Does it trigger a fiscal event
Fiscal event type
Fiscal event sub-type
Data attributes for iFIX
Actors
Input
Verb & Noun
Output
Attributes
Does it trigger a fiscal event
Fiscal event type
Fiscal event sub-type
Data attributes for iFIX
Actors
Input
Verb & Noun
Output
Attributes
Does it trigger a fiscal event
Fiscal event type
Fiscal event sub-type
Data attributes for iFIX
Actors
Input
Verb & Noun
Output
Attributes
Does it trigger a fiscal event
Fiscal event type
Fiscal event sub-type
Data attributes for iFIX
Actors
Input
Verb & Noun
Output
Attributes
Does it trigger a fiscal event
Fiscal event type
Fiscal event sub-type
Data attributes for iFIX
Actors
Input
Verb & Noun
Output
Attributes
Does it trigger a fiscal event
Fiscal event type
Fiscal event sub-type
Data attributes for iFIX
Actors
Input
Verb & Noun
Output
Attributes
Does it trigger a fiscal event
Fiscal event type
Fiscal event sub-type
Data attributes for iFIX
Actors
Input
Verb & Noun
Output
Attributes
Does it trigger a fiscal event
Fiscal event type
Fiscal event sub-type
Data attributes for iFIX
Actors
Input
Verb & Noun
Output
Attributes
Does it trigger a fiscal event
Fiscal event type
Fiscal event sub-type
Data attributes for iFIX

Request for Release of Funds from State Treasury - Revenue Expenditure

Actors
Input
Verb & Noun
Output
Attributes
Does it trigger a fiscal event
Fiscal event type
Fiscal event sub-type
Data attributes for iFIX
Actors
Input
Verb & Noun
Output
Attributes
Does it trigger a fiscal event
Fiscal event type
Fiscal event sub-type
Data attributes for iFIX
Actors
Input
Verb & Noun
Output
Attributes
Does it trigger a fiscal event
Fiscal event type
Fiscal event sub-type
Data attributes for iFIX
Actors
Input
Verb & Noun
Output
Attributes
Does it trigger a fiscal event
Fiscal event type
Fiscal event sub-type
Data attributes for iFIX
Actors
Input
Verb & Noun
Output
Attributes
Does it trigger a fiscal event
Fiscal event type
Fiscal event sub-type
Data attributes for iFIX
Actors
Input
Verb & Noun
Output
Attributes
Does it trigger a fiscal event
Fiscal event type
Fiscal event sub-type
Data attributes for iFIX
Actors
Input
Verb & Noun
Output
Attributes
Does it trigger a fiscal event
Fiscal event type
Fiscal event sub-type
Data attributes for iFIX
Actors
Input
Verb & Noun
Output
Attributes
Does it trigger a fiscal event
Fiscal event type
Fiscal event sub-type
Data attributes for iFIX
Actors
Input
Verb & Noun
Output
Attributes
Does it trigger a fiscal event
Fiscal event type
Fiscal event sub-type
Data attributes for iFIX
Actors
Input
Verb & Noun
Output
Attributes
Does it trigger a fiscal event
Fiscal event type
Fiscal event sub-type
Data attributes for iFIX
Actors
Input
Verb & Noun
Output
Attributes
Does it trigger a fiscal event
Fiscal event type
Fiscal event sub-type
Data attributes for iFIX
Actors
Input
Verb & Noun
Output
Attributes
Does it trigger a fiscal event
Fiscal event type
Fiscal event sub-type
Data attributes for iFIX

Collection of Revenue Receipt into the State Treasury

Actors
Input
Verb & Noun
Output
Attributes
Does it trigger a fiscal event
Fiscal event type
Fiscal event sub-type
Data attributes for iFIX
Actors
Input
Verb & Noun
Output
Attributes
Does it trigger a fiscal event
Fiscal event type
Fiscal event sub-type
Data attributes for iFIX
Actors
Input
Verb & Noun
Output
Attributes
Does it trigger a fiscal event
Fiscal event type
Fiscal event sub-type
Data attributes for iFIX
Actors
Input
Verb & Noun
Output
Attributes
Does it trigger a fiscal event
Fiscal event type
Fiscal event sub-type
Data attributes for iFIX
Actors
Input
Verb & Noun
Output
Attributes
Does it trigger a fiscal event
Fiscal event type
Fiscal event sub-type
Data attributes for iFIX
Actors
Input
Verb & Noun
Output
Attributes
Does it trigger a fiscal event
Fiscal event type
Fiscal event sub-type
Data attributes for iFIX

Request for Supplementary Grants (Same process for Revenue and Capital Expenditure)

Actors
Input
Verb & Noun
Output
Attributes
Does it trigger a fiscal event
Fiscal event type
Fiscal event sub-type
Data attributes for iFIX
Actors
Input
Verb & Noun
Output
Attributes
Does it trigger a fiscal event
Fiscal event type
Fiscal event sub-type
Data attributes for iFIX
Actors
Input
Verb & Noun
Output
Attributes
Does it trigger a fiscal event
Fiscal event type
Fiscal event sub-type
Data attributes for iFIX
Actors
Input
Verb & Noun
Output
Attributes
Does it trigger a fiscal event
Fiscal event type
Fiscal event sub-type
Data attributes for iFIX
Actors
Input
Verb & Noun
Output
Attributes
Does it trigger a fiscal event
Fiscal event type
Fiscal event sub-type
Data attributes for iFIX
Actors
Input
Verb & Noun
Output
Attributes
Does it trigger a fiscal event
Fiscal event type
Fiscal event sub-type
Data attributes for iFIX

Surrender of Excess / Savings (Same process for Revenue and Capital expenditure)

Actors
Input
Verb & Noun
Output
Attributes
Does it trigger a fiscal event
Fiscal event type
Fiscal event sub-type
Data attributes for iFIX
Actors
Input
Verb & Noun
Output
Attributes
Does it trigger a fiscal event
Fiscal event type
Fiscal event sub-type
Data attributes for iFIX
Actors
Input
Verb & Noun
Output
Attributes
Does it trigger a fiscal event
Fiscal event type
Fiscal event sub-type
Data attributes for iFIX
Actors
Input
Verb & Noun
Output
Attributes
Does it trigger a fiscal event
Fiscal event type
Fiscal event sub-type
Data attributes for iFIX
Actors
Input
Verb & Noun
Output
Attributes
Does it trigger a fiscal event
Fiscal event type
Fiscal event sub-type
Data attributes for iFIX
Actors
Input
Verb & Noun
Output
Attributes
Does it trigger a fiscal event
Fiscal event type
Fiscal event sub-type
Data attributes for iFIX

Budget Accounting

Process for monthly budget accounting/reporting for Receipts (Same Process for Revenue and Capital Receipts)

Actors
Input
Verb & Noun
Output
Attributes
Does it trigger a fiscal event
Fiscal event type
Fiscal event sub-type
Data attributes for iFIX
Actors
Input
Verb & Noun
Output
Attributes
Does it trigger a fiscal event
Fiscal event type
Fiscal event sub-type
Data attributes for iFIX
Actors
Input
Verb & Noun
Output
Attributes
Does it trigger a fiscal event
Fiscal event type
Fiscal event sub-type
Data attributes for iFIX
Actors
Input
Verb & Noun
Output
Attributes
Does it trigger a fiscal event
Fiscal event type
Fiscal event sub-type
Data attributes for iFIX

Process for monthly budget accounting/reporting -Expenditure (Same Process for Revenue and Capital Expenditure)

Actors
Input
Verb & Noun
Output
Attributes
Does it trigger a fiscal event
Fiscal event type
Fiscal event sub-type
Data attributes for iFIX
Actors
Input
Verb & Noun
Output
Attributes
Does it trigger a fiscal event
Fiscal event type
Fiscal event sub-type
Data attributes for iFIX
Actors
Input
Verb & Noun
Output
Attributes
Does it trigger a fiscal event
Fiscal event type
Fiscal event sub-type
Data attributes for iFIX
Actors
Input
Verb & Noun
Output
Attributes
Does it trigger a fiscal event
Fiscal event type
Fiscal event sub-type
Data attributes for iFIX

Budget Auditing

Process for budget auditing (have to explore if there are variations for revenue and expenditure)

Actors
Input
Verb & Noun
Output
Attributes
Does it trigger a fiscal event
Fiscal event type
Fiscal event sub-type
Data attributes for iFIX

AG

Consolidated receipt /expenditure report received from Treasury and HoD/AD

Review consolidated receipt/expenditure report

Approved, publish final accounts

<To be Identified>

N

-

-

-

AG

Consolidated receipt /expenditure report received from HoD/AD

Review consolidated receipt/expenditure report

Rejected, reconcile accounts with DDO

<To be Identified>

N

-

-

-

Definition of Format of Fiscal Event Sub-Types

Each fiscal event extracted above will be defined in terms of

  • Header

  • Body

  • Array of Fiscal Line Items

  • Attachment

  • Signature

Fiscal Events and Attributes are defined here - https://docs.google.com/spreadsheets/d/1uyfu3n7sDxspo5BAHlpqsi4pX53UF3PFdhXwLEVV3W8/edit#gid=911136275

Annexures

Annexure I

One of the key objectives of capturing the current state processes is to ensure all the variations and varieties of processes within the defined boundary are covered. In this context, certain dimensions to be kept in mind while capturing current state processes are:

Definitions

Revenue Receipts:

Revenue receipts comprise receipts that do not result in the creation of a liability for the government. The total revenue receipts include the State’s Own tax and Non-Tax revenues and Grants-in-Aid and Share in Central Taxes from the Government of India. The non-tax revenues consist mainly of interest and dividends on investments made by the Government, fees and other receipts for services rendered by the Government.

Revenue Expenditure:

Revenue expenditure is for the normal running of different Government Departments and for rendering various services, making interest payments on debt, meeting subsidies, grants in aid, etc. Broadly, the expenditure which does not result in the creation of assets for the Government of India is treated as revenue expenditure. All grants given by the State are also treated as revenue expenditure even though some of the grants may be used for the creation of capital assets.

Capital Receipts:

The capital receipts are loans raised by the Government from the public (these are termed as market loans), borrowings by the Government through the sale of Treasury Bills, the loans received from Central Government and bodies, disinvestment receipts and recoveries of any loans and advances given.

Capital Expenditure:

Capital payments consist of capital expenditure on the acquisition of assets like land, buildings, machinery and equipment as well as investments in shares, etc., and loans and advances made by the State Government to boards, corporations and other institutions.

Type of Scheme – Central Sector, Centrally Sponsored, State Plan Scheme

Central Sector

Central sector (CS) schemes are schemes with 100% funding by the Union government and implemented by the Union Government machinery. Besides, there are some other programmes that various Ministries at the Union implement directly in States and UTs which also come under CSS. However, in the latter, the financial resources are not shifted to the States. The CS schemes are mostly formulated on subjects mainly from the Union List.

Centrally Sponsored Scheme

Centrally Sponsored Schemes (CSS) are schemes by the Union government where there is financial participation by both the Union and State governments. A stipulated percentage of the funding is provided by the States in terms of percentage contribution - it may vary in 50:50, 60:40, 70:30, 75:25, or 90:10. Implementation of the CSS is the responsibility of the State/UT Governments. CSS are formulated on subjects under the State List.

State Plan Scheme

State Plan Schemes (SPS) are schemes planned, funded and implemented by State governments. SPS are formulated on subjects under the State List. At times, some existing SPS become part of the umbrella schemes (CSS or CSS) if they align with similar sectors/areas.

Type of Loan/ Debt – State Internal Debt or through GoI

Government Debt

Government debt comprises Public Debt and Public Account Liabilities. Public Debt is a component raised against the Consolidated Fund of India and included in the State Budget Document. Public Account Liabilities are raised against the Government’s Public Account comprising Small Savings, PFs, Reserve Funds etc. Public Debt comprises the following two types of loans.

Internal Debt

The state government raises debt from various sources within the country as allowed by the constitution. These debts, apart from the loans and advances received from the central government are known as internal debt of the state. The components of internal debt as per the Finance Accounts are as follows:

  • Market Borrowings

  • Special securities issued to the National Small Savings Fund (NSSF)

  • Compensation and other bonds

  • Loans from financial institutions

  • Ways and means advance from RBI

  • Other loans

Loans and Advances from GoI

This includes loans and advances that the states receive from the central government and the loans from International Development Partners that are on-lent by the central government to the state government.

Chart of Accounts

At present, a six-tier classification of Accounts is adopted in State Budget Documents: The budget literature prepared and presented by the Government of a State to the Legislative Assembly follows a six-tier accounting classification comprising Major Heads, Sub‐Major Heads, Minor Heads, Sub Heads, Group Heads and Object Heads. These are shown in the budget to ensure that financial transactions are recorded to the minimum detail.

  • Major Heads: are the main units of accounts classification under various sectors/sub-sectors. They normally reflect the distribution of expenditure among broad functions of the government.

  • Sub Major Heads: are opened under a Major Head to record those transactions which are of a distinct nature and of sufficient importance to be recorded exclusively, but at the same time allied to the function of the Major Head.

  • Minor Heads: are subordinate to Major or Sub Major Heads and correspond to programmes/ broad groups of programmes undertaken to achieve objectives of the functions represented by Major Heads.

  • Sub Heads represent schemes under programmes subordinate to Minor Heads.

  • Group Heads represent sub-schemes under schemes and are subordinate to Sub Heads.

  • Object Heads represent the actual nature and form of expenditure.

Coding pattern for the units of accounts

Under the current budget classification of the State, a 15 and 13-digit coding pattern is adopted for expenditure (with some exceptions) and receipts respectively.

Receipts coding pattern
Expenditure coding pattern

Major Head

Four digit

Four digit

Sub major Head

Two digit

Two digit

Minor Head

Three digit

Three digit

Sub Head

Two digit

Two digit

Group Head

Two digit

Object Head

Two digit

Two digit

Criticism of current COA: Issues in Old COA structure as per Sundaramurti Committee:

  • There is opaqueness in data on transfers to states. The State-wise details of transfers, and information on releases to states under the various functional heads are not captured.

  • There is a lack of standardization of scheme classification. Plan schemes are not captured uniformly at one level. Some schemes are classified at the sub-head level, some at the detailed head level, and some others at the Minor head level.

  • Major Heads, which are supposed to represent government functions, do not reflect the true functional character of expenditures and do not correspond to Heads of development used in the planning and resource allocation process.

  • Breakup of central transfers into constituent flows such as Finance Commission grants, Normal Central Assistance, Additional Central Assistance, Special Central Assistance etc. are not captured.

  • There are emerging special requirements such as gender budgeting, and budgeting for SC/ST, North Eastern Region (NER), that are not very well catered to by the existing system.

Proposed New Chart of Account

  • Administrative segment - Would need a new mapper to be created based on which it can be determined which administrative departments handle which budget codes, and would vary according to geography and time

  • Programme/Scheme segment - Can be derived from Minor Head, Sub Head and Group Head of existing COA

  • Recipient segment - Would need additional effort to be published at the budget estimate stage itself by way of registry

  • Target segment - Would need additional effort to be published at the budget estimate stage itself by way of a registry

  • Object/Economic classification - Can be derived from the Object head of existing COA but would also need

  • Location - Would need additional effort to put in place location codes by way of registry

  • New fields might need to be added for accrual accounting - for instance, accounts receivable and payable

Existing COA
What information can be derived solely from COA
What more needs to be done

Major Head (e.g. 0202

Education, Sports, Arts and

Culture)

Function Segment

In some cases: Target Segment

A map of which administrative departments handle which budget

Sub-major head (e.g. 01

General Education)

Function Segment

In some cases: Target Segment

A map of which administrative departments handle which budget codes

Minor Head (e.g. 111 Sarva

Siksha Abhiyan)

Programme/Scheme Segment

A map of which administrative departments handle which budget codes

Sub-head (for schemes

under Minor Head)

Programme/Scheme Segment

A map of which administrative departments handle which budget codes

Detailed Head (sub-scheme)

Programme/Scheme Segment

A map of which administrative departments handle which budget codes

Object Head

Economic Segment

A second map of current economic classification with new economic classification

Single Nodal Account (SNA)

Overview

  • One bank account from which all scheme expenditure is incurred - TSA for a particular scheme

  • All Implementing Agencies spend scheme funds from out-of-subsidiary accounts to SNA or through zero balance accounts linked to SNA

  • Systems involved in the implementation of SNA - PFMS, State IFMS, Bank Systems

  • SNA - mandatory for all Central Schemes, but States too are gradually porting their State plan schemes to PFMS and would want SNA operational for those schemes

Benefits of SNA

  • Better cash and debt management

  • Better reconciliation of government and bank data

  • Reduces the government debt servicing cost

  • Helps maximise the return on investments of surplus cash

  • Enhances the overall effectiveness of the PFM system

Implementation arrangement of SNA

  • The structure has been created to ensure coordination between all stakeholders

  • EAT and DBT modules are the two PFMS modules relevant to SNA

  • Preliminary arrangements needed for SNA implementation

    • Configuring scheme code and scheme hierarchy in PFMS

    • Mapping scheme and scheme components to IFMS CoA

    • Arrangement with scheme banks

    • Opening SNA accounts in banks

    • Registering beneficiaries/payees in PFMS

    • Release and expenditure under SNA

Key implementation issues wrt SNA

  • Varying levels of maturity of different State IFMS

  • Exchange of data between IFMS and PFMS, especially with respect to mapping and timing issues leading to a heavy reconciliation burden

  • Integrating beneficiary database with IFMS and PFMS

  • Reconciliation and closing of existing bank accounts of implementing agencies

  • Disruptions to existing arrangements with banks

Annexure II- Potential Impact of iFIX on Budgetary Processes (Work in Progress)

State Finance Department Lens

Budget Planning

Budget Preparation

  1. Disaggregated Previous year Budget Utilization data as input for Budget Review & Rationalization: The current process of review and rationalization of budget shared by Line Departments is driven by broad Fiscal Deficit targets and ball-park estimates of how expenditure under a particular budget head will increase or decrease. Recording each fiscal event will allow easy extraction of data

  2. Outcomes/ Outputs of Budget Spent in the Previous Year by the Department as input for Budget Review & Rationalization

Budget Allocation

Budget Execution

  1. Near real-time view of performance against budget

  2. Use of ‘Plan’ fiscal event data to inform about admitted liabilities and expected bills with respect to long-term projects

State Line Department Lens

Budget Planning

Budget Preparation

  1. Disaggregated Previous year Budget Utilization data as input for Budget Review & Rationalization: The current process of review and rationalization of budget shared by Line Departments is driven by broad Fiscal Deficit targets and ball-park estimates of how expenditure under a particular budget head will increase or decrease. Recording each fiscal event will allow easy extraction of data

  2. Outcomes/ Outputs of Budget Spent in the Previous Year by the Department as input for Budget Review & Rationalization

Budget Allocation

  1. A shortened time for allocation against the approved budget

Budget Execution

  1. Visibility into receipts deposited into government accounts other than the State Treasury

  2. Monitor Bill-Ageing

  3. Near real-time view of performance against budget

Annexure III - Exploring Use Cases for Gender Budgeting using iFIX

Gender Budget - A Brief Overview

  1. A gender budget, or a gender-responsive budget, is not a separate budget for women but an understanding of any form of public expenditure or revenue, or method of raising public money, from a gender perspective. Given the understanding that budgets are the constructs of specific economic, sociocultural and political contexts of any country (though prima facie it appears as gender neutral) and that there is often a lack of financial backing for gender equality policies, gender budget was proposed as a fiscal tool to translate the government’s gender commitments to fiscal commitments.

  2. Gender-responsive budgeting provides the framework for undertaking this exercise, questioning the gender neutrality of budgets, and scoping the need for targeted intervention to make budgets more gender-responsive and help reduce gender inequality. Needless to say, there is a need for sex-disaggregated data and an understanding of the gender relations that would feed into each of the five stages of the budget cycle (budget planning, approval, execution, accounting, and auditing) to make gender-responsive budgeting a meaningful and fruitful exercise. A useful lens could be to question what kind of impact a fiscal tool like Gender Budget has on gender (in)equality.

Gender Budgeting in India - How are Gender Budget Statements structured?

  1. The Union Government and the State Governments currently publish a Gender Budget Statement (GBS) as part of the Budget Document. The GBS is an accounting statement that presents the government’s allocation of funds and expenditure thereof on schemes substantially meant for the welfare of women and children[8]. Like most budget documents, the GBS presents the Budgeted Estimates of the current Fiscal Year (FY), Revised Estimates of the previous FY and the Actual figures of the FY previous to the last one.

  2. The GBS is usually prepared and presented under two parts – (i) Part A: reflecting schemes that have 100% allocation for women and girl children, and (ii) Part B: reflecting schemes with 30% or more (and less than 100%) allocation for women and girl children[9]. The former are also called ‘Gender Specific Schemes’ and the latter ‘Gender Sensitive Schemes’. The total of the two parts constitutes the size of the total gender budget of the government. It may be noted that the schemes under Part B are often called composite schemes as their beneficiaries are expected to be across genders, and the challenge is then to identify the share of scheme expenditure that may specifically help the cause of gender equality (which is then to be reported in Part B of the GBS).

  3. Various Ministries/Departments are expected to identify ongoing programmes/schemes/sub-schemes that are meant to primarily benefit women and girl children, and depending on the share of expenditure of those schemes, they are reported under Part A or Part B of the GBS. For instance, the allocation for the Janani Suraksha Yojna scheme, a safe motherhood intervention under the National Health Mission, is reported under Part A of the GBS by the Department of Health and Family Welfare. However, a share of those schemes under the National Rural/Urban Health Mission that would benefit the entire population, including women and girl children, would be reported under Part B of the GBS depending on the share of scheme expenditure meant for women and girl children beneficiaries.

Gender Budget Statement - What are the challenges/gaps in GBS preparation?

  1. Guidelines exist on how a Gender Budget needs to be prepared but there are no standard processes followed across governments. To begin with, for instance, a GBS is typically structured under Part A and Part B as mentioned in Section 2.2. Neither is this structure uniform across governments (Kerala, for instance, reports all those allocations under Part B of GBS where allocations for gender concerns in a department are less than 100 %), nor is there a standard methodology to assess which departments/ministries should report scheme related expenditure in GBS and what allocations should be made by them to address existing gender concerns.

  2. Gender-disaggregated data are not readily available in most departments/ministries for the various ongoing schemes. For instance, beneficiary registries for scheme/s are often not available which can help identify if the scheme is targeted towards a particular gender or would impact one gender differently than another. As a result, gender assessment frameworks are rarely used, and reported allocations in the GBS often end up being a by-product of subjective assessments of governments and concerned stakeholders involved in the process[10].

  3. The GBS rarely follows the Chart of Account (COA) structure to report allocations and expenditures of respective departments/ministries. That gender is not an attribute in the current COA is a cause of concern, but more importantly, the lack of clarity on what the GBS captures - programme or scheme or sub-scheme or detailed scheme level allocations and expenditure - is what obscures information on the real intent of the GBS. Barring a few exceptions, like Odisha GBS which reports allocations on Major Head, most GBS, including that of the Government of India, report allocations under Part and Part B while being silent on the COA. This is a challenge since compiling information for GBS then seems like an ad-hoc process with no clarity on what constitutes a Gender Budget. To the reader of the GBS, it is not clear what proportion of the total Demand for Grants of a department/ministry goes on to be reported in the GBS, and whether the gendered allocation is for the entire programme (Minor Head level) or scheme (Sub Head level) or sub-scheme (Detailed Head level). This absence of crucial information makes it difficult to slice and dice information at the aggregate and disaggregate level (hence to derive some meaningful insights) and is a major blow to overall fiscal accountability and transparency.

iFIX and Gender Budget - How can iFIX enable and support gender budgeting

  1. A preliminary enquiry into the process of preparation of GBS suggests that it is an ad-hoc process with less objective and more subjective criteria involved in the same. As a result, not surprisingly, a fair amount of human effort is required to collate fiscal information for a GBS at present.

  2. The integrated Fiscal Information Exchange, or iFIX, is an information exchange platform that helps facilitate the exchange of fiscal information across central, state and local governments and also between various departments in a standardized manner. The objective of this exercise is to explore if iFIX can help collate relevant fiscal information for gender budgeting in a more standardized, efficient, timely and transparent manner, and if iFIX can play a role in incorporating gender concerns in the budgeting exercise.

  3. Before we begin to explore how iFIX can enable the stated objective, it is important to underscore that iFIX is a technology platform hence capable of handling objective and not subjective information (at least with the current architecture). This is a critical aspect to understand and appreciate since it helps define the scope of iFIX with respect to gender budgeting. Gender budgeting, even in the nascent stages it is in India as well as in the most mature forms as it is in a few countries, involves a mix of objective and subjective criteria that go into designing the same. Hence, to begin with, iFIX can enable only those elements of GBS for which objective logic forms the basis of decision-making. The hope is that iFIX, along with other reforms in public financial management, will gradually enable the generation of more (and quality) fiscal information that could feed into incorporating other subjective concerns as well in gender budgeting exercise.

  4. A related aspect to consider for this exercise is that gender budgeting encompasses a variety of schemes - direct benefit schemes that are targeted for women (for instance, scholarship scheme for women); schemes targeted towards the creation/maintenance of assets that would primarily benefit women (for instance, creation of creche facility in workplaces); schemes to create gender awareness (for instance, gender sensitization in workplaces). We believe that iFIX is more suited to handle schemes of the first two kinds where beneficiary data would be available (or could be made available with the intervention by competent authorities)[11]. The gender-disaggregated data could thus feed into designing gender-specific allocations of the involved departments/ministries. Therefore, we limit the scope of this exercise to explore how iFIX can enable the generation of gender-disaggregated data for schemes of a specific nature, as elucidated above.

  5. Lastly, a crucial consideration is that the nuance of gender budgeting lies in ex-ante planning and ex-post outcome analysis. Since the iFIX platform enables the exchange of fiscal information, the ex-post outcome analysis of the gender budget is out of the current scope. The utility of iFIX thus lies in enabling proper (informed) planning of gender allocations at the department/ministry level that could then feed into accounting and auditing[12].

iFIX and Gender Budget - Using the Fiscal Events-Based Approach

  1. To explore how iFIX can help in the generation of gender-disaggregated data for schemes reported under Part A and Part B of the GBS, we explore what fiscal attributes and data registries would be needed.

  2. As stated above, the first point of intervention would be in the planning stage hence we look at the list of attributes listed in the Planning stage of the budget cycle. The attributes important for GBS in this stage are the scheme/project name and the name of the department. These are important to identify the department which is doing gendered allocation as well as to identify the scheme that is being run to address gender concerns. The scheme objective is crucial to understand the nature of the scheme - who is it targeted to, for what purpose, what would be the nature of intervention by the government (direct benefit transfer, construction/maintenance of the asset, gender awareness, etc.), what are the components of the scheme (sub-schemes therewith), who is responsible for designing and executing the scheme[13], etc.

  3. The next crucial aspect is to identify whether the entire scheme is targeted towards the intended beneficiaries or a sub-scheme (or a proportion of scheme expenditure targeted towards the intended beneficiaries). This is to not just assist in accurate planning and estimation of funds (scheme being reported at the Sub Head level, and sub-scheme at the Detailed Head level in the current COA), but also to ensure that the subsequent reporting and accounting can then follow making it easier to extract the gender budget component from the overall demand for grant of the involved department/ministry, which would then be reported in the GBS. It will be a crucial factor in determining accurate identification and then reporting of schemes/sub-schemes in Part A and Part B of the GBS.

  4. This has to be followed by having the beneficiary registry in place. At present, the COA does not capture any information on the intended beneficiary of any government. The proposed COA by the Sundaramurti Committee Report however suggests the introduction of the ‘Target Segment’ that would be used to identify expenditures targeted at special policy objectives, including women-centric expenditures that would enable the capturing of budget and accounting data pertaining to gender budgeting. In iFIX, this would mean introducing the Beneficiary Registry that would be a constituent of the Common Reference Data. The fiscal events of plan and estimate can then be linked to this registry/ common reference data to derive more value from the fiscal events data while also allowing data users to run better analytical queries.

  5. At this stage, we believe that it suffices to have the attributes of the scheme name and objective in the plan and estimate fiscal events, mapped to the beneficiary registry (Target Segment) to derive relevant fiscal information needed for the preparation of GBS. As stated earlier, since the execution of the budget doesn’t distinguish between gender-specific expenditure and other expenditures, no additional attributes other than those already identified for the remaining fiscal events (demand, bill, credit/debit) would be needed.

  6. The fundamental role of iFIX would be to enable the planning and estimation of funds for gender-specific or gender-sensitive schemes using data available from the relevant registries. Linking the scheme to the correct beneficiary registry is the objective criterion needed to ensure that accurate gender-disaggregated data can be used to design better gender budgets. The expenditure incurred on those schemes and the subsequent accounting would then help establish the chain of custody and trace the flow of funds from planning to the accounting stage. The availability of this fiscal information across the entire budget cycle could then also facilitate gender audits.

Fiscal Events-Based Approach of iFIX - Illustrations for Part A and Part B of the GBS

  1. To illustrate the approach stated above, let us consider the Sarva Shiksha Abhiyan (SSA), the Government of India's flagship programme for the achievement of the Universalization of Elementary Education (UEE) in a time-bound manner. The programme is targeted towards making free and compulsory Education for Children in the 6-14 years age group, a Fundamental Right. Hence, if one were to map the target segment, the beneficiary registry for this programme would be all eligible children (irrespective of gender) in the stated age group. However, the programme covers many schemes (and sub-schemes), some targeted primarily towards girl children. These components of the programme would be reported in the GBS, some in Part A and some in Part B. A scheme under the SSA programme, the objective of which is to construct a primary school only for girls, would ideally be reported under Part A of the GBS by the Department of Education. On the other hand, if a sub-scheme under the programme entails the construction of toilets for girl children in already existing primary schools, then such allocation should ideally be reported at the sub-scheme level and in Part B of the GBS by the Department of Education.

  2. This distinction is crucial at the planning stage itself so that subsequent accounting can help report accurate expenditures in the GBS. For instance, the entire allocation and the expenditure thereof on the scheme - construction of primary school for girls - would be reported under Part A of the GBS; while the allocation and the expenditure thereof the sub-scheme - construction of toilets for girls in primary schools - would constitute only a percentage of allocation (expenditure) on the scheme (construction of primary schools). This share of expenditure on the sub-scheme that is intended to have the gendered impact (encourage retention of girls in schools, who otherwise would have dropped out of schools due to lack of toilet facilities), constitutes 30% or more of the total scheme expenditure, is what would be reported in Part B of the GBS.

  3. To understand how iFIX can use objective criteria as explored above to help generate gender-disaggregated data (which in turn could feed into the design of better gender budgets) can be understood by considering the scheme examples stated above. Let us first consider the scheme reported under Part A of the GBS - construction of the primary school for girls. From the beneficiary registry of all eligible children between the age group of 6-14 years, iFIX would need to fetch the subset of intended beneficiaries for this scheme, i.e. number of girls from this registry who are eligible for primary school education. This gender-disaggregated data made available from the beneficiary registry (maintained and updated regularly by the government and other relevant authorities) is what will form the basis for a needs assessment study by the Department of Education in the planning stage. The beneficiaries' data (number of eligible girl children) along with norms like ideal student-teacher ratio, would help the department determine the number of schools to be constructed, the staffing requirements attached to it, along with the other infrastructural requirements needed to construct and run a well-equipped school. Thus, instead of relying on subjective criteria, the availability of the correct beneficiary registry can help determine the estimated budget for the scheme in a somewhat objective manner. Since this scheme is targeted entirely towards girl children, the number derived from this exercise would go on to be reported as the Budget Estimate figure for the current FY under Part A of the GBS.

  4. On the other hand, for the Part B scheme - construction of toilets for girls in primary schools - the starting point again has to be the beneficiary registry. The exercise stated above has to be repeated to do a needs assessment - how many toilets need to be constructed in the schools depends on the number of female students enrolled in those schools. The subset of the beneficiary registry would again be the entry point to arrive at the allocation needed for this sub-scheme. Once this is done, needs assessment would further entail determining the cost of constructing toilets and equipping them with needed facilities. This exercise would yield an estimate that would then form the basis for arriving at the total cost of this project (sub-scheme) and obtaining necessary sanctions from competent authorities. This estimate would however be a proportion of the total scheme cost (the total cost for constructing/maintaining primary schools) and would be reported under Part B of the GBS (assuming it is at least 30 per cent of the total scheme cost).

  5. The design of scheme plans and derivation of scheme estimates using the gender-disaggregated data (from the relevant registries) would then feed into the fiscal information available on iFIX. This would enable better and more accurate gender budgeting by design as the fiscal events at each stage of the budget cycle would then capture the relevant fiscal attributes which would give visibility to gender allocations in the budget. This visibility would ensure that accurate identification of schemes (or sub-schemes) can happen at the department/ministry level, accurate estimates can be prepared, and then meaningful analysis be undertaken (for instance, what proportion of the department's budget is reported in the GBS can be derived by identifying programmes, schemes and sub-schemes (the relevant COA level) from the attributes of scheme objective and target segment, or beneficiaries).

  6. It is to be emphasized that the ability of iFIX to enable the generation of gender-disaggregated data and gender budgeting rests on the ability of the government department to proactively engage in objective needs assessment and maintain (and thereafter judiciously utilize) the beneficiary registry to determine the scheme estimates (or allocations) right in the planning stage and estimation stages. The organization, and the Mission team in particular, thus have to actively engage with the government departments/ministries to channel the latter’s efforts in the needed direction.

Annexure IV- Exploring Use Cases for Health using iFIX

PFM in health - a brief overview

Public health is generally a shared fiscal responsibility between centre and state in most LMICs. This also adds complexity to the way it is financed and how it affects the out-of-pocket (OOP) spending for beneficiaries.

Government expenditure on health affects Universal Health Coverage (UHC) at the end of the day, hence it is important to

Ideal budget planning should happen bottom up right from village to centre. Unfortunately, due to the paucity of time, processes, systems, and standards, it ends up happening on an incremental basis discounting the current needs of the beneficiaries.

Understanding the problem space*

*This is currently based on a few preliminary interactions we have had with ecosystem partners, our experience and existing material available on this topic. As we engage with them and deep dive into the topic, this section will be refined to capture the problems/gaps in detail.

Centre sponsored NHM

iFIX and PFM in health - How can iFIX enable and support budgeting objectives

Several siloed systems and datasets have information which can be synthesized and made available to the administration for decision-making.

For example -

  1. Service delivery

    1. E.g. Number of C-sec deliveries at the facility level,

    2. Generally sits in registers or point solutions or HMIS at the facilities

  2. Programmatic data

    1. E.g. epidemiological and programmatic data on malaria incidence in a particular area, number of trainings conducted

    2. Generally sits in registers, or Excels

  3. Financial data

    1. E.g. amount to be spent on training, transport, HR, procurement etc

    2. Generally sits in MS Excel, point solutions, registers or paper formats, IFMIS, PFMS and other systems

    3. Key attributes - (not only NHM)

  4. Health data

    1. E.g. health data of individuals stored in electronic/non-electronic formats, MCP cards, household registers etc.

    2. Generally sits in HMIS, point solutions, registers

Opportunities

  1. Need to have an interface between programmatic, service delivery and financial data

  2. Identify areas of potential duplication or improve efficiency

  3. Review planned activities more accurately at the central level

Department/s

Announcement of the new Project/ Scheme by Chief Minister/ Department Minister

Create project/scheme

New Project/ Scheme created

Announcement Date, Place, Project/Scheme Name, Department Name, Financial Year, Announcement By

N

-

DPR Preparation and Approval

CORE: Name of project, Type of Project, Goal & Objectives (Outcome) of the Project, Work Plan, Source of funding, Major milestones, Outputs of each activity, Cost of each Activity, Total Cost of the Project

ANCILLARY: Administrative Approval Date, Approved By, Approval Remarks, Rejection Remarks,

HoD

New Project/ Scheme created

Draft Detailed Project Report

Drafted DPR

Name of project, Type of Project, Goal & Objectives (Outcome) of the Project, Work Plan, Source of funding, Major milestones, Outputs of each activity, Cost of each Activity, Total Cost of the Project

Y

Plan

DPR

Administrative Department (AD)

Drafted DPR

Review DPR

Approved DPR

Administrative Approval Date, Approved By, Remark

Y

Plan

DPR

Administrative Department (AD)

Drafted DPR

Review the DPR

Rejected DPR

Sent to HoD for review

Remarks for rejecting the DPR

Y

Plan

DPR

Chief Minister/ Department Minister

Approved DPR

Review the DPR

Approved DPR with administrative sanction

Administrative sanction date, Approved By, Remark

Y

Plan

DPR

Chief Minister/ Department Minister

Approved DPR

Review the DPR

Rejected DPR

Sent to AD for review

Remarks for rejecting the DPR

Y

Plan

AD/ HoD

Approved DPR with administrative sanction

Prepare Financial sanction proposal

Prepare case for financial sanction

Financial sanction proposal

Project Name, total Budget, Multi Year Plan, Financial Year, Project Start Year, Project Duration, Remark, Proposed COA, Amount

Y

Plan

Financial Sanction Preparation and Approval

CORE: Name of project, Type of Project, Goal & Objectives (Outcome) of the Project, Work Plan, Mode of funding, Funding Agency, Major milestones, Outputs of each activity, Cost of each Activity, Total Cost of the Project

ANCILLARY: Administrative Approval Date, Approved By, Approval Remarks, Rejection Remark

FD/Planning Department

Financial sanction proposal

Review financial sanction proposal

Approved, Generate Financial Sanction

Financial Year, Sanction No., Sanction Date, Sanction Amount, COA

Y

Plan

FD/Planning Department

Financial sanction proposal

Review Financial Sanction

Rejected

Objection sent to HoD for consideration and review

Remarks for rejecting financial proposal

Y

Plan

AD/ HoD

Approved DPR with financial sanction

Prepare plan for budget provision and send to the FD via BFC

Budget provision[2] (as RE for the current fiscal year)

Department Name, Project Name, Project Amount,

Financial Year,

COA

Y

Plan

Finance Department

Issue Budget Circular along with Budget Calendar

Budget Circular is issued to all departments inviting estimates of expenditure (Revenue) of the respective department

Budget Circular along with budget calendar issued

Department name, annual revenue expenditure estimates (BE and RE both), Demand for Grant details, Details of competent authority (BCO, DDO), dates

N

-

-

Estimating Officer / DDO/HoD

Budget Circular

Prepare expenditure (Revenue) estimates

Estimating officers prepare Budget Estimate for current FY and Revised Estimate for previous FY based on historic trends, projection of future demand and effect of any policy change to be formulated by the department/State

Budget Estimate for current FY and Revised Estimate for previous FY created

Department Name, COA details, estimated revenue expenditure, changes in pay scale,, no. of employee, electricity tariffs, interest rates etc,

Y

Estimate

Inputs for Department Level Proposed Budget

CORE: Department Name, COA details, estimated revenue expenditure

ANCILLARY: changes in pay scale,, no. of employee, electricity tariffs, interest rates etc,

Estimating Officer / DDO

Budget and Revised Estimated

Upload on IFMS

Budget and Revised Estimates uploaded on IFMS

Department Name, COA details, estimated revenue expenditure

Y

Estimate

HoD

Budget and Revised Estimates prepared by DDO

Scrutinize the estimates

Approved/rejected/modified estimates

Department Name, COA details, estimated revenue expenditure

Y

Estimate

Department Level Proposed Budget

CORE: Department Name,COA, estimated revenue expenditure

ANCILLARY: Remarks for cuts and modifications introduced by HoD, AD etc.

AD

Approved estimates by HoD

Scrutinize the estimates

Approved/rejected/modified estimates

Department Name, COA details, estimated revenue expenditure

Y

Estimate

Finance Department

Approved estimates by AD

Form Budget Finanilization Committee to scrutinize the submitted estimates

Approved/rejected/modified estimates by BFC

Department Name, COA details, estimated revenue expenditure

Y

Estimate

State Level Proposed Budget

CORE: Department Name,COA, estimated revenue expenditure

ANCILLARY: Remarks for cuts and modifications introduced by BFC, Cabinet etc.

Finance Department

Approved estimates by BFC

Prepare budget documents for submission to cabinet for approval

FD makes any necessary changes to the received estimates and consolidate s department-wise detailed estimates

Budget documents

Department Name,COA, estimated revenue expenditure

Y

Estimate

Finance Department

Approved estimates by BFC

Communicate details of finalized estimates to concerned ADs of departments for information

Consolidated department-wise estimates

Department Name, COA details, estimated revenue expenditure

Y

Estimate

Finance Department

Budget documents

Prepare memorandum based on the budget documents and submit

to the Cabinet for approval

Memorandum containing all budget documents

Multiple Documents - Annual Financial Statement, Expenditure Budget, Budget At A Glance

N

-

-

Planning Department

Issue planning Circular along with meeting Calendar

Planning circular is issued to all departments inviting ceiling of expenditure (Project/Scheme) of the respective department

Planning Circular along with meeting calendar issued

Department Name,

Meeting Date

N

-

-

Department HoD

Discussion on ceiling for New project/Scheme

Planning Dept given the budget ceiling

In the discussion, planning department define the ceiling for the budget preparation for the respective department

Defined the Budget ceiling for new project/Scheme

Department name, annual New capital/Project expenditure ceiling,, Details of competent authority (HoD, DDO), dates

N

-

-

Finance Department

Issue Budget Circular along with Budget Calendar

Budget Circular is issued to all departments inviting estimates of expenditure (capital) of the respective department

Budget Circular along with budget calendar issued

Profile with all relevant details created which can be edited, enabled, disabled

Department name, annual capital outlay estimates (BE and RE both), Demand for Grant details, Details of competent authority (BCO, DDO), dates

N

-

-

Estimating Officer / DDO/HoD

Budget Circular

Prepare expenditure (Capital) estimates under the defined ceiling by the planning dept.

Estimating officers prepare Budget Estimate for current FY and Revised Estimate for previous FY based on historic trends, projection of future demand and effect of any policy change to be formulated by the department/State

Budget Estimate for current FY and Revised Estimate for previous FY created

Department Name, COA details, estimated capital outlay

Y

Estimate

Inputs for Department Level Proposed Budget

CORE: Department Name, COA details, estimated capital outlay

ANCILLARY: None

Estimating Officer / DDO

Budget and Revised Estimated

Upload on IFMS

Budget and Revised Estimates uploaded on IFMS

Department Name, COA details, estimated capital outlay

Y

Estimate

HoD

Budget and Revised Estimates prepared by DDO

Scrutinize the estimates

Approved/rejected/modified estimates

Department Name, COA details, estimated capital outlay

Y

Estimate

Department Level Proposed Budget

CORE: Department Name, COA details, estimated capital outlay

ANCILLARY: Remarks for cuts and modifications introduced by HOD, BCO, Planning Department etc.

AD

Approved estimates by BCO

Scrutinize the estimates

Approved/rejected/modified estimates

Department Name, COA details, estimated capital outlay

Y

Estimate

Planning Department

Approved estimated by AD

Scrutinize the estimates

Approved/rejected/modified estimates

Department Name, COA details, estimated capital outlay

Y

Estimate

Finance Department

Approved estimates by PD

Form Budget Finanilization Committee to scrutinize the submitted estimates

Approved/rejected/modified estimates by BFC

Department Name, COA details, estimated capital outlay

Y

Estimate

State Level Proposed Budget

CORE: Department Name, COA details, estimated capital outlay

ANCILLARY: Remarks for cuts and modifications introduced by BFC, Cabinet etc.

Finance Department

Approved estimates by BFC

Prepare budget documents for submission to cabinet for approval

FD makes any necessary changes to the received estimates and consolidate department-wise detailed estimates

Budget documents

Department Name,COA, estimated capital outlay

Y

Estimate

Finance Department

Approved estimates by BFC

Communicate details of finalized estimates to concerned ADs of departments for information

Consolidated department-wise estimates

Department Name, COA details, estimated capital outlay

Y

Estimate

Finance Department

Budget documents

Prepare memorandum based on the budget documents and submit

to the Cabinet for approval

Memorandum containing all budget documents

Multiple Documents - Annual Financial Statement, Expenditure Budget, Budget At A Glance

N

-

-

Finance Department

Memorandum containing all budget documents

Present to the Legislative Assembly

Budget speech of the FM

Priorities of the Government, Current status of some important existing schemes, New schemes and programmes to be launched during the ensuing year, Tax/Tariff proposals and reliefs to be granted, if any, Summary of Revised Estimates and Budget Estimates

N

-

-

-

Finance Department

Memorandum containing all budget documents

General discussion on the budget as a whole and/or on any question of principle or policy involved therein

Tabling of the Budget Documents

Not Applicable

N

-

-

-

Finance Department

Memorandum containing all budget documents

Vote on Demand for Grants

Voted Demand for Grants

Demand No., Department Name, COA, Amount for BE, RE and Actuals

N

-

-

-

Finance Department

Demand for Grants

Introduce Appropriation Bill

Appropriation Bill

N

-

-

-

Finance Department

Appropriation Bill

Obtain Governor’s assent

Appropriation Act

N

-

-

-

Finance Department

Appropriation Act

Issue a circular authorising incurring of expenditure as per guidelines contained in the Appropriation Act

Circular containing details as per the Appropriation Act

N

-

-

-

Finance Department

Appropriation Act

Issue notification in the Official Gazette

Gazette notification

N

-

-

-

Finance Department

Circular containing details as per the Appropriation Act

Upload budget for department on IFMS

Budget by department

There is detailed information of allotments placed at the disposal of each department during the budget year

Department name, Department code, COA heads, amount, financial year, authorization authority with details

Y

Estimate

State Level Approved Budget

CORE: Department name, Department code, COA heads, amount, financial year

ANCILLARY: Authorization authority with details

Finance Department

Circular containing details as per the Appropriation Act

Send the minutes of the meeting of BFC to the concerned AD

Minutes of the BFC

Department name, Department code, COA heads, amount, financial year, authorization authority with details

N

-

-

AD

Minutes of the BFC

Issue orders for DDO-wise estimates

Order to prepare DDO wise estimates

Department name, Department code, COA heads, amount, financial year, authorization authority with details

N

-

-

HoD

Order to prepare DDO wise estimates

Prepare DDO wise estimates

DDO wise estimates available on IFMS

Department name, Department code, COA heads, amount, financial year, authorization authority with details, DDO Name and Code

Y

Estimate

Approved Estimate

DDO Level Approved Budget

CORE: Department name, Department code, COA heads, amount, financial year, DDO Name and Code

ANCILLARY: Authorization Authority with Details

DDO

DDO wise estimates available on IFMS

View allocation on IFMS

DDO receives details of allotments provided for expenditure

Department name, Department code, COA heads, amount, financial year, DDO Name and Code

Y

Estimate

Approved Estimate

DDO

60% of first tranche of project/scheme funds utilized

Prepare Utilization Certificate

Utilization Certificate

Department name, department code, Vendor name, project details, work done against total deliverable, amount sanctioned, amount utilized, balance amount, DDO name and DDO code

N

-

-

HoD/AD

Utilization Certificate

Review utilization certificate

Approved, forward to FD with demand request

Department name, department code, Vendor name, project details, work done against total deliverable, amount sanctioned, amount utilized, balance amount, amount requested (next tranche), DDO name and DDO code

N

-

-

FD

Utilization Certificate, and demand request

Review utilization certificate and demand request

Approve next tranche

Amount reflected on IFMS, visible to HoD

Approved UC + Department name, department code, amount, COA

Y

Demand

Demand Request by DDO

CORE: Department name, department code, amount, COA, DDO name and DDO code

ANCILLARY: (Approved UC: Department name, department code, Vendor name, project details, work done against total deliverable, amount sanctioned, amount utilized, balance amount, DDO name and DDO code)

HoD

Approved next tranche information

Inform to respective DDO

Amount reflected on IFMS, visible to DDO

Department name, department code, amount, COA, DDO name and DDO code

Y

Demand

HoD/DDO

Approved DPR with financial sanction

Invite bids from vendor/contract for work

Review process of tender

Bid invitation

Bid Reference no. Department name, Project details, date of bid invitation, selection/eligibility criteria Bid Reference no.

N

-

-

HoD/DDO

Bid invitation

Award work to a vendor/contractor

Work awarded to vendor/contractor

Bid Reference no. , Vendor name, date of award of work, Project details - name, terms and conditions, deliverables expected, vendor account details, Tender value, Contract rate

Y

Plan

Work Allocation to Vendor

CORE: Bid Reference No., Contract Reference No., Vendor Name, Vendor account details, Tender value, Contract rate, Date of award, Project Name

ANCILLARY: Project Details- Terms and Conditions, Deliverables expected

HoD/DDO

Contract sign

Create Work order/purchase order

Work Execution start

Bid Reference no., Contract Reference No., Vendor name, date of award of work, project details - name, terms and conditions, deliverables expected, vendor account details, Tender value, Contract rate

Y

Plan

Vendor

Work execution

Execute work and submit bill with Physical report of assign work

Physical report with invoice bill

Vendor name, date of award of work, project details - terms and conditions, deliverables expected, vendor account details, physical report, tender value, contract rate, invoice amount, date

Y

Bill

Bill Generation by Vendor

CORE: Work order reference, Bill date, Name of vendor, Bill amount (Gross, Deduction, Net), Bill type, Bank account details

ANCILLARY:

(Physical Report: Vendor name, date of award of work, project details - terms and conditions, deliverables expected, vendor account details, physical report, tender value, contract rate, invoice amount, date)

Vendor

Eligibility criteria (Milestones, MRN, PO)

Submit bill

Bill submitted with an invoice covering letter as per the work done on the deliverable designed

Acknowledge bill receipt

When bill is submitted, receiving received from DDO on the invoice covering letter

Work order reference, Bill date, Name of vendor, Bill amount (Gross, Deduction, Net), Bill type, Vendor Bank account details

Y

Bill

DDO

Vendor bill

Review bill

DDO reviews the invoice against set rules/norms (verification process)

Verified vendor bill

Project name, Sanction, Cost, Deliverable, Timeline,

Bill amount against work done, Vendor Bank account details

Y

Bill

Bill Generation by DDO

CORE: Bill date, Name of vendor, Bill amount (Gross, Deduction, Net), Bill type, COA head, DDO code, Department code, Vendor Bank account details, Reference No.

ANCILLARY: Token No., Treasury rules, Bill approval status, Approval or Rejection Remarks, Relevant Fields from Physical Report (Project name, Sanction, Cost, Deliverable, Timeline,

Bill amount against work done, Vendor Bank account details)

DDO

Verified vendor bill

Generate bill (government format)

Bill generated by DDO based on verified bill

Bill available in department system

Bill available for sharing/uploading on treasury system

Bill date, Name of vendor, Bill amount (Gross, Deduction, Net), Bill type, COA head, DDO code, Department code, Vendor Bank account details . Reference No.

Y

Bill

Treasury

Token Section

Bill received from DDO

Assign token number and audit officer

Bill tagged with token number reflected in Treasury system

Token number (Bill No.), date,

gross amount, deduction, net amount, COA head,

DDO code, Department code,

Vendor Bank account details

Y

Bill

Treasury

Audit Section - auditor, accountant and treasury officer

Bill with token number

Audit bill (as per treasury rules)

Bill status - approved or rejected, with remark

Treasury rules,

bill approval status (approved or rejected, with remark)

Y

Bill

Treasury

Audit Section

Rejection criteria

Create intimation (with details for reason for rejection)

Status and rejection criteria is reflected in Department Bill system

Remarks

DDO reviews the remarks, rectifies the bill, and sends again to treasury for payment

Y

Bill

Treasury

Payment Section

Bill - approved

Generate payment advice

Payment advice pushed to banking system

Token number, date,

gross amount, deduction, net amount, COA head,

DDO code, Department code,

Vendor Bank account details

Y

Payment

Payment Advice Generation

CORE: Token number, date,

gross amount, deduction, net amount, COA head,

DDO code, Department code,

Vendor Bank account details

ANCILLARY: Payment Advice Status, Remarks

RBI/Bank

Payment advice receipt

Validate payment advice

Payment advice status - accepted or rejected

Payment advice status and remarks, if rejected

Y

Payment

RBI/Bank

Payment advice - accepted

Credit beneficiary account

Debit State Govt account

e-scroll pushed to Treasury System

Token number,

date, gross amount,

deduction, Vendor Bank account details

Y

Payment

Treasury

Audit Section

e-scroll

Generate voucher number

Consolidate e-scrolls for preparation of AG accounts

Voucher number,

Date, Amount,

COA head, DDO code,

Department code

Y

Debit

Payment Completion

CORE: Voucher number,

Date, Amount,

COA head, DDO code,

Department code

ANCILLARY: None

RBI/Bank

Payment advice - rejected

Credit suspense head

Status and rejection criteria is reflected in Treasury system

Remarks

Y

Payment

(Included in Ancillary attributes mentioned against Row 8-10 of this process. )

Treasury

Audit Section

Rejection criteria

Intimation of rejection

DDO rectifies the bill and sends again to treasury for payment

Status and rejection criteria is reflected in Department Bill System

Remarks

DDO reviews the remarks, Rectifications to the bill, and

Y

Bill

(Included in Ancillary attributes mentioned against Row 3-7 of this process. )

DDO (Maker)

Eligibility criteria (Monthly Salary Bill/ reimbursement of TA/Medical and Other Expenditure)

Submit bill

Bill submitted by the maker(DDO)

Acknowledge bill receipt

When bill is submitted to DDO officer for approval

Department code, DDO Code, Employee name, Bank details, Month, Year, designation, Gross Amount, Net Amount, Deduction Amount, bill type(Salary/TA/Medical and other expense ), Reference No.

Y

Bill

Bill Generation by DDO

CORE: Department code, DDO Code, Employee name, Bank details, Month, Year, designation, Gross Amount, Net Amount, Deduction Amount, bill type (Salary/TA/Medical and other expense ), COA (Budget Head), Reference No.

ANCILLARY: Token Number, Treasury Rules, Bill Approval Status, Approval or Rejection Remarks

DDO (Approval)

Revenue bill

Review bill

DDO reviews the bill against set rules/norms (verification process)

Verified Revenue bill

Department code, DDO Code, Employee name, Bank details, Month, Year, designation, Gross Amount, Net Amount, Deduction Amount, bill type(Salary/TA/Medical and other expense ), Reference No.

Y

Bill

DDO

Verified Revenue bill

Generate bill (government format)

Bill generated by DDO based on verified bill

Bill available in department system

Bill available for sharing/uploading on treasury system

Department code, DDO Code, Employee name, Bank details, Month, Year, designation, Gross Amount, Net Amount, Deduction Amount, bill type(Salary/TA/Medical and other expense, COA (Budget Head)

Y

Bill

Treasury

Token Section

Bill received from DDO

Assign token number and audit officer

Bill tagged with token number reflected in Treasury system

Token number (Bill No.) , date,

gross amount, deduction, net amount, COA head,

DDO code, Department code,

Bank account details

Y

Bill

Treasury

Audit Section - auditor, accountant and treasury officer

Bill with token number

Audit bill (as per treasury rules)

Bill status - approved or rejected, with remark

Treasury rules,

bill approval status (approved or rejected, with remark)

Y

Bill

Treasury

Audit Section

Rejection criteria from Treasury Audit

Create intimation (with details for reason for rejection)

Status and rejection criteria is reflected in Department Bill System

Remarks

DDO reviews the remarks, rectifies the bill, and sends again to treasury for payment

Y

Bill

Treasury

Payment Section

Bill - approved

Generate payment advice

Payment advice pushed to banking system

Token number, date,

gross amount, deduction, net amount, COA head,

DDO code, Department code,

Bank account details

Y

Payment

Payment Advice Generation

CORE: Token number, date,

gross amount, deduction, net amount, COA head,

DDO code, Department code,

Bank account details

ANCILLARY: Payment Advice Status, Remarks

RBI/Bank

Payment advice receipt

Validate payment advice

Payment advice status - accepted or rejected

Payment advice status and remarks, if rejected

Y

Payment

RBI/Bank

Payment advice - accepted

Debit State Govt account

Credit beneficiary account

e-scroll pushed to Treasury System

Token number,

date, gross amount,

deduction, Bank Account details

Y

Payment

Treasury

Audit Section

e-scroll

Generate voucher number

Consolidate e-scrolls for preparation of AG accounts

Voucher number,

Date, Amount,

COA head, DDO code,

Department code

Y

Debit

Payment Completion

CORE: Voucher number,

Date, Amount, COA head, DDO code, Department code

ANCILLARY: None

RBI/Bank

Payment advice - rejected

Credit suspense head

Status and rejection criteria is reflected in Treasury system

Remarks

Y

Payment

(Included in Ancillary attributes mentioned against Row 7-9 of this process. )

Treasury

Audit Section

Rejection criteria from RBI

Create intimation (with details for reason for rejection)

DDO rectifies the bill and sends again to treasury for payment

Status and rejection criteria is reflected in Department Bill System

Remarks

DDO reviews the remarks, Rectifications in the Bill

Y

Bill

(Included in Ancillary attributes mentioned against Row 1-6 of this process.)

DDO

Receipt (water charges collected)

Create profile

DDO logs in eReceipt Module of IFMS and creates profile to start receipt deposit process

Profile created

Profile with all relevant details created which can be edited, enabled, disabled

User name (DDO), Department Name and Code, Treasury and Sub-Treasury Name and Code, COA Head

N

-

-

DDO

DDO profile

Fill Challan details

DDO fills out all necessary details including the the type of payment, bank and mode of payment

e-Challan created

DDO details - name, division, etc., Nature of payment, Financial Year, Period (annual, monthly, etc.), COA head, gross amount, net amount, mode of payment

Y

Demand

Challan Created

CORE: DDO details - name, division, etc., Nature of payment, Financial Year, Period (annual, monthly, etc.), COA head, gross amount, net amount, mode of payment

ANCILLARY: None

DDO

e-Challan

Deposit payment - online

DDO chooses a payment mode and fills in all required details for making payment

Bill Invoice reflected in IFMS eReceipt

Bank details, date and time of payment, CIN, Reference Number,

Y

Payment

Payment Initiation

CORE: DDO details - name, division, etc., Nature of payment, Financial Year, Period (annual, monthly, etc.), COA head, gross amount, net amount, mode of payment

ANCILLARY: None

DDO

e-Challan

Deposit payment - offline[6]

Challan

Bank details, date and time of payment, CIN, Reference Number,

Y

Payment

Bank

Deposited Challan

Credit the treasury account

E-scroll generated

UTR No., CIN, date and time of transaction, Department Code, treasury code, COA head, amount

Y

Credit

Collection Completion

CORE: DDO details - name, division, etc., Nature of payment, Financial Year, Period (annual, monthly, etc.), COA head, gross amount, net amount, mode of payment

ANCILLARY: None

Treasury

e-scroll

Generate Treasury Challan No. and consolidate all challans

Consolidated report for AG

Treasury challan No. Treasury Challan Date, Amount, COA, Department Code

N

-

-

DDO

Excess expenditure /Need for supplementary grants

Prepare

Statement of need of Supplementary Demand for Grants

Submit Statement of Supplementary Demand for Grants

Department Name and Code, Demand for Grant No., DDO code, COA, Original Appropriation, Actual Expenditure, Supplementary grant (amount) required and reasons for same

Y

Estimate

Estimation of Supplementary Grants and Approval

CORE: Department Name and Code, Demand for Grant No., DDO code, COA, Original Appropriation, Actual Expenditure, Supplementary grant (amount)

ANCILLARY: Reasons for supplementary grant, comments from BCO, comments from AD, Approval / Rejection Remarks

BCO

Statement of Supplementary Demand for Grants

Review against budget provision and prepare proposal for Supplementary Grants

Proposal for Supplementary Grants

Department Name and Code, Demand for Grant No., COA, Original Appropriation, Actual Expenditure, Supplementary grant (amount) required and reasons for same, comments of BCO

Y

Estimate

AD

Proposal for Supplementary Grants

Review the proposal

Approved, submit proposal to FD

Department Name and Code, Demand for Grant No., COA, Original Appropriation, Actual Expenditure, Supplementary grant (amount) required and reasons for same, comments of AD

Y

Estimate

FD

Proposal for Supplementary Grants

Review the proposal

Approved, send to Legislative Assembly for approval

Department Name and Code, Demand for Grant No., COA, Original Appropriation, Actual Expenditure, Supplementary grant (amount) required

Y

Estimate

FD

Proposal for Supplementary Grants

Review the proposal

Rejected, send communication with remarks to AD

Remarks for rejection

Y

Estimate

Legislative Assembly

Proposal for Supplementary Grants

Review the proposal

Approved, issue communication to FD on Supplementary Demand for Grants

Department Name and Code, Demand for Grant No., COA, Original Appropriation, Actual Expenditure, Approved Supplementary grant (amount)

Y

Estimate

Approved Estimated

DDO

Excess savings/Need for reappropriation

Prepare

Statement of expected

savings/Revised Estimates of Expenditure

Submit Statement of expected savings/Revised Estimates of Expenditure

Department Name and Code, Demand for Grant No., DDO code, COA, Original Appropriation, Actual Expenditure, Savings and Amount

Y

Estimate

Excess/ Savings Estimation- and Approval

CORE: Department Name and Code, Demand for Grant No., DDO code, COA, Original Appropriation, Actual Expenditure, Savings/Excess,- Amount

ANCILLARY: Comments from BCO, Comments from AD, Remarks for rejection

BCO

Statement of expected savings/Revised Estimates of Expenditure

Review against budget provision and consolidate all Revised Estimates

Approved, submit proposal to AD

Comments from BCO

Y

Estimate

AD

Consolidate Revised Estimates

Review the Revised Estimates

Approved, submit proposal to FD

Comments from AD

Y

Estimate

FD

Consolidated Revised Estimates

Review the proposal

Approved, upload Revised Estimates on IFMS

Department Name and Code, Demand for Grant No., DDO code, COA, Original Appropriation, Actual Expenditure, Approved Savings/Excess,- Amount

Y

Estimate

FD

Consolidated Revised Estimates

Review the proposal

Rejected, send communication with remarks to AD

Remarks for Rejection

Y

Estimate

FD

Approved request for savings

Revoke amount under the COA of respective department

Savings surrendered under the COA of respective department

Department Name and Code, Demand for Grant No., COA, Savings, Amount surrendered

Treasury

e-scroll

Generate Treasury Challan No. and consolidate all challans

Consolidated challans

Treasury challan No. Treasury Challan Date, Amount, COA, Department Code

N

-

-

-

Treasury

Consolidated challans

Prepare monthly receipt report

Consolidated receipt report sent to AG

Department name and code, total budget provision, receipt in the last month, total receipts till last month of the FY, expected collections remaining

N

-

-

-

DDO

Prepare daily/bi-weekly/monthly receipt report

Consolidated report sent to BCO

Department name and code, total budget provision, receipt in the last month, total receipts till last month of the FY, expected collections remaining

N

-

-

-

HoD/AD

Consolidated receipt report

Review consolidated receipt report

Approved, shared with AG

Department name and code, total budget provision, receipt in the last month, total receipts till last month of the FY, expected collections remaining

N

-

-

-

Treasury

Audit Section

e-scroll

Generate voucher number and consolidate all vouchers

Consolidated vouchers

Voucher number,

Date, Amount,

COA head, DDO code,

Department code

N

-

-

-

Treasury

Consolidated vouchers

Prepare monthly expenditure reports

Consolidated expenditure report sent to AG

Department name and code, COA, total budget provision, expenditure incurred in the last month, total expenditure incurred till last month of the FY, balance remaining

N

-

-

-

DDO

Prepare monthly expenditure reports

Consolidated expenditure report sent to HoD

Department name and code, total budget provision, expenditure incurred in the last month, total expenditure incurred till last month of the FY, balance remaining

N

-

-

-

HoD/AD

Consolidated expenditure report

Review consolidated expenditure report

Approved, shared with AG

Department name and code, total budget provision, expenditure incurred in the last month, total expenditure incurred till last month of the FY,

N

-

-

-