Payment Core provides a unified, extensible payment gateway integration framework for Frappe and ERPNext. It delivers a standardized interface for multiple payment providers, comprehensive payment request handling, webhook-based subscription management, and seamless integration with web forms and custom checkout flows.
Architecture Overview
Payments implements a layered architecture that separates payment orchestration from provider-specific implementations;

Payment Core Architechture Diagram
How It Works
1. Provider Layer: Gateway-specific implementations like Stripe, Razorpay, PayPal, and Braintree implement standardized payment interfaces.
2. Payment Core Layer: The middleware that handles:
- Payment Gateway Management: Centralized gateway configuration and routing
- Payment Request Handling: Standardized payment request creation and processing
- Integration Logging: Comprehensive payment transaction logging
- Web Form Integration: Seamless payment acceptance through web forms
- Subscription Management: Webhook-based recurring payment handling
3. Frappe/ERPNext Layer: Your Frappe or ERPNext instance where business documents and payment records are managed.
Prerequisites
Install the required apps in this order:
- ERPNext must already be installed on the site. It provides the Payment Request, Payment Entry, Company, Account, Sales Invoice, Sales Order, and Subscription records used by the integration.
- Payment Core must be installed after ERPNext. It provides the shared payment-gateway workflow used by provider apps. Payment Core does not connect to Stripe or accept payments by itself.
The repository for app is hosted on GitHub: Payment Core