Overview of Payment Plugin Architecture
Payment URLs
- Purchases:
/purchases/
- Administration page to review purchases made from customers in your business.. - Settings:
/settings/
- Administration page which manages payment settings. - Checkout:
/checkout/
- Primary checkout page - with optional arguments for specifying customer or cart. - Choose New Customer:
/choose_new_customer/
- Chooses a new customer for payment. - Credit Balance:
/credit-balance/
- Manages credit balance. - Credit Services:
/credit-services/
- Manages credit services. - Stripe Intent:
/stripe-intent/
- Manages Stripe payment intents. - Stripe Terminal:
/stripe-terminal/
- Manages Stripe terminal interactions.
Payment Database Models
- ProfilePaymentData: Stores payment data for profiles. One-to-one with Profile.
- PaymentSettings: Stores payment-specific settings for each Business. One-to-one with Business.
- Cart: Supports shopping for items to purchase. Carts become Orders once checkout completes, and are deleted.
- Order: Converts carts into orders upon payment. Orders are created once payment is completed, and are preserved for record keeping.
- Payment: Handles payment transactions.
- Refund: Manages refund processes.
Deprecated Components
The following components are not a part of the native, default operation of the Payment Plugin. However, they remain optional and functional instruments for performing key payment operations. The saving of payment cards is a feature that would be implemented for the Stripe payment gateway. In certain payment flows, Ruoom might store the non-sensitive metadata of a payment card and tie it via Stripe API IDs to associate it with a payment. However, because the current Payment Plugin makes use of the Express Checkout javascript component, this feature isn’t integrated into the core flow.Deprecated URLs
- List Payment Cards:
/list-payment-cards/
- Lists payment cards. - Add Card Details:
/add_card_details/
- Adds card details.
Deprecated Models
- Card: Manages card metadata (non-sensitive) and the integration of cards with the Stripe payment gateway.