From 48a03bdd7176ee528915f089ab33848944cfc13e Mon Sep 17 00:00:00 2001 From: Ken Woychesko Date: Sun, 30 Apr 2023 10:34:46 -0400 Subject: [PATCH] [FIX] account_statement_import_online_paypal: Update CONFIGURE, USAGE, and ROADMAP to current Odoo & PayPal menus/procedures/links. (1) Odoo's menu has changed over the recent versions, and these changes help new users to better understand how to create a PayPal-related Bank Account/Journal and configuration for syncing with PayPal's servers. (2) The order of CONFIGURE was changed to the logical flow of obtaining PayPal credentials first and then configuring Odoo to match. (3) PayPal's URL for transaction definitions has changed and was updated in ROADMAP. --- .../README.rst | 69 ++++++++++-------- .../__manifest__.py | 2 +- .../readme/CONFIGURE.rst | 59 +++++++++------- .../readme/ROADMAP.rst | 2 +- .../readme/USAGE.rst | 8 +-- .../static/description/index.html | 70 +++++++++++-------- 6 files changed, 118 insertions(+), 92 deletions(-) diff --git a/account_statement_import_online_paypal/README.rst b/account_statement_import_online_paypal/README.rst index 2a01db0c..2ab7b118 100644 --- a/account_statement_import_online_paypal/README.rst +++ b/account_statement_import_online_paypal/README.rst @@ -36,45 +36,54 @@ This module provides online bank statements from Configuration ============= -To configure online bank statements provider: +You will need a *Client ID* and *Secret* from PayPal to communicate with the PayPal API. To obtain your PayPal API +*Client ID* and *Secret*: -#. Go to *Invoicing > Configuration > Bank Accounts* -#. Open bank account to configure and edit it -#. Set *Bank Feeds* to *Online* -#. Select *PayPal.com* as online bank statements provider in - *Online Bank Statements (OCA)* section -#. Save the bank account -#. Click on provider and configure provider-specific settings. +#. Open `PayPal Developer `_. +#. Login with your *PayPal for Business* account (upgrade your personal account to + a Business Account, if required). +#. Go to *Apps & Credentials* and switch to *Live*. +#. Under *REST API apps*, click *Create App* to begin creating a new application. +#. Enter a descriptive name for your app (e.g. *Odoo-Statements*) and click *Create App*. +#. Copy the *Client ID* and *Secret* to use during provider configuration (instructions below). +#. Under *Features*, uncheck all optional features except *Transaction Search*. +#. Click *Save Changes*. -or, alternatively: +To configure PayPal as an online bank statement provider, you will need to create a Bank Account & Journal that +corresponds to your *PayPal for Business* account, and then configure the *PayPal.com* provider with the *Client ID* +and *Secret* obtained above: -#. Go to *Invoicing > Overview* -#. Open settings of the corresponding journal account -#. Switch to *Bank Account* tab -#. Set *Bank Feeds* to *Online* -#. Select *PayPal.com* as online bank statements provider in - *Online Bank Statements (OCA)* section -#. Save the bank account -#. Click on provider and configure provider-specific settings. +#. Go to *Invoicing > Configuration > Banks > Add a Bank Account*. +#. In the *Account Number* field, enter some descriptive text for the account, such as the email address or *PayPal + Merchant ID* of your *PayPal for Business* account. NOTE: This *Account Number* is not used in the authentication + with PayPal's API, and is only used to distinguish this PayPal Bank Account/Journal from others you may have + configured. +#. Fill in the other fields for the Bank Account if desired, and then click *Create*. +#. Go to *Invoicing > Configuration > Accounting > Journals*. +#. Open and *Edit* the Journal corresponding to the PayPal bank account (this Journal was created automatically + when you created the Bank Account above. +#. Set *Bank Feeds* to *Online (OCA)*. +#. Select *PayPal.com* as the provider in the *Online Bank Statements (OCA)* section. +#. *Save* the Journal. +#. To configure provider-specific settings, click on the provider to open it and click *Edit*. +#. Fill in your desired *Configuration* and *Scheduled Pull* settings. +#. Leave the *API base* field empty, and fill in the *Client ID* and *Secret* from your PayPal + Developer account. +#. Click *Save*. -To obtain *Client ID* and *Secret*: - -#. Open `PayPal Developer `_ -#. Go to *My Apps & Credentials* and switch to *Live* -#. Under *REST API apps*, click *Create App* to create new application (e.g. *Odoo*) -#. Copy *Client ID* and *Secret* to use during provider configuration -#. Under *Live App Settings*, uncheck all features except *Transaction Search* -#. Click Save +NOTE: For development and testing purposes, you can create Sandbox credentials associated with your *PayPal +for Business* account. When configuring the provider-specific settings, enter the following in the *API base* field: +https://api.sandbox.paypal.com Usage ===== To pull historical bank statements: -#. Go to *Invoicing > Configuration > Bank Accounts* -#. Select specific bank accounts -#. Launch *Actions > Online Bank Statements Pull Wizard* -#. Configure date interval and click *Pull* +#. Go to *Invoicing > Configuration > Accounting > Journals*. +#. Open the Journal corresponding to the PayPal bank account. +#. Click the *Pull Online Bank Statement* button. +#. Configure a date interval and click *Pull*. Known issues / Roadmap ====================== @@ -83,7 +92,7 @@ Known issues / Roadmap can be imported manually, see ``account_bank_statement_import_paypal``. See `PayPal Help Center article `_ for details. -* `PayPal Transaction Info `_ +* `PayPal Transaction Info `_ defines extra fields like ``tip_amount``, ``shipping_amount``, etc. that could be useful to be decomposed from a single transaction. * There's a known issue with PayPal API that on every Monday for couple of diff --git a/account_statement_import_online_paypal/__manifest__.py b/account_statement_import_online_paypal/__manifest__.py index df2e9a19..af7870d3 100644 --- a/account_statement_import_online_paypal/__manifest__.py +++ b/account_statement_import_online_paypal/__manifest__.py @@ -4,7 +4,7 @@ { "name": "Online Bank Statements: PayPal.com", - "version": "15.0.1.0.0", + "version": "15.0.1.1.0", "author": "CorporateHub, Odoo Community Association (OCA)", "maintainers": ["alexey-pelykh"], "website": "https://github.com/OCA/bank-statement-import", diff --git a/account_statement_import_online_paypal/readme/CONFIGURE.rst b/account_statement_import_online_paypal/readme/CONFIGURE.rst index 67b44183..0eb6ef95 100644 --- a/account_statement_import_online_paypal/readme/CONFIGURE.rst +++ b/account_statement_import_online_paypal/readme/CONFIGURE.rst @@ -1,29 +1,38 @@ -To configure online bank statements provider: +You will need a *Client ID* and *Secret* from PayPal to communicate with the PayPal API. To obtain your PayPal API +*Client ID* and *Secret*: -#. Go to *Invoicing > Configuration > Bank Accounts* -#. Open bank account to configure and edit it -#. Set *Bank Feeds* to *Online* -#. Select *PayPal.com* as online bank statements provider in - *Online Bank Statements (OCA)* section -#. Save the bank account -#. Click on provider and configure provider-specific settings. +#. Open `PayPal Developer `_. +#. Login with your *PayPal for Business* account (upgrade your personal account to + a Business Account, if required). +#. Go to *Apps & Credentials* and switch to *Live*. +#. Under *REST API apps*, click *Create App* to begin creating a new application. +#. Enter a descriptive name for your app (e.g. *Odoo-Statements*) and click *Create App*. +#. Copy the *Client ID* and *Secret* to use during provider configuration (instructions below). +#. Under *Features*, uncheck all optional features except *Transaction Search*. +#. Click *Save Changes*. -or, alternatively: +To configure PayPal as an online bank statement provider, you will need to create a Bank Account & Journal that +corresponds to your *PayPal for Business* account, and then configure the *PayPal.com* provider with the *Client ID* +and *Secret* obtained above: -#. Go to *Invoicing > Overview* -#. Open settings of the corresponding journal account -#. Switch to *Bank Account* tab -#. Set *Bank Feeds* to *Online* -#. Select *PayPal.com* as online bank statements provider in - *Online Bank Statements (OCA)* section -#. Save the bank account -#. Click on provider and configure provider-specific settings. +#. Go to *Invoicing > Configuration > Banks > Add a Bank Account*. +#. In the *Account Number* field, enter some descriptive text for the account, such as the email address or *PayPal + Merchant ID* of your *PayPal for Business* account. NOTE: This *Account Number* is not used in the authentication + with PayPal's API, and is only used to distinguish this PayPal Bank Account/Journal from others you may have + configured. +#. Fill in the other fields for the Bank Account if desired, and then click *Create*. +#. Go to *Invoicing > Configuration > Accounting > Journals*. +#. Open and *Edit* the Journal corresponding to the PayPal bank account (this Journal was created automatically + when you created the Bank Account above. +#. Set *Bank Feeds* to *Online (OCA)*. +#. Select *PayPal.com* as the provider in the *Online Bank Statements (OCA)* section. +#. *Save* the Journal. +#. To configure provider-specific settings, click on the provider to open it and click *Edit*. +#. Fill in your desired *Configuration* and *Scheduled Pull* settings. +#. Leave the *API base* field empty, and fill in the *Client ID* and *Secret* from your PayPal + Developer account. +#. Click *Save*. -To obtain *Client ID* and *Secret*: - -#. Open `PayPal Developer `_ -#. Go to *My Apps & Credentials* and switch to *Live* -#. Under *REST API apps*, click *Create App* to create new application (e.g. *Odoo*) -#. Copy *Client ID* and *Secret* to use during provider configuration -#. Under *Live App Settings*, uncheck all features except *Transaction Search* -#. Click Save +NOTE: For development and testing purposes, you can create Sandbox credentials associated with your *PayPal +for Business* account. When configuring the provider-specific settings, enter the following in the *API base* field: +https://api.sandbox.paypal.com diff --git a/account_statement_import_online_paypal/readme/ROADMAP.rst b/account_statement_import_online_paypal/readme/ROADMAP.rst index f6968426..1ae1c3f0 100644 --- a/account_statement_import_online_paypal/readme/ROADMAP.rst +++ b/account_statement_import_online_paypal/readme/ROADMAP.rst @@ -2,7 +2,7 @@ can be imported manually, see ``account_bank_statement_import_paypal``. See `PayPal Help Center article `_ for details. -* `PayPal Transaction Info `_ +* `PayPal Transaction Info `_ defines extra fields like ``tip_amount``, ``shipping_amount``, etc. that could be useful to be decomposed from a single transaction. * There's a known issue with PayPal API that on every Monday for couple of diff --git a/account_statement_import_online_paypal/readme/USAGE.rst b/account_statement_import_online_paypal/readme/USAGE.rst index 03845f13..d88d0b05 100644 --- a/account_statement_import_online_paypal/readme/USAGE.rst +++ b/account_statement_import_online_paypal/readme/USAGE.rst @@ -1,6 +1,6 @@ To pull historical bank statements: -#. Go to *Invoicing > Configuration > Bank Accounts* -#. Select specific bank accounts -#. Launch *Actions > Online Bank Statements Pull Wizard* -#. Configure date interval and click *Pull* +#. Go to *Invoicing > Configuration > Accounting > Journals*. +#. Open the Journal corresponding to the PayPal bank account. +#. Click the *Pull Online Bank Statement* button. +#. Configure a date interval and click *Pull*. diff --git a/account_statement_import_online_paypal/static/description/index.html b/account_statement_import_online_paypal/static/description/index.html index 7f215bbe..af8636c0 100644 --- a/account_statement_import_online_paypal/static/description/index.html +++ b/account_statement_import_online_paypal/static/description/index.html @@ -387,45 +387,53 @@ ul.auto-toc {

Configuration

-

To configure online bank statements provider:

+

You will need a Client ID and Secret from PayPal to communicate with the PayPal API. To obtain your PayPal API +Client ID and Secret:

    -
  1. Go to Invoicing > Configuration > Bank Accounts
  2. -
  3. Open bank account to configure and edit it
  4. -
  5. Set Bank Feeds to Online
  6. -
  7. Select PayPal.com as online bank statements provider in -Online Bank Statements (OCA) section
  8. -
  9. Save the bank account
  10. -
  11. Click on provider and configure provider-specific settings.
  12. +
  13. Open PayPal Developer.
  14. +
  15. Login with your PayPal for Business account (upgrade your personal account to +a Business Account, if required).
  16. +
  17. Go to Apps & Credentials and switch to Live.
  18. +
  19. Under REST API apps, click Create App to begin creating a new application.
  20. +
  21. Enter a descriptive name for your app (e.g. Odoo-Statements) and click Create App.
  22. +
  23. Copy the Client ID and Secret to use during provider configuration (instructions below).
  24. +
  25. Under Features, uncheck all optional features except Transaction Search.
  26. +
  27. Click Save Changes.
-

or, alternatively:

+

To configure PayPal as an online bank statement provider, you will need to create a Bank Account & Journal that +corresponds to your PayPal for Business account, and then configure the PayPal.com provider with the Client ID +and Secret obtained above:

    -
  1. Go to Invoicing > Overview
  2. -
  3. Open settings of the corresponding journal account
  4. -
  5. Switch to Bank Account tab
  6. -
  7. Set Bank Feeds to Online
  8. -
  9. Select PayPal.com as online bank statements provider in -Online Bank Statements (OCA) section
  10. -
  11. Save the bank account
  12. -
  13. Click on provider and configure provider-specific settings.
  14. -
-

To obtain Client ID and Secret:

-
    -
  1. Open PayPal Developer
  2. -
  3. Go to My Apps & Credentials and switch to Live
  4. -
  5. Under REST API apps, click Create App to create new application (e.g. Odoo)
  6. -
  7. Copy Client ID and Secret to use during provider configuration
  8. -
  9. Under Live App Settings, uncheck all features except Transaction Search
  10. -
  11. Click Save
  12. +
  13. Go to Invoicing > Configuration > Banks > Add a Bank Account.
  14. +
  15. In the Account Number field, enter some descriptive text for the account, such as the email address or PayPal +Merchant ID of your PayPal for Business account. NOTE: This Account Number is not used in the authentication +with PayPal’s API, and is only used to distinguish this PayPal Bank Account/Journal from others you may have +configured.
  16. +
  17. Fill in the other fields for the Bank Account if desired, and then click Create.
  18. +
  19. Go to Invoicing > Configuration > Accounting > Journals.
  20. +
  21. Open and Edit the Journal corresponding to the PayPal bank account (this Journal was created automatically +when you created the Bank Account above.
  22. +
  23. Set Bank Feeds to Online (OCA).
  24. +
  25. Select PayPal.com as the provider in the Online Bank Statements (OCA) section.
  26. +
  27. Save the Journal.
  28. +
  29. To configure provider-specific settings, click on the provider to open it and click Edit.
  30. +
  31. Fill in your desired Configuration and Scheduled Pull settings.
  32. +
  33. Leave the API base field empty, and fill in the Client ID and Secret from your PayPal +Developer account.
  34. +
  35. Click Save.
+

NOTE: For development and testing purposes, you can create Sandbox credentials associated with your PayPal +for Business account. When configuring the provider-specific settings, enter the following in the API base field: +https://api.sandbox.paypal.com

Usage

To pull historical bank statements:

    -
  1. Go to Invoicing > Configuration > Bank Accounts
  2. -
  3. Select specific bank accounts
  4. -
  5. Launch Actions > Online Bank Statements Pull Wizard
  6. -
  7. Configure date interval and click Pull
  8. +
  9. Go to Invoicing > Configuration > Accounting > Journals.
  10. +
  11. Open the Journal corresponding to the PayPal bank account.
  12. +
  13. Click the Pull Online Bank Statement button.
  14. +
  15. Configure a date interval and click Pull.
@@ -435,7 +443,7 @@ ul.auto-toc { can be imported manually, see account_bank_statement_import_paypal. See PayPal Help Center article for details. -
  • PayPal Transaction Info +
  • PayPal Transaction Info defines extra fields like tip_amount, shipping_amount, etc. that could be useful to be decomposed from a single transaction.
  • There’s a known issue with PayPal API that on every Monday for couple of