diff --git a/content/developer/api/iap/button.png b/content/developer/howtos/provide_iap_service/button.png
similarity index 100%
rename from content/developer/api/iap/button.png
rename to content/developer/howtos/provide_iap_service/button.png
diff --git a/content/developer/api/iap/creating_service.png b/content/developer/howtos/provide_iap_service/creating_service.png
similarity index 100%
rename from content/developer/api/iap/creating_service.png
rename to content/developer/howtos/provide_iap_service/creating_service.png
diff --git a/content/developer/api/iap/credits.jpg b/content/developer/howtos/provide_iap_service/credits.jpg
similarity index 100%
rename from content/developer/api/iap/credits.jpg
rename to content/developer/howtos/provide_iap_service/credits.jpg
diff --git a/content/developer/api/iap/flow.png b/content/developer/howtos/provide_iap_service/flow.png
similarity index 100%
rename from content/developer/api/iap/flow.png
rename to content/developer/howtos/provide_iap_service/flow.png
diff --git a/content/developer/api/iap/menu.png b/content/developer/howtos/provide_iap_service/menu.png
similarity index 100%
rename from content/developer/api/iap/menu.png
rename to content/developer/howtos/provide_iap_service/menu.png
diff --git a/content/developer/api/iap/no-credit.png b/content/developer/howtos/provide_iap_service/no-credit.png
similarity index 100%
rename from content/developer/api/iap/no-credit.png
rename to content/developer/howtos/provide_iap_service/no-credit.png
diff --git a/content/developer/api/iap/normal.png b/content/developer/howtos/provide_iap_service/normal.png
similarity index 100%
rename from content/developer/api/iap/normal.png
rename to content/developer/howtos/provide_iap_service/normal.png
diff --git a/content/developer/api/iap/package.png b/content/developer/howtos/provide_iap_service/package.png
similarity index 100%
rename from content/developer/api/iap/package.png
rename to content/developer/howtos/provide_iap_service/package.png
diff --git a/content/developer/api/iap/players.png b/content/developer/howtos/provide_iap_service/players.png
similarity index 100%
rename from content/developer/api/iap/players.png
rename to content/developer/howtos/provide_iap_service/players.png
diff --git a/content/developer/api/iap/service_created.png b/content/developer/howtos/provide_iap_service/service_created.png
similarity index 100%
rename from content/developer/api/iap/service_created.png
rename to content/developer/howtos/provide_iap_service/service_created.png
diff --git a/content/developer/api/iap/service_list.png b/content/developer/howtos/provide_iap_service/service_list.png
similarity index 100%
rename from content/developer/api/iap/service_list.png
rename to content/developer/howtos/provide_iap_service/service_list.png
diff --git a/content/developer/api/iap.rst b/content/developer/howtos/provide_iap_services.rst
similarity index 98%
rename from content/developer/api/iap.rst
rename to content/developer/howtos/provide_iap_services.rst
index 97d5ecb1d..36bbf47ad 100644
--- a/content/developer/api/iap.rst
+++ b/content/developer/howtos/provide_iap_services.rst
@@ -1,9 +1,6 @@
-
-.. _api/iap:
-
-===============
-In-App Purchase
-===============
+====================
+Provide IAP services
+====================
In-App Purchase (IAP) allows providers of ongoing services through Odoo apps to
be compensated for ongoing service use rather than — and possibly instead of
@@ -25,7 +22,7 @@ App Developer:
Overview
========
-.. figure:: iap/players.png
+.. figure:: provide_iap_service/players.png
:align: center
The Players
@@ -40,7 +37,7 @@ Overview
bridge/translator between an Odoo system and the actual service.
-.. figure:: iap/credits.jpg
+.. figure:: provide_iap_service/credits.jpg
:align: center
The Credits
@@ -67,7 +64,7 @@ Overview
.. note:: In the following explanations we will ignore the External Service,
they are just a detail of the service you provide.
-.. figure:: iap/normal.png
+.. figure:: provide_iap_service/normal.png
:align: center
'Normal' service flow
@@ -87,7 +84,7 @@ Overview
been rendered, possibly (depending on the service) displaying or
storing its results in the client's system.
-.. figure:: iap/no-credit.png
+.. figure:: provide_iap_service/no-credit.png
:align: center
Insufficient credits
@@ -174,16 +171,16 @@ The service has *seven* important fields:
how you **use it, its relevance** to make your service work and inform the
client on how they can **access, update or delete their personal information**.
-.. image:: iap/menu.png
+.. image:: provide_iap_service/menu.png
:align: center
-.. image:: iap/service_list.png
+.. image:: provide_iap_service/service_list.png
:align: center
-.. image:: iap/creating_service.png
+.. image:: provide_iap_service/creating_service.png
:align: center
-.. image:: iap/service_created.png
+.. image:: provide_iap_service/service_created.png
:align: center
You can then create *credit packs* which clients can purchase in order to
@@ -214,7 +211,7 @@ A credit pack is essentially a product with five characteristics:
pack to another.
-.. image:: iap/package.png
+.. image:: provide_iap_service/package.png
:align: center
.. _iap-odoo-app:
@@ -283,7 +280,7 @@ local value via your application and additional parts via a remote service.
-.. image:: iap/button.png
+.. image:: provide_iap_service/button.png
:align: center
We can now implement the action method/callback. This will *call our own
@@ -516,7 +513,7 @@ parameters we can use to make things clearer to the end-user.
JSON-RPC2_ Transaction API
==========================
-.. image:: iap/flow.png
+.. image:: provide_iap_service/flow.png
:align: center
* The IAP transaction API does not require using Odoo when implementing your
diff --git a/redirects/14.0.txt b/redirects/14.0.txt
index 4f5e0a8c8..162143f7f 100644
--- a/redirects/14.0.txt
+++ b/redirects/14.0.txt
@@ -38,6 +38,7 @@ applications/sales/crm/acquire_leads/generate_from_website.rst applications/sale
# developer/howtos
+developer/api/iap.rst developer/howtos/provide_iap_services.rst # reorganize the developer doc
developer/howtos/backend.rst developer/tutorials/backend.rst # reorganize the developer doc
developer/howtos/rdtraining.rst developer/tutorials/getting_started.rst # reorganize the developer doc
developer/howtos/rdtraining/01_architecture.rst developer/tutorials/getting_started/01_architecture.rst # reorganize the developer doc