Plexy
Pay APIGate APIDashboard
Pay APIGate APIDashboard
  1. Pay API
  • Overview
  • Authorization
  • Webhooks
  • API Errors
  • Test Scenarios
  • Ecommerce Plugins
  • API
    • Payments
      • Overview
      • Payment Links
        • Create Payment Link
        • List Payment Links
        • Retrieve Payment Link by Order Reference
        • Cancel Payment Link
        • Retrieve Payment Link
        • Update Payment Link Expiration
        • Retrieve Payment Links Statistics
      • Reccurent Payments
        • Create Merchant-Initiated Payment
      • Direct Payments
        • Get Keys
        • Create Host-to-Host Payment
      • Transaction Management
        • Find Transaction's History by ID
        • Find Transaction by Payment Link ID
        • Find Transaction by ID
        • Find Transaction by Order reference
      • Payment Management
        • Cancel Payment
        • Capture Payment
        • Process Refund
      • Split Requests
        • Create
        • List
        • Update
        • Get By Id
        • Delete
      • Settlement Payment Order
        • Create
        • Get by id
        • List
    • Payouts
      • Retrieve Payout Transactions
      • Process Payout
      • Save Card for Payouts
    • Customers
      • Get Customer's Card Tokens
      • List Customers
      • Create Customer
      • Get Customer by ID
      • Get Customer's Transactions
    • Merchants
      • Payment Beneficiary
        • Create
        • Update
        • Gey By Id
        • List
        • Transfer from beneficiary balance to merchant balance
        • Create manual settlement for beneficiary
      • Retrieve Merchant's Details
  • Client SDK
    • Server flow
      • Advanced server flow
      • Session server flow
    • Web
      • Web Drop-in
      • Web Components
    • Flutter
      • Flutter Drop-in
      • Flutter Components
  • Schemas
    • Schemas
      • response.TransactionList
      • entity.SplitRequest
      • entity.PaymentBeneficiary
      • request.CreatePaymentBeneficiary
      • entity.SettlementPaymentOrder
      • entity.PayoutRequest
      • entity.PayoutRequestRowData
      • command.HandleThreeDResult
      • domain.Report
      • entity.CardSaveSessionCustomer
      • entity.Permission
      • entity.UserProfile
      • entity.UserRole
      • errors.Message
      • errors.Source
      • errors.Type
      • git_plexypay_com_ecom_back_api_internal_domain_view.Page-domain_Report
      • git_plexypay_com_ecom_back_api_internal_domain_view.Page-entity_UserProfile
      • git_plexypay_com_ecom_back_api_internal_platform_errors.Code
      • models.CSVApiRequest
      • models.CreateBussinessDetails
      • models.KeyResponse
      • models.OnboardingRequest
      • models.Transaction
      • paymentcore.Address
      • paymentcore.CustomerDetails
      • request.AuthorizePayment
      • request.BrowserDetails
      • request.CardData
      • request.ChangeUserRole
      • request.ContinueThreeDS
      • request.CreateCardSaveSession
      • request.CreateInviteSession
      • request.CreatePaymentLink
      • request.CreatePaymentLinkMetadata
      • request.HandlePayout
      • request.MerchantInitiatedPayment
      • request.PasswordRequest
      • request.Recurring
      • request.RefundPayment
      • request.SaveCard
      • request.SaveOneCustomer
      • request.TwoStepAuthorizePayment
      • request.UpdateMerchantSettingsRequest
      • request.UpdatePaymentLink
      • response.AcquirerResponseThreeDSecure
      • response.AuthorizeAndCapturePayment
      • response.AuthorizePayment
      • response.CancelPaymentResponse
      • response.CapturePaymentResponse
      • response.ContinueThreeDS
      • response.Currency
      • response.Customer
      • response.CustomerTransaction
      • response.CustomerTransactions
      • response.Customers
      • response.Error
      • response.Merchant
      • response.MerchantInitiatedPayment
      • response.MerchantSettings
      • response.PaymentLink
      • response.PaymentLinkInfo
      • response.PaymentLinkMetadata
      • response.PaymentLinksInfo
      • response.PaymentLinksStatistics
      • response.PaymentLinksStatisticsItem
      • response.Payout
      • response.Permission
      • response.RefundPaymentResponse
      • response.Report
      • response.SavedCard
      • response.Session
      • response.Settlement
      • response.SettlementTransaction
      • response.Store
      • response.Stores
      • response.Transaction
      • response.TransactionDetails
      • response.TransactionEvents
      • response.TransactionHistoryEvent
      • response.TransactionHistoryEventData
      • response.TransactionResponse
      • response.TransactionWebhookDetails
      • response.Transactions
      • response.UpdateMerchantSettingsResponse
      • response.UserProfile
      • value.PaymentMethod
    • receipt
    • Error
    • DecimalAmount
    • ProductType
    • ProductCategory
    • Product
    • Order
    • AgentBalance
    • AgentDeposit
    • TopupRequest
    • CreateOrderRequest
Pay APIGate APIDashboard
Pay APIGate APIDashboard
  1. Pay API

Client SDK

Plexy offers flexible SDK integration options that can be combined to match your specific needs. You'll need to make two key decisions:
1.
Client-side integration type - How you want to display payment methods in your app
2.
Server-side integration type - How you want to handle payment processing on your backend

Client-Side Integration Options#

Choose how you want to present payment methods to your users:

Drop-in Integration#

Best for: Quick implementation with minimal customization needs
The Drop-in component is a pre-built UI that displays all available payment methods in a single list. It's the fastest way to start accepting payments.
Key features:
Pre-built UI with all payment methods in one view
Minimal development time
Automatic support for new payment methods
Built-in 3D Secure 2 support
Basic UI styling customization
Supported payment methods: Cards, Apple Pay, Google Pay
Use Drop-in when:
You want to get to market quickly
You prefer a standardized payment UI
You want automatic updates when new payment methods are added
You need a simple, unified payment experience
Available for: Flutter

Components Integration#

Best for: Custom payment UI with full control over layout and user experience
Components give you individual UI elements for each payment method, allowing you to create a completely custom checkout experience.
Key features:
Individual components for each payment method
Full flexibility in layout and positioning
UI styling customization per component
Built-in 3D Secure 2 support
Render payment methods anywhere in your app
Supported payment methods: Cards, Apple Pay, Google Pay
Use Components when:
You need a custom-designed checkout flow
You want to position payment methods in specific locations
You require granular control over the user experience
You want to match your brand's unique design language
Available for: Flutter

Server-Side Integration Options#

Choose how your backend will communicate with Plexy's API:

Session Flow (Recommended)#

Best for: Most implementations - simple, secure, and efficient
The Session flow creates a payment session on your server with a single API call. The session contains all the information needed to complete the payment, making it ideal for most use cases.
How it works:
1.
Your server creates a payment session with a single /sessions API call
2.
Pass the session ID and session data to your client application
3.
Drop-in/Components handle the entire payment flow
4.
Receive payment results via webhooks
Key advantages:
Simplified integration - Only one server API call needed
Enhanced security - Payment details stay on Plexy's servers
Less maintenance - Plexy handles payment flow complexity
Faster development - Minimal backend code required
Parameters required:
merchantAccount
amount (currency and value)
returnUrl
reference
countryCode
channel (Web/iOS/Android)
shopperEmail (recommended)
shopperLocale (optional)
Use Session flow when:
You want the simplest backend integration
You're building a new integration
You prefer less server-side code to maintain
You want Plexy to handle payment flow complexity
View Session Flow Documentation →

Advanced Flow#

Best for: Complex requirements, custom payment flows, or existing integrations
The Advanced flow gives you complete control over the payment process with direct API calls for each step. You manage payment methods retrieval, payment submission, and handling additional actions.
How it works:
1.
Your server calls /paymentMethods to get available payment options
2.
Your server calls /payments to process the payment
3.
Handle additional actions (3D Secure, redirects) through your server
4.
Receive payment results via webhooks
Key advantages:
Maximum flexibility - Full control over every payment step
Custom logic - Implement complex business rules
Advanced scenarios - Handle unique payment flows
Granular control - Manage each API interaction
API calls required:
POST /paymentMethods - Retrieve available payment methods
POST /payments - Submit payment
Handle additional actions as needed
Use Advanced flow when:
You need custom payment logic or workflows
You want fine-grained control over the payment process
You're integrating with complex existing systems
You have specific compliance or business requirements
You need to modify payment data before submission
View Advanced Flow Documentation →

Choosing Your Integration#

Quick Decision Matrix#

Your RequirementClient-SideServer-Side
Fastest implementationDrop-inSession Flow
Custom UI designComponentsSession Flow
Complex business logicComponentsAdvanced Flow
Minimal maintenanceDrop-inSession Flow
Maximum flexibilityComponentsAdvanced Flow
Standard checkoutDrop-inSession Flow

Common Integration Combinations#

1. Quick Start (Recommended for most)
Client: Drop-in
Server: Session Flow
Best for: Getting to market quickly with a standard, reliable checkout
2. Custom Experience
Client: Components
Server: Session Flow
Best for: Branded checkout experience with simplified backend
3. Enterprise Solution
Client: Components
Server: Advanced Flow
Best for: Complex requirements with full control over payment logic
4. Rapid Prototype
Client: Drop-in
Server: Session Flow
Best for: POC or MVP development

Requirements for All Integrations#

Before you begin, ensure you have:
1.
Plexy Account Setup
Merchant account credentials
API key (for server-side calls)
Client key (for client-side authentication)
2.
Webhook Configuration
Set up webhook endpoints to receive payment outcomes
Configure webhook URLs in your Plexy account
3.
Platform-Specific Setup
Configure return URL handlers
Add custom URL schemes for redirects
Apple Pay: Complete certificate setup and add capability (iOS/Web)
Photo Library: Add usage descriptions for voucher payments (mobile)
4.
SDK Requirements
Check minimum version requirements for your chosen platform
Ensure compatibility with your development environment

Platform-Specific Documentation#

Select your platform to view detailed integration guides:
Web - Browser-based integration
iOS - Native iOS SDK
Android - Native Android SDK
React Native - Cross-platform JavaScript SDK
Flutter - Cross-platform Dart SDK (Drop-in | Components)

Next Steps#

1.
Choose your platform (Web, iOS, Android, React Native, or Flutter)
2.
Choose your integration approach using the decision matrix above
3.
Review the platform-specific documentation for your chosen client and server integration types
4.
Complete the prerequisites listed in the requirements section
5.
Follow the step-by-step guides in the detailed documentation
6.
Test your integration in the test environment
7.
Set up webhooks to receive payment outcomes
8.
Go live by switching to the production environment

Support#

For additional help:
Review the detailed documentation links above
Contact Plexy support for integration assistance
Check for code examples in the platform-specific integration guides

Ready to integrate? Start by selecting your platform and reviewing the documentation links for your chosen client and server integration types.
Modified at 2025-10-20 11:01:41
Previous
Retrieve Merchant's Details
Next
Advanced server flow
Built with