Skip to main content

Customer Export Profile

The Customer Export Profile synchronizes customer data from Magento to PlentyONE, creating contacts and updating customer information in your ERP system.

Overview

Profile Type ID: plenty_customer_export Direction: Magento → PlentyONE Purpose: Export customer accounts, addresses, and contact details to PlentyONE

What Gets Exported

  • Customer accounts as PlentyONE contacts
  • Customer addresses (billing and shipping)
  • Customer groups/classifications
  • Customer metadata and custom attributes

Key Use Cases

  • Order Processing: Export Magento customers to PlentyONE for order fulfillment
  • CRM Integration: Sync customer data for marketing and support
  • Automated Export: Trigger export when customer creates account
  • Guest Checkout: Create PlentyONE contacts for guest orders

Configuration Highlights

The Customer Export profile shares most configuration with Customer Import, with these key differences:

Customer Configuration Differences

Export Direction

All mappings work in reverse (Magento → PlentyONE):

  • Group Mapping: Magento group → PlentyONE class
  • Gender Mapping: Magento prefix → PlentyONE gender
  • Address Mapping: Magento fields → PlentyONE fields

Default Group (PlentyONE)

Field: default_group Type: Select Scope: Global

Select the default PlentyONE customer class for new contacts.

Source: Uses PlentyONE customer classes (not Magento groups)

Example:

Default Group: Standard Customer (PlentyONE)

Behavior: When exporting a new customer without
group mapping, assigns "Standard Customer" class
in PlentyONE

Store Filter (Export Direction)

Field: is_active_store_filter Type: Checkbox Default: No

Restricts customer export by store view.

Tooltip: "Restricts customer export by mapped stores. Customers created in stores that are not included in the mapping will be excluded from export."

Use Case:

Scenario: Multi-store with B2B and B2C separation

Store Mapping:
- B2C Store → PlentyONE Client Retail
- B2B Store → PlentyONE Client Wholesale

Enable Store Filter: Yes

Result: B2C customers only export to Retail client
B2B customers only export to Wholesale client

Auto-Export Configuration

Customer Export supports automatic export when customers are created or register.

Manual Queue Management

Unlike Category Export's event observers, Customer Export uses queue-based processing:

Workflow:

  1. Customer registers/is created in Magento
  2. Customer is added to export queue (if configured)
  3. Scheduled profile execution processes queue
  4. Customer exported to PlentyONE

Queue Commands:

# View export queue
bin/magento softcommerce:plenty:customer:queue --list

# Add customer to queue
bin/magento softcommerce:plenty:customer:queue --add --entity-id=123

# Clear queue
bin/magento softcommerce:plenty:customer:queue --clear

# Process queue manually
bin/magento softcommerce:plenty:customer:export --profile-id=4 --queue

Group Mapping Strategy

B2B vs B2C Separation

Magento Groups:

  • General (B2C retail)
  • Wholesale (B2B)
  • VIP (Premium)

PlentyONE Classes:

  • Standard Customer
  • Business Customer
  • Premium Customer

Mapping Example:

Magento GroupPlentyONE ClassPricing Tier
GeneralStandard CustomerRetail
WholesaleBusiness CustomerWholesale
VIPPremium CustomerVIP

Multi-Store Group Strategy

Scenario: Regional pricing differences

StoreMagento GroupPlentyONE Class
US StoreGeneralUS Retail
EU StoreGeneralEU Retail
UK StoreGeneralUK Retail

Configuration:

  • Use store filter: Yes
  • Different group mappings per store view
  • Separate referrers per region

Address Field Mapping Best Practices

Required Fields

Always map these essential fields:

Magento FieldPlentyONE FieldRequired
firstnamefirstNameYes
lastnamelastNameYes
streetstreetYes
citytownYes
postcodepostalCodeYes
country_idcountryYes
Magento FieldPlentyONE FieldUse Case
companycompanyNameB2B customers
telephonephoneContact info
regionstateUS/CA addresses
vat_idvatNumberEU B2B

Custom Fields

Example: Export loyalty program ID

  1. Create Magento Customer Attribute: loyalty_id
  2. Create PlentyONE Custom Field: Custom_LoyaltyID
  3. Add Address Field Mapping:
    • Magento: loyalty_id
    • PlentyONE: Custom_LoyaltyID

CLI Commands

# Export all customers
bin/magento softcommerce:plenty:customer:export --profile-id=4

# Export specific customers
bin/magento softcommerce:plenty:customer:export --profile-id=4 --entity-ids=100,101

# Export new customers only
bin/magento softcommerce:plenty:customer:export --profile-id=4 --new-only

# Export with store filter
bin/magento softcommerce:plenty:customer:export --profile-id=4 --store-id=1

# Process export queue
bin/magento softcommerce:plenty:customer:export --profile-id=4 --queue

Troubleshooting

Customer Not Exported

Solutions:

  1. Check store filter settings
  2. Verify customer belongs to mapped store
  3. Review export queue for stuck items
  4. Check PlentyONE API credentials

Wrong Customer Class in PlentyONE

Solutions:

  1. Verify group mapping (Magento → PlentyONE direction)
  2. Check default group assignment
  3. Review customer group in Magento
  4. Ensure mapping covers all groups

Missing Address Data

Solutions:

  1. Verify address field mappings are complete
  2. Check customer has addresses in Magento
  3. Ensure address is marked as default
  4. Review address validation requirements

Best Practices

Initial Export

  1. Test with Small Set: Export 5-10 customers first
  2. Verify Data Quality: Check exported contacts in PlentyONE
  3. Validate Mappings: Confirm groups and addresses are correct
  4. Full Export: Process all customers after validation

Ongoing Synchronization

  1. Queue-Based: Use queue for automatic exports
  2. Schedule Frequency: Every 15-30 minutes for near real-time
  3. Monitor Queue: Check for stuck or failed exports
  4. Error Handling: Enable history to track issues

Multi-Store Exports

  1. Separate Referrers: Use different referrer per store/region
  2. Store Filter: Enable for regional customer separation
  3. Group Strategy: Plan group structure for multi-store needs
  4. Test Per Store: Validate exports for each store view