On this page
No Headings
Last updated: June 4, 2026
When your product feed is ready, you need to enable PayPal to ingest it. By the end of this page, you will have configured one of the supported ingestion methods and confirmed that PayPal can access and process your feed. This page tells developers how to set up each supported ingestion method, set an update frequency, and handle multi-storefront configurations.
Before you connect your feed, ensure that:
PayPal supports 3 methods for ingesting your product feed. Choose the option that best fits your infrastructure, then follow the steps for that method.
Regardless of which ingestion method you choose, you must regularly update your feed file and ensure that it remains accessible to PayPal. By default, PayPal downloads feeds once daily.
After each download, PayPal processes the feed and updates your catalog. Updated product availability, pricing, and listings become active in Store Sync after the next successful ingestion cycle completes. If you require a different cadence, contact your PayPal account manager to adjust the schedule.
Keeping your product catalog file up to date ensures:
PayPal supports merchants with multiple storefronts through ingestion from FTP/SFTP, S3, or GCS. To configure multi-storefront ingestion, provide a manifest.csv file with your feed.
Each row in the manifest file represents one merchant storefront and must include the following fields.
| Field | Description |
|---|---|
storeName | The name of the storefront |
storeUrl | The URL of the storefront |
paypalMerchantId | The PayPal merchant ID for the storefront |
country | The country of the storefront |
currency | The currency used by the storefront |
favIcon | URL to the storefront's favicon |
pathToFileInThisBucket | The path to the feed file for this storefront within the bucket |
For each merchant that you list in your manifest, ensure the corresponding feed file that the manifest references in pathToFileInThisBucket is present in the bucket.
The following table describes common ingestion issues and how to fix them.
| Issue | Cause | Fix |
|---|---|---|
| PayPal cannot access the feed file. | The URL is not publicly accessible or returns a non-200 status. | Verify that the URL is reachable from outside your network and returns a 200 status code. If your infrastructure restricts inbound traffic, add the PayPal downloader IP addresses to your allowlist. Contact your account manager for the current IP list. |
| Authentication fails on the public URL. | Credentials are missing or incorrect. | Confirm that the credentials are in user:pass format and are correct. If necessary, provide the corrected credentials to your account manager. |
| The FTP or SFTP connection is refused. | You provided an incorrect port, hostname, or credentials | Verify that all connection details are correct: host URL, port, username, and password. Confirm that the FTP/SFTP server is accessible from external hosts. |
| S3 or GCS access is denied. | PayPal service account does not have read permission. | Confirm that the correct PayPal service account identifier for your region has been granted read access. Contact your account manager to verify the service account. |
| The feed file downloads, but the catalog is not updated. | The feed file path or filename changed. | Ensure the feed file is always written to the same stable path. PayPal uses the configured path on every download cycle. |
| A multi-storefront feed is not ingesting all storefronts. | manifest.csv references a file that is not present in the feed bucket. | Verify that every pathToFileInThisBucket value in your manifest points to an existing file in the feed bucket. |
| Catalog updates are delayed. | The feed is updated less frequently than the ingestion schedule. | Update your feed file at least as often as your configured ingestion cadence. Contact your account manager if you need to adjust the download schedule. |
When ingestion is active and confirmed, your products are available for AI-driven discovery and checkout across PayPal surfaces. The next step is to set up your API to support payments.