Payment Method Configuration
The PlentyONE payment method is a special internal payment method used when synchronizing orders between Magento and PlentyONE. This configuration allows you to handle orders where payment processing occurs in PlentyONE rather than Magento.
Overview
The PlentyONE [internal payment] method is used for:
- Orders created in PlentyONE that are imported to Magento
- Orders where payment is processed through PlentyONE's payment gateway
- Synchronization scenarios where payment details are managed by PlentyONE
- Manual orders entered directly in PlentyONE
This payment method acts as a placeholder in Magento, indicating that the payment was handled by the PlentyONE system.
This payment method is not displayed to customers during checkout. It's an administrative payment method used exclusively for order synchronization between the two systems.
Accessing Payment Configuration
- Log in to your Magento Admin panel
- Navigate to Stores → Configuration
- In the left panel, expand Sales
- Select Payment Methods
- Scroll down to find PlentyONE [internal payment] section
Stores → Configuration → Sales → Payment Methods → PlentyONE [internal payment]
Configuration Settings
Enabled
Field: active
Path: payment/plentyone/active
Type: Yes/No
Default: No
Scope: Website
Can Restore: Yes
Enables or disables the PlentyONE internal payment method.
Description: When enabled, orders can be created in Magento using this payment method during synchronization from PlentyONE.
Configuration Steps:
- Navigate to Stores → Configuration → Sales → Payment Methods
- Scroll to PlentyONE [internal payment] section
- Set Enabled to Yes
- Click Save Config
- Clear cache:
bin/magento cache:flush
When to Enable:
- ✅ Importing orders from PlentyONE to Magento
- ✅ Using PlentyONE as the payment processor
- ✅ Synchronizing historical orders from PlentyONE
- ✅ Managing orders created in PlentyONE backend
When to Disable:
- ❌ Only exporting orders from Magento to PlentyONE (no import)
- ❌ All payments processed exclusively in Magento
- ❌ Not using order import functionality
If you plan to import orders from PlentyONE to Magento, this payment method must be enabled. Otherwise, order import will fail with payment method errors.
New Order Status
Field: order_status
Path: payment/plentyone/order_status
Type: Select
Scope: Website
Can Restore: Yes
Determines the initial order status when an order is created with this payment method.
Description: When an order is imported from PlentyONE with this payment method, it will be assigned the selected status in Magento.
Available Statuses:
Common order statuses include:
Status | Code | Description | Typical Use |
---|---|---|---|
Pending | pending | Order received, payment pending | Default for new orders |
Pending Payment | pending_payment | Awaiting payment confirmation | Orders awaiting payment |
Processing | processing | Order is being processed | Paid orders ready to ship |
On Hold | holded | Order requires manual review | Suspicious or flagged orders |
Payment Review | payment_review | Payment under review | Fraud detection triggered |
Recommended Settings:
# For paid orders imported from PlentyONE
New Order Status: Processing
# For orders requiring payment verification
New Order Status: Pending Payment
# For orders needing manual review
New Order Status: Payment Review
Configuration Example:
# Set order status to Processing for imported orders
bin/magento config:set payment/plentyone/order_status processing
# Or: Set to Pending for manual review
bin/magento config:set payment/plentyone/order_status pending
# Clear cache
bin/magento cache:flush
Order Status Workflow:
PlentyONE Order (Paid) → Import to Magento → Set Status: Processing
↓
Invoice Created (if configured)
↓
Ready for Shipment
If you have custom order statuses defined in your Magento installation, they will also appear in this dropdown. Choose a status that reflects the actual state of orders imported from PlentyONE.
Title
Field: title
Path: payment/plentyone/title
Type: Text
Default: "PlentyONE [internal payment]"
Scope: Store View
Can Restore: Yes
Defines how the payment method is displayed in the Magento admin panel and order details.
Description: This title appears in:
- Order detail pages (Admin panel)
- Order grid (payment method column)
- Invoice pages
- Customer order history (if visible)
Configuration Steps:
- Navigate to Stores → Configuration → Sales → Payment Methods
- Scroll to PlentyONE [internal payment] section
- Enter desired title in Title field
- Click Save Config
Recommended Titles:
# Default (clear and descriptive)
PlentyONE [internal payment]
# Shorter version
PlentyONE Payment
# Descriptive version
PlentyONE ERP Payment
# Multi-language support (store view specific)
# English store view:
PlentyONE Payment
# German store view:
PlentyONE Zahlung
# French store view:
Paiement PlentyONE
Multi-Store Configuration:
If you have multiple store views, you can set different titles per store view:
# Default (all store views)
bin/magento config:set --scope=default payment/plentyone/title "PlentyONE Payment"
# English store view (store ID 1)
bin/magento config:set --scope=stores --scope-code=default payment/plentyone/title "PlentyONE Payment"
# German store view (store ID 2)
bin/magento config:set --scope=stores --scope-code=german payment/plentyone/title "PlentyONE Zahlung"
# Clear cache
bin/magento cache:flush
The Title field has Store View scope, allowing you to translate the payment method name for different languages/locales.
Configuration via CLI
View Current Settings
# View all PlentyONE payment configuration
bin/magento config:show payment/plentyone
# View specific settings
bin/magento config:show payment/plentyone/active
bin/magento config:show payment/plentyone/order_status
bin/magento config:show payment/plentyone/title
Update Settings
# Enable PlentyONE payment method
bin/magento config:set payment/plentyone/active 1
# Set order status to Processing
bin/magento config:set payment/plentyone/order_status processing
# Set custom title
bin/magento config:set payment/plentyone/title "PlentyONE Payment Gateway"
# Clear cache
bin/magento cache:flush
Website-Specific Configuration
# Enable for specific website (website code: base)
bin/magento config:set --scope=websites --scope-code=base payment/plentyone/active 1
# Set order status for specific website
bin/magento config:set --scope=websites --scope-code=base payment/plentyone/order_status processing
# Clear cache
bin/magento cache:flush
Common Use Cases
Use Case 1: Importing Paid Orders from PlentyONE
Scenario: Orders are placed in a marketplace (Amazon, eBay) connected to PlentyONE. You want to import these orders to Magento for fulfillment.
Configuration:
# Enable payment method
bin/magento config:set payment/plentyone/active 1
# Set status to Processing (orders are already paid)
bin/magento config:set payment/plentyone/order_status processing
# Set descriptive title
bin/magento config:set payment/plentyone/title "Marketplace Payment (via PlentyONE)"
bin/magento cache:flush
Result: Imported orders appear in Magento with "Processing" status, ready for shipment.
Use Case 2: Synchronizing Historical Orders
Scenario: Migrating from another system to Magento, importing historical orders from PlentyONE.
Configuration:
# Enable payment method
bin/magento config:set payment/plentyone/active 1
# Set status to Complete (historical orders already fulfilled)
bin/magento config:set payment/plentyone/order_status complete
# Set title for historical orders
bin/magento config:set payment/plentyone/title "Historical Order (PlentyONE)"
bin/magento cache:flush
Result: Historical orders imported with "Complete" status for record-keeping.
Use Case 3: Manual Review Required
Scenario: Orders imported from PlentyONE require manual verification before fulfillment.
Configuration:
# Enable payment method
bin/magento config:set payment/plentyone/active 1
# Set status to Payment Review
bin/magento config:set payment/plentyone/order_status payment_review
# Set title indicating review needed
bin/magento config:set payment/plentyone/title "PlentyONE Payment (Pending Review)"
bin/magento cache:flush
Result: Imported orders require manual review before processing.
Order Import Workflow
Understanding how the payment method fits into the order import process:
Step-by-Step Import Process
-
PlentyONE Order Creation
- Order placed in marketplace or PlentyONE
- Payment processed by marketplace/PlentyONE
- Order data stored in PlentyONE
-
Mage2Plenty Order Import Profile Runs
- Profile fetches orders from PlentyONE API
- Order data is mapped to Magento format
- Payment method set to
plentyone
-
Order Creation in Magento
- Order created with PlentyONE payment method
- Order status set based on configuration
- Customer data synchronized
- Order items added
-
Post-Import Processing
- Invoice created (if status = Processing)
- Email notifications sent (if enabled)
- Order appears in admin grid
- Ready for fulfillment workflow
Payment Information Display
In Magento order details, the payment information section will show:
Payment Information
Payment Method: PlentyONE Payment
Transaction ID: [PlentyONE Order ID]
Payment Status: Paid
Multi-Website Configuration
For Magento installations with multiple websites:
Scenario: Different Payment Handling per Website
Website 1 (B2C): Import marketplace orders Website 2 (B2B): No order import, export only
Configuration:
# Website 1 (B2C) - Enable payment method
bin/magento config:set --scope=websites --scope-code=b2c payment/plentyone/active 1
bin/magento config:set --scope=websites --scope-code=b2c payment/plentyone/order_status processing
bin/magento config:set --scope=websites --scope-code=b2c payment/plentyone/title "Marketplace Payment"
# Website 2 (B2B) - Disable payment method
bin/magento config:set --scope=websites --scope-code=b2b payment/plentyone/active 0
bin/magento cache:flush
Best Practices
Security
-
Access Control: Restrict access to payment configuration
- Only admin users should modify payment settings
- Use Magento ACL to control permissions
-
Audit Trail: Monitor payment configuration changes
- Review configuration changes in System → Actions Logs → Actions Log Report (Adobe Commerce only)
- Track changes via version control for
app/etc/config.php
- Use
git log
to review configuration file changes
Order Status Management
-
Consistent Status Flow: Ensure status transitions make sense
Good Flow:
Pending Payment → Processing → Complete
Bad Flow:
Complete → Pending (confusing) -
Status-Based Automation: Configure actions based on status
- Processing → Auto-create invoice
- Processing → Auto-create shipment
- Complete → Archive order
-
Customer Communication: Configure email templates for each status
- Pending Payment → "Payment Pending" email
- Processing → "Order Confirmed" email
- Complete → "Order Delivered" email
Testing
-
Test Import: Before enabling in production
# Enable in staging
bin/magento config:set payment/plentyone/active 1
bin/magento config:set payment/plentyone/order_status pending_payment
# Test order import
bin/magento softcommerce:plenty:order:import --profile-id=1 --limit=1
# Verify order in admin
# Check status, payment method, order details -
Validate Order Data: Ensure imported orders are complete
- Customer information correct
- Product details accurate
- Prices and taxes correct
- Shipping information complete
Troubleshooting
Payment Method Not Available
Problem: Cannot see PlentyONE payment method in payment methods list
Solutions:
- Clear cache:
bin/magento cache:flush
- Verify module enabled:
bin/magento module:status SoftCommerce_PlentyOrder
- Run setup upgrade:
bin/magento setup:upgrade
- Check database:
SELECT * FROM core_config_data WHERE path LIKE 'payment/plentyone%'
Order Import Fails - Invalid Payment Method
Problem: Order import fails with error "Payment method not found"
Solutions:
- Enable payment method:
bin/magento config:set payment/plentyone/active 1
- Verify correct website scope:
bin/magento config:show --scope=websites --scope-code=base payment/plentyone/active
- Clear cache:
bin/magento cache:flush
- Check error logs:
tail -f var/log/softcommerce/plenty/order.log
Wrong Order Status After Import
Problem: Imported orders have incorrect status
Solutions:
- Verify configuration:
bin/magento config:show payment/plentyone/order_status
- Check order status exists: Stores → Settings → Order Status
- Update configuration:
bin/magento config:set payment/plentyone/order_status processing
- Test with single order:
bin/magento softcommerce:plenty:order:import --limit=1
Payment Title Not Displaying
Problem: Payment method title not showing in orders
Solutions:
- Set title:
bin/magento config:set payment/plentyone/title "PlentyONE Payment"
- Check store view scope:
bin/magento config:show --scope=stores payment/plentyone/title
- Clear cache:
bin/magento cache:flush
- Refresh order page in admin
Advanced Configuration
Custom Order Status
Create a custom order status specifically for PlentyONE imported orders:
-
Create Custom Status:
- Navigate to Stores → Settings → Order Status
- Click Create New Status
- Status Code:
plentyone_imported
- Status Label:
PlentyONE Imported
-
Assign to State:
- Assign to State:
Processing
- Use Order Status as Default: No
- Assign to State:
-
Configure Payment Method:
bin/magento config:set payment/plentyone/order_status plentyone_imported
bin/magento cache:flush
Programmatic Configuration
For deployment automation, include payment configuration in app/etc/config.php
:
return [
// ... other config ...
'default' => [
'payment' => [
'plentyone' => [
'active' => '1',
'order_status' => 'processing',
'title' => 'PlentyONE Payment'
]
]
]
];
Integration with Other Modules
Payment Method Mapping
When exporting orders from Magento to PlentyONE, the PlentyONE payment method needs to be mapped to a PlentyONE payment method ID.
Configure in Profile → Order Export → Payment Method Mapping:
Magento Payment Method | PlentyONE Payment Method ID |
---|---|
plentyone | 1 (Cash) or appropriate ID |
Invoice Generation
Configure automatic invoice creation for PlentyONE payment:
- Navigate to Stores → Configuration → Sales → Sales
- Expand Invoice and Packing Slip Design
- For payment method
plentyone
, enable auto-invoice
Or via CLI:
# Configure invoice creation
bin/magento config:set sales/orders/plentyone_auto_invoice 1
bin/magento cache:flush
Next Steps
Now that you've configured the payment method:
- 🛒 Order Import Profile - Set up order import from PlentyONE
- 📊 Order Export Profile - Configure order export to PlentyONE
- 🔄 Payment Mapping - Map Magento payment methods to PlentyONE
- ✅ Test Order Sync - Verify order import/export