Give1Get2 Developer’s Guide English

Give 1 Get 2 – Give One Get Two / MOCHA – Moneybookers Exchange
(v. Beryl)

slide :

pdf :

The French version is the primary source for all translations.

Problems & Vision:

Creating a world without poverty to enable education, reducing disease and reducing mortality.

The paradigm shift

The existing paradigm solves some problems, so it was accepted in the past. However, at this moment, it does not meet the demand of everyone. So there was a challenge and a demand for change.

I studied the market for existing solutions. Not being satisfied (because if I was happy the issue was already resolved), so I decided to create this software. Because, in my opinion, we must phase out barriers to trade. (ref Treaty establishing the European Community, 1957)

The software « Give1Get2 » is designed to build an alternative trading market to existing financial markets. The software specialised in online fund raising. It facilitates free trade in the international economy. This software was created to meet the financing needs of economic agents in Europe and globally in order to finance, among other things, research, education and innovation.

Principles & Qualities:

– Freedom, Citizenship, Responsibility, Equality, Solidarity,
– Open, rule based, predictable, nondiscriminatory


Make a pilot project (functional, no set-up fees, free to use, legal, available (7/7j, 24/24h) and based on a win-win strategy) for an international trading platform from a PSP payment API (Moneybookers) and the FreePay Trading System (FTS) to help raise account balance of participants. (+1 Euro each time)

Directed: The main objective has been achieved.

The software has been tested in real conditions with personal accounts for the 3 possible cases of purchase (less, equal and higher) and in each case, it worked perfectly.

Simple example: when 1 Euro was sent, are received 2 Euros (factor 2: 1 * 2 = 2). The motto « Give 1. Get 2. » was chosen in this way. The starting amount is chosen by the user and may use the system as often as he wants. Example: 1234 Euros sent -> 2468 Euros received.


Target User: This software is being implemented, primarily targeting users of the PSP used speaking French or English and have minimal skills in finance (Moneybookers saves 9 million customers, according to Moneybookers). The goal is not to limit it to this category but can reach the largest number of users.

Target Developer: Those targeted for downloading and installing the software are programmers (preferably web developer) and / or companies wishing to establish a trading platform.

The platform does not take a percentage of the funds it raises. In this sense, an organization that would use it could be a non-profitable organization.

The strategy for doing business

There are 3 possible strategies for 2 people: lose, no deal or win. (representing 9 combinations in total)

Case study: I do not want to lose money (destruction of money) I do not want to lose money for someone wins. (theft of money) I want to change. I do not make money for someone to lose. (theft of money) I do not want to make money alone. (counterfeit) I want to make money and someone else wins, too.

The only solution that seems feasible is: the win-win strategy.

Business Model of an online trading platform with a Win-Win Strategy:

5 parts: Provider, Consumer, Competitor, Partner and Self.

– Payment Services Providers (PSP) have a business model that works by commissions (fixed and variable) on the transactions of their customers (about 2%). To increase their profits, they want to increase their volume of transactions and that customers send the most money.
– Their main partners are the merchants and trading platform that allows them to increase their volume of transactions and amounts over the users who use them. This is done by increasing the number of customers that is proportional to the access of their information systems: the API (Application Programming Interface) that allows anyone to automate payments.
– Their suppliers are one or more banks. The financial messages are handled electronically by the bank. The PSP received confirmation via an API.

– The internet users want to meet their needs. The needs of humanity are recurrent (must be met every day). This need is either a product or service, or money. The products are among the online marketplaces (e-commerce). The easy money is on the trading platform.
– To send money, the user needs a PSP. PSP and asked to have a bank account to fulfill its electronic wallet. Compared to the PSP, the user earns more per transaction if the gain is at its default value (maximum).

Competitor, Partner and Self:
– The business model of the trading platform is either the same as the PSP (for transactions), or an entrance fee or monthly fee or premium sponsorships (link id) or is free. (The money is earned in the same way as users.)
– Providers of trading platforms are the PSP with their API. (the logo is highlighted)
– The users use a service that allows them to move money. The strategy of moving money is defined either by the trading platform or by users themselves. (depends on the internal politics of the trading platform)
– The trading platform is a software layer above the PSP. The design and evolution of the computer product can be partially outsourced to one or more persons caring for an open source trading platform that would reduce costs and development time.


The link to the sponsorship program is here:

There are over 9 million customers who use Moneybookers (Moneybookers depending). The target population is mainly covered that already included. The affiliate can not take commissions on those already listed. (he did not himself sponsored, implied)

For people who are not registered yet, they can apply directly to the url in this case, the partner does not take commission.

Either option, register with the affiliate link (the URL provided in a footnote on the script) in this case, the affiliate will receive commissions on what wins the PSP (up to 30 % and limited to 100 Euros maximum) This is not an additional cost (30-70 division). It is therefore completely transparent to the user.

This incentive, I have put in place to increase the number of my partners on this project. I thought it was legitimate in order to pay the fixed costs (domain name) and variable operating costs (bandwidth, database) of each partner sites.

In addition, each user also has the ability to sponsor others in making requests for payments. I think it’s a fairness.

Interoperability: How do I know if the API electronic purse of a financial institution is compatible with FSX to FreePay?

Financial Institution:

1. It must be able to create an account.

2. Supply: The user can supply his account with different means of payment (check, credit card, bank transfer etc.) and remove.

3. It must have a minimum of funds in its account (balance at least 1 euro). (must also take into account the costs of financial institution)

Optional (but strongly recommended): Approval Financial: The financial institution must be approved by at least one regulator.

Separation of tests and the real: The customer transfers between normal and test client are prohibited.

On the FSX:

1. It must be able to pass an order on the FSX and get on the payment platform. (POST or GET)

2. B2B, B2C, C2B & C2C: Let the payment works in 2 directions (merchant-seller while being accessible client-customer, merchant-customer and customer-merchant), briefly allow P2P. The right of withdrawal depends on the status of persons making the transactions and all, it is defined on the site of PSP.

2a. (optional: but it’s better to do) should be able to enable process automation. (XML)

3. XML: It is necessary that the source site (merchant / FSX) to obtain a trace of the transaction from the payment platform. (xml sent and saved in the database tables in sql)

Existing: What is Moneybookers?

– Moneybookers is a payment service secure online that lets you send and receive money instantly from an e-mail. Opening an account is free, and loading and withdrawal of money is through a credit card (Visa, Mastercard, Diners, American Express, JCB, Delta / Visa Debit and Visa Electron) or by bank transfer.

– Moneybookers is translated into 12 different languages. (English, German, French, Spanish, Italian, Polish, Modern Greek, Romanian, Russian, Turkish, Chinese, Czech)

– Transaction costs are low and the deals can be found in the account history at any time.

– Moneybookers is an issuer of electronic money that allows the merchant (or merchant company) to accept online payments from customers worldwide with no installation fees or monthly fees. (in English: Payment Service Provider)

– Moneybookers Ltd. is a company registered in the Trade Registry of England and Wales under No. 4260907. Headquarters: Welken House, 10-11 Charterhouse Square, London, EC1M 6EH. It is licensed under the laws of the United Kingdom and the European Union and regulated by the Financial Services Authority (FSA), the Financial Services Authority in the United Kingdom.

Why a relationship with a PSP:

The division of roles: The software can be seen as a plugin that interacts with the main software (financial institution) to bring him a new feature. The software is an open system that sends information to the internal (history) and outside (order).
– The financial institution converts capital into e-money, make payments and make the conversion of checks.
– The software can place orders for payment, exchanging payment orders and can make claims.

Dependence: The software is towards simplicity as compared to the previous version (FreePay), he subtracted the processes needed to manage money. This software saves the cost of initial capital (1 million Euros) for the creation of a financial institution issuing electronic money (in: e-money issuer) within the European Union. (ref: Article 4 paragraph 1 of Directive 2000 46 EC).

Independence: Each organization that sets up the software Give1Get2 is autonomous from other organizations. It is dependent only financial institution which helps to make payments (1 to many relationship).

What is « Give1Get2?

The trading system is based on a win-win. The trading platform is a place of confrontation in the supply of financial securities and the demand for money under the idea of laissez-faire economics. There are no goods exchanged on the system. It is a zero sum game in terms of the payment platform but not the trading system (1 euro securitized token issued for the initiation, exchange +1 +1 for each party to each transaction). It’s a virtuous circle. There is no entrance fee. It is a system of person to person (P2P) which further allows users to place trades on a payment platform. This was designed so that there is no risk of inverse proportionality. Since there is no order of sale, it may not be a stock market crash. All system users can get rich, but not at the same time. The user can then become, as it makes a trader. (en: Market Operator)

The gain is also adjustable (0 to 100% Sample: 25 euros become real to 100% -> 50 euros securitized). This allows the user to speculate whether or not to do so. This allows the user to transform its capital and more capital represented by shares. (And then convert its shares capital by the sale, eg 50 euros securitized -> 50 euro real). Finally: EUR 25 real -> 50 euro real. This was to be demonstrated.

Economic Explanation: The software is not intended to create inflation.

From what I know, there are two types of inflation:

– Inflation of prices: Higher prices for goods and services during a period of time. (source: Wikipedia) The income increases more slowly as rising commodity prices. → decrease in purchasing power. What is problematic. But what has Give1Get2 is to increase the income of players in the system, thereby increasing purchasing power. There are no services for sale on the platform and use is free. The « products » are selling financial claims payments. The purchase price is determined by the buyers themselves. If they decide to buy more expensive it is to earn more.

– Inflation of the money: When money suffers a global money creation. Money in circulation increases via interest rates. However, the software Give1Get2 not intended to increase the money supply or decrease it. There is no interest rate not in this system. For only the responsibility of banks.

The software allows the movement of money between players.

Financial Explanation:

Consider this example: Bob wants to send 10 cents to EUR Alice via Moneybookers.

Alice to a balance of EUR 10.82. Bob has a balance of EUR 78.19. Bob sending 10 cents to Alice. The balance of Bob becomes 78.09 EUR. The balance goes to Alice 10.92 EUR. This is without counting the cost variables (0.01) and fixed costs (0.29). Ultimately, the balance of Alice is EUR 10.62 at the end of the operation.

People Alice
Before After Before After
Balance 10.82 EUR 10.62 EUR 78.19 EUR 78.09 EUR

We note that the gain (10 cents) is less than the loss (30 cents). Bob was negatively charged (-0.10 EUR, which is normal). Alice was also negatively charged (total EUR -0.20). Thus a lose-lose situation.

For a win-lose, we can establish a minimum quota of money to be set in automatic settings for all purchases through the API. Test: Bob (balance: EUR 78.09), after mature reflection, wants to send Alice to 3 euros (balance: EUR 8.52) via Moneybookers. Bob now has a balance of EUR 75.09. Alice has a balance of approximately EUR 11.12 (8.52 +3.00 -0.10 -0.29).

People Alice
Time Before After Before After
Balance 8.52 EUR 11.12 EUR 78.09 EUR
75.09 EUR

What we are seeing? Bob was negatively charged (EUR -3.00), while Alice was positively charged (difference +2.60 EUR). This is a win-lose.

The trading process works as follows: The seller exchange goods cons money from the buyer. The seller of the property does that against a sum greater than what it cost him at first with these suppliers.

Similarly, when that person A makes a claim and receives money from a person B. This acts as a compensatory mechanism that allows B in turn place a claim for a price equal to or greater than what it cost him to his predecessor.

Traditionally, it is a relationship with 2 people only. The problem if one of the 2 party may pay or reimburse. (Relationship 1 to 1) With this software alternative market, there are multiple suppliers and multiple plaintiffs. (Relation of many to many) So, this reduces the risk (1 to many relationship in 2 directions) and there are more opportunities for success.

As I demonstrate, we can turn a win-lose strategy into a win-win strategy. That’s what we do now.


The software is based on a policy of transparency and sustainable development. The chosen license is the GNU GPL. It is free software. Thus, it has been made freely available on to be downloaded and installed on servers online.

* Download the complete solution directly (the most current): (requires software 7zip)

* Mirror full download (stable):

* [Moneybookers] Demo in action:

* [Moneybookers] The documentation for free download: (not needed)

Software Installation

1. Buy a domain name ( at a Registrar.

2. Getting accommodation containing enough space (approx 50 MB) and sufficient bandwidth (several Giga) depending on the number of users expected. (and POP3, FTP, and MySQL included)

3. De-compress the files previously downloaded. (as above)

4. Edit the file ‘scripts sql tables & champs.sql’: at line 85, replace the email ( and the merchant id (6173206) with your email and your merchant id obtained from moneybookers at the opening of your account. Replace the email as per your email on line 108.

5. Create a database « mocha » (without the double quotes) in your administration panel (usually the URL

Create a user and give access rights to the database for reading and writing. (if not already done automatically).

6. Click the SQL tab, paste the data file ‘scripts sql tables & champs.sql’ in the textbox and click Run. No error message should appear.

7. Change the default values by those who have been provided by the host in the file ‘params.php’ (without the single quotes) line 31 (host), line 32 (user), line 33 (password), line 34 (database)

8. On the web server, copy and paste the modified source (with default settings) in 7z and zip. Also create a folder /give1get2/. Upload files via FTP (ex FireFTP, a Firefox extension) with the parameters of the host ( ‘params.php’) in the directory previously created.

9. Launch the browser The index page should be displayed without an error message. Sources (7z and zip) should be downloadable from a tab ‘literature’ or ‘download’.

10. Suggest your site on search engines (eg

11. Generate an XML sitemap and put it in the root (eg

12. Optimize your website (eg with Google Webmaster Tools)


The only equipment needed is a PC, operating system, Internet connection and web browser.

Multi-platform: runs on Windows or Linux using Internet Explorer or Firefox.
The training is free. It is the documentation.

Designed in XHTML, CSS, JavaScript, PHP and SQL (CRUD). Requires MySQL, phpMyAdmin, POP3 for mail, FTP and a web browser. Has been tested and works with Apache (> = 1.3.33), MySQL (> = 4.1.9), PHP (> = 4.3.10), PhpMyAdmin (> = 2.6.1).

It’s a multitier architecture (data, business logic and presentation). The architecture is based on the project FreePay: To deepen FreePay documentation is available.

For non French-speaking or non English speaking, there are translation tools like Google translate to read documents in your language.

The diagram of treatment processes the merchant side of the financial institution has been copied in an picture in attachment. « moneybookers_payment_gateway_api_details_interaction_diagram.png »

This script is also based on the API documentation « Moneybookers Payment Gateway – Merchant Integration Manual » (in English) – Version: <6.5>. (43 pages) A new version may be out on time or you read these lines, which could cause problems.

The script takes into account that the fields by way of simplification. Regarding the optional fields: refer to official documentation.

The ISIN code is used again in this software (ISO 6166). The codification created the ZZ is to make a clear distinction and there have no ambiguity with the countries or territories with securities, according to ISO 3166-1.

The status of a transaction (statements):

2 : Processed
1 :
Test // status added, not in the documentation
0 :
-1 :
-2 :
-3 :

The Stages of development (How)

Vision: The payment module FreePay and all of the modules below are replaced by the external API Moneybookers (financial institution approved by the FSA).

Consequences: The support payment module is outsourced. The project name no longer matches. The meta tags do not correspond. Menus no longer match.

1. Copy FreePay. All necessary modules are not removed unless the FSX. (+ Check that it works)

2. API Implementation Moneybookers (+ check that it works)

3. Mashup of two (Mashup)
creation of specific interface
creation of specific process
creation of the specific database (+ check that it works through a simulator engine of payment)

4. Re-factoring: Optimization Mashup (+ check that it works)

5. Publication on Internet


The source code is in French. The source code comments are in French too. Except for the financial standards that are in English. The project is oriented towards internationalization (I18N).

All images are in a specific folder (/images).
All CSS (Stylesheets cascading) are in a specific folder (/style).
All that was attractive to user support is in the /support.
The documentation is in the /support /docs.

Everything concerning the internationalization is in the folder named « services/i18n.

The programming style is procedural: the methods are called in a specific order.

The visible part is composed of the main page of the history and documentation.

The existence of a claim can be verified through history.

Restricting access is done through the sessions for the hidden part (payment process).

The availability of a claim can be verified by applying the filter with the ISIN number as parameter.

As a web project, the human-machine interface is based on an architecture is client/server. And the server to a 3-tier architecture (database, processing, presentation).

The database

It is composed of 4 tables per financial institution: ( « scripts sql tables & champs.sql » at the root)

-2 for the securities (already existing in FSX):

– List of past transactions carried on securities.
– List of securities for sale in their current states.

– 2 orders of payments (the before and after):

– List of past orders in the securities of FSX.
– List of payment orders sent by the API.

It is composed of 2 insertions in the tables corresponding to a title and its history.

The stages of payment for a user in FSX

The user has created and supplied a Moneybookers account. (

1. The link to the login page is on the first page top right. The connection is with the email and digital identifier (Customer ID) associated with Moneybookers account.
(Visible beneath the menu in the interface Moneybookers). (No password is managed by Moneybookers upon payment to avoid external recovery)

2. The user goes to the purchase page and a ISIN number (defined as the value and benefit if necessary).

The purchase order is saved and accessible via the menu of the same name. It summarizes the status of the transaction (Active / Standby, Fails / Canceled or Finished).

3. According to the parameters ( « params.php ») defined by the administrator, the user is redirected either:
– On the test server (mb_test_payment.php) and valid
– Or Moneybookers (

The redirection is done through a GET (passing all the required parameters). The solution has been chosen is a javascript redirect. (<script type=’text/javascript’>Code</ script>)

4. If the person given the right parameters, it falls just a password. Otherwise, it creates the account.

5. The payment is reversed or validated by the user. Moneybookers transfer money between the parties. Moneybookers sends a return code « HTTP 200 » POST only the status_url previously sent ( « Payment/pay/status_report.php ») and redirects the user to the platform FSX defined above.

– The software uses a coupling data (parameter passing).

if (isset ($ _POST [ ‘mb_transaction_id’])) ($mb_transaction_id = $ _POST[‘mb_transaction_id’];)

– The data are then filtered for security reasons. ( « status_report_filtre.php ») Verifies that all fields are filled, they have the right kind, good length and good data (technical filtering whitelist).

example: checking that the original data (IP) is really from the financial institution to avoid any fraudulent attempt to send play money. (attack type « man in the middle »)

The amount returned by moneybookers be less than the amount indicated in the reservation (due to the taking of commission (fixed and variable) of the payment platform or GET parameters that can be modified en route by the user). The transfer of ownership of securities is based on new figures sent by the API only to avoid these problems.

6. Then, if all criteria are validated then the data are stored in the table of the api. (+ Current date) and displays as required by the file ‘pay_liste.php’ the customer reflected in his eyes when he returns to Give1Get2.

7. continuing process of transferring ownership (the transaction on hold « pending » changes to « done ») with the transaction number recovered by Moneybookers previously sent)

Each sale of title, money is saved in the accounts of the financial institution. In a crisis (such as unavailability of the platform title), the money, it is always available.

8. The user can see his tracks and refresh the page (F5). It can also use the emailling to expedite the payment process, then:
– The seller receives an email notification informing the FSX the transfer of title and the reception of money. (Transmitter + Silver + currency)
– The buyer receives an email notification from the financial institution. (+ Silver + dollar + product code)

9. Disconnecting the trading platform (FSX)


The architecture views is common FreePay (header and footer together on every page).

Menu: (Home, History of titles, title Buy, Purchase Order (Confirmation is visible if the order was successful) Consult your titles, Contact Us, Documentation)

– The user can see the transaction history.
– The user can buy a ISIN number.
– The user can consult the list of purchase orders and click on the transaction number for details of the transaction (if it succeeded).
– The user can see his tracks.

Compliance with W3C standards: has been validated XHTML 1.0 Transitional and CSS 2.0 in Mozilla Firefox, Internet Explorer and Safari.


These are the same as those of FreePay. PHP and Javascript for the client and server respectively.

Transactions that fail after 1 day were classified as having failed. (status to -2).


The application has been designed and tested CAL9000 (OWASP) to be protected against attacks like Cross Site Scripting (XSS). In the Top 10 vulnerabilities in 2007 by the Open Web Application Security Project (OWASP).

Test and Verify:

The test accounts are opened at the initiative of customers. Funding test are given free Moneybookers.

Pass the following test series: Requires minimum 2 users. (Alice and Bob) Preparation: Note the financial position of existing users: « Balance in Euro » and « Balance of ISIN » for each.

Make a purchase and for 3 cases (less than, equal, higher), check:
– The balance of the buyer (Alice) has he fallen?
– The value of the security of the buyer (Alice) has she grown?
– The balance of the receiver (Bob) has he grown?
– The titles of the receiver (Bob) have decreased?
– The receiver (Bob) as been notified by email?

Next development platform:

FaceBook + Paypal


I think my system is legal because I am doing research in this direction before putting it free. I believe it is in line with the principles of the European Union. ( I joined in the « Support »> « docs » reference documents concerning the legislative, legal and regulatory framework that could be pertinent.

The website of the European Commission is very instructive on this issue. ( Category: European Commission> Internal Market> Single Market for Services> Financial Services. I am not completely agree on the choice of this category since the trading platform offers a free service (without compensation) and does not manage money (only confirmation that the money has been transferred).

Fund investments> Alternative investments: there is a Draft Directive on fund managers known as « alternative. The draft guideline can still be changed, and the final version will not necessarily apply to specific cases.

Payment services> E-Money: The trading platform does not change. So, this concerns only the PSP Moneybookers.

Payment services> e-Invoicing: PSP is Moneybookers which manages billing (it may disable) Only one copy is kept for archive purposes by the trading platform (or nothing depending on the setting)

Financial conglomerates: Depending on the size of the trading system Give1Get2 and structure, it can enter or not enter this category. It is the selection of the contractors as opportunities for merger / acquisitions.

Electronic Business: It depends on what is done by customers in return for money sent.


My copyright is protected by the GNU General Public License.

My creations are protected at European level by Council Directive 91/250/EEC of 14 May 1991 on the legal protection of computer programs. (

My designs are protected internationally by the Berne Convention for the Protection of Literary and Artistic Works (currently managed by the World Intellectual Property Organization (WIPO), specialized agency within the UN). (source:


Using this application value of acceptance of the disclaimer as follows: The author assumes no responsibility for any consequences arising from the use of this application.

Script comes with no warranty.

The Organization

The Indefinite Lifespan Foundation is a nonprofit charitable organization, nongovernmental, dedicated to reducing human mortality, to promote the extension of life expectancy and the pursuit of happiness using mainly preventive medicine, Public health and computer science. (Currently being created)


As a developer, I always look for a way to produce more at lower cost. My motivation is based on the fact that the software works and it is useful. While I agree that the type of communication is more efficient face to face, I acknowledge that I am not always available and so I put up with written documentation. Under a policy of transparency, I also put my resume attached in order to learn who wants my identity and my professional skills (which leaves several ways to contact me). His reading is optional.

Also, I’m open to suggestions for improving the software. If there are bugs, so I can correct them, I must have accurate knowledge. From my experience, to improve a system requires that users can contact the author for improvement of the platform is through positive feedback loops at the initiative of users. This will return to the basic architecture of the next version (which will contain the existing + corrections).

If you have a problem of a financial nature relating to your moneybookers account, please contact Moneybookers customer service.

Conception d’un système de trading à partir de l’API de paiement Moneybookers et de FreePay

(version Beryl)

télécharger la brochure :

télécharger le texte :

Vision :

Créer un monde sans pauvreté pour permettre l’éducation, réduire les maladies et réduire la

Créer un monde sans pauvreté pour permettre l’éducation, réduire les maladies et réduire la mortalité.

Le changement de paradigme :

Le paradigme existant permet de résoudre certain problèmes, c’est pourquoi il a été accepté par le passé. Cependant, en ce moment, il ne répond pas à la demande de tout le monde. Donc, il y a eu une remise en question et une demande de changement.

J’ai étudié le marché des solutions existantes. N’étant pas satisfait (car si j’étais satisfait la problématique aurait été déjà résolue), j’ai donc décidé de créer ce logiciel. Car, à mon avis, il faut retirer progressivement les barrières qui entravent les échanges. (réf Traité instituant la Communauté européenne, 1957)

Le logiciel Give1Get2 est conçu pour construire un marché financier alternatif aux marchés financiers existants. Le logiciel est spécialisé dans la levée de fonds en ligne. Il facilite le libre échange dans l’économie internationale. Ce logiciel a été crée pour répondre au besoin de financement des agents économiques au niveau européen et mondial pour pouvoir financer, en autre chose, la recherche, l’éducation et l’innovation.

Principes & Qualités :

– Liberté, Citoyenneté, Responsabilité, Égalité, Solidarité,

– Ouvert, Réglementé, Prévisible, Non discriminatoire

Objectif :

Faire un projet pilote (fonctionnel, gratuit dans sa mise en place et dans son utilisation, légal, disponible (7/7j, 24/24h) et reposant sur une situation gagnant-gagnant) d’une plateforme de trading internationale (FSX) à partir d’une API de paiement (Moneybookers) et d’un progiciel financier libre (FreePay) pour permettre d’augmenter le solde des participants. (+1 Euro à chaque fois)

Réalisé : L’objectif principal a été réalisé.

Le logiciel a été testé dans des conditions réelles avec des comptes personnels pour les 3 cas possibles d’achat (inférieur, égal et supérieur) : et dans chacun des cas, cela à fonctionné parfaitement.

Exemple simple : lorsqu’ 1 Euro est envoyé, 2 Euros sont reçus (facteur 2 : 1*2=2). La devise « Give 1. Get 2. » a été choisie en ce sens. Le montant de départ est choisi par l’utilisateur et il peut utiliser le système autant de fois qu’il veut. exemple : 1234 Euros envoyé -> 2468 Euros reçus.

Cible :

Cible Utilisateur : Ce logiciel est été mis en oeuvre en ciblant principalement les utilisateurs du PSP utilisé parlant français ou anglais et ayant un minimum de compétences en finance (Moneybookers enregistre 9 millions de clients, selon Moneybookers). L’objectif n’étant pas de ce limiter à cette catégorie mais de pouvoir toucher le plus grand nombre d’ utilisateurs.

Cible Développeur : Les personnes ciblé pour le téléchargement et l’installation du logiciel sont les programmeurs (développeur web de préférence) et/ou entreprises voulant mettre en place une plateforme de trading.

La plateforme ne prend pas de pourcentage sur les fonds qu’elle lève. En ce sens, une organisation qui l’utiliserait pourrait être du type organisation à but non lucratif.

Les stratégies pour faire du business

Il existe 3 stratégies possibles pour 2 personnes : Perdre, pas de deal ou gagner. (soit 9 combinaisons en tout)

Cas pratique : Je ne veux pas perdre d’argent (destruction d’argent) Je ne veux pas perdre d’argent pour que quelqu’un en gagne. (un vol d’argent) Je veux changer. Je ne veux pas gagner d’argent pour que quelqu’un en perde. (un vol d’argent) Je ne veux pas gagner d’argent tout seul. (faux billet) Je veux gagner de l’argent et que quelqu’un d’autre en gagne aussi.

La seule solution qui me semble réalisable est donc : la stratégie gagnant-gagnant.

Business Model d’une plateforme de Trading en ligne avec une stratégie Gagnant-Gagnant :

5 parties : Fournisseur, Consommateur, Concurrent, Partenaire et Soi-même.

Fournisseur :

– Les prestataires de services de paiement (PSP) ont un business model qui fonctionne par les commissions (partie fixe et variable) sur les transactions de leur clients (environ 2%). Pour que leur profit augmente, ils veulent augmenter leur volume de transactions et à ce que les clients envoient de plus grosse somme.

– Leur principaux partenaires sont les marchands et les plateforme de trading qui leur permet d’accroitre leur volume de transactions et les montants via les utilisateurs qui les utilisent. Ceci se fait par l’augmentation de leur nombre de clients qui est proportionnel à l’accès de leur système d’informations : l’API (Application Programming Interface) qui permet à quiconque d’automatiser les paiements.

– Leur fournisseurs sont une ou plusieurs banques. Les messages financiers sont géré électroniquement par la banque. Le PSP reçoit des confirmations via une API.

Consommateur :

– Les utilisateurs de l’internet veulent répondre à leur besoins. Les besoins de l’humanité sont récurrent (doivent être satisfait tout les jours). Ce besoin est soit un produit ou service, soit de l’argent. Les produits se trouvent chez les marchants en ligne (e-commerce). L’argent facilement gagné se trouve sur les plateforme de trading.

– Pour envoyer de l’argent, l’utilisateur à besoin d’un PSP. Et son PSP lui demande d’avoir un compte bancaire pour remplir son portefeuille électronique. Comparativement au PSP, l’internaute gagne plus par transaction si le profit est à sa valeur par défaut (maximum).

Concurrent, Partenaire et Soi-même :

– Le business model de la plateforme de trading est soit le même que celui du PSP (commissions par transactions), soit des frais d’entrée, soit des frais mensuels, soit des primes de parrainages (lien avec id) ou soit gratuit. (L’argent est gagné de la même manière que les utilisateurs.)

– Les fournisseurs des plateformes de trading sont les PSP avec leur API. (le logo est mis en évidence)

– Les utilisateurs consomment un service qui leur permet de déplacer de l’argent. La stratégie de déplacement de l’argent est définie soit par la plateforme de trading soit par les utilisateurs eux même. (dépend de la politique interne de la plateforme de trading)

– La plateforme de trading est une couche logiciel au dessus du PSP. La conception et l’évolution de ce produit informatique peut être en partie externalisé auprès d’une ou plusieurs personnes qui s’occupe d’un logiciel libre de plateforme de trading ce qui permettrait de réduire les coûts et le temps de développement.


Le lien vers le programme de parrainage est ici :

Il y a plus de 9 millions de client qui utilisent Moneybookers (selon Moneybookers). La population cible visé est majoritairement celle déjà inscrite. L’affilié ne peux prendre de commissions sur des personnes déjà inscrite. (qu’il n’a pas lui même parrainé, sous-entendu)

Pour les personnes qui ne sont pas encore inscrite, elles peuvent s’inscrire directement à l’url : dans ce cas, l’affilié ne prend pas de commission.

Soit, dernière option, s’inscrire avec le lien de l’affilié (l’url fourni en bas de page sur le script), dans ce cas, l’affilié recevra des commissions sur ce que gagne le PSP (à hauteur de 30% et, limité à 100 Euros maximum) Ce n’est pas un surcoût (répartition 30-70). C’est donc complètement transparent pour l’utilisateur final.

Cette mesure incitative, je l’ai mis en place pour augmenter le nombre de mes partenaires sur ce projet. Je pensai que cela était légitime afin de pouvoir payer les couts fixes (nom de domaine) et les coûts variable de fonctionnement (bande passante, base de donnée) de chacun des sites partenaires.

De plus, chaque utilisateur à aussi cette possibilité de parrainer d’autres utilisateurs en faisant ses demandes de paiements. Je trouve que c’est une preuve d’équité.

Interopérabilité : Comment savoir si l’API du porte monnaie électronique d’une institution financière est compatible avec le FSX de FreePay ?

Sur l’institution financière :

1. Il faut pouvoir créer un compte.

2. Approvisionnement : L’utilisateur peut approvisionner son compte avec différents moyens de paiement (chèque, carte de crédit, transfert bancaire etc) et en retirer.

3. Il faut avoir un minimum de fonds sur son compte (solde à minimum 1 euros). (il faut aussi prendre en compte les frais de l’institution financière)

Facultatif (mais vivement recommandé) : Agrément financier : L’institution financière doit être agréé par au moins une autorité de régulation.

Séparation des tests et du réel : Les transferts entre client normaux et client de test sont interdits.

Sur le FSX :

1. Il faut pouvoir passer un ordre sur le FSX et arriver sur la plateforme de paiement. (POST ou GET)

2. B2B, B2C,C2B & C2C : Il faut que les paiements fonctionne dans les 2 sens (marchand-marchand tout en étant accessible client-client, marchand-client et client-marchand), brièvement permettre le P2P. Le droit de rétractation dépend du status des personnes effectuant les transactions ensemble et, cela est défini sur le site du PSP.

2 bis. (optionnel : mais c’est mieux de le faire) Il faut pouvoir activer l’automatisation des processus. (en xml)

3. XML : Il faut que le site source (marchand / FSX) puisse obtenir une trace de la transaction de la part de la plateforme de paiement. (xml envoyé et enregistrable dans la base de donnée dans des tables sql)

Existant : Qu’est-ce que Moneybookers?

– Moneybookers est un service paiement en ligne sécurisé qui vous permet d’envoyer et de recevoir de l’argent instantanément à partir d’une adresse e-mail. L’ouverture de compte est gratuite ; et le chargement et le retrait d’argent se fait par l’intermédiaire d’une carte de crédit (Visa, mastercard, diners, american express, jcb, delta / visa debit et visa electron) ou par virement bancaire.

– Moneybookers est traduit en 12 langues différentes. (Anglais, Allemand, Français, Espagnol, Italien, Polonais, Grec moderne, Roumain, Russe, Turc, Chinois, Tchèque)

– Les frais de transaction sont peu élevé et les transactions peuvent être consultées dans l’historique du compte à tout moment.

– Moneybookers est une institution émettrice de monnaie électronique qui permet au marchands (société ou négociant) d’accepter les paiements en ligne de clients du monde entier sans aucun frais d’installation, ni de frais mensuels. (en anglais : Payment Service Provider)

– Moneybookers Ltd est une société enregistrée au registre du Commerce de l’Angleterre et du Pays de Galles sous le No 4260907. Siège social: Welken House, 10-11 Charterhouse Square, London, EC1M 6EH. Elle est agréé en vertu de la législation du Royaume-Uni et de l’Union Européenne et régi par la Financial Services Authority (FSA), l’Autorité des services financiers au Royaume-Uni.

Source :

Pourquoi une relation avec un PSP :

La division des rôles : Le logiciel peut être vu comme un plugin qui interagit avec le logiciel principal (l’institution financière) pour lui apporter une nouvelle fonctionnalité. Le logiciel est un système ouvert qui envoie des informations à l’intérieur (historique) et à l’extérieur (ordre).
– L’institution financière transforme les capitaux entrant en monnaie électronique, fais les paiements et fais les conversion de chèques.

– Le logiciel permet de passer des ordres de paiement, d’échanger des ordres de paiement et permet de faire des demandes de paiement.

Dépendance : Le logiciel va vers la simplicité puisque, par rapport à la version précédente (FreePay), il soustraite les processus nécessaire à la gestion de l’argent. Ce logiciel permet d’économiser le coût du capital initial (1 million d’ Euros) nécessaire à la création d’une institution financière émettrice de monnaie électronique (en : E-money issuer) au sein de l’ Union Européenne. (ref : Article 4 paragraphe 1 de la Directive 2000 46 CE).

Indépendance : Chaque organisation qui met en place le logiciel Give1Get2 est autonome des autres organisations. Elle n’est dépendante que de l’institution financière qui permet de faire les paiements (Relation 1 à plusieurs).

Qu’est-ce que « Give1Get2 »?

Le système de trading repose sur une stratégie gagnant-gagnant. La plateforme de trading est un lieu de confrontation de l’offre de titres financiers et de la demande d’argent en application de la pensée du laissez-faire économique. Il n’y a pas de marchandises échangé sur le système. C’est un jeu à somme nulle du point de vue de la plateforme de paiement mais pas du système de trading (1 euro titrisé symbolique émit pour l’amorçage, échange +1 +1 pour chaque partie à chaque transaction). C’est un cercle vertueux. Il n’y a pas de droit d’entrée. C’est un système de personne à personne (P2P) complémentaire qui permet aux utilisateurs de passer des ordres sur une plateforme de paiement. Cela a été conçu de tel manière qu’il n’y a pas de risque de variation inverse. Puisqu’il n’y a pas d’ordre de vente, il ne peut pas y avoir de crack boursier. Tout les utilisateurs du système peuvent s’enrichir, mais pas au même moment. L’utilisateur peut donc devenir, selon ce qu’il en fait, un trader. (fr : Opérateur de marché)

Le profit est aussi paramétrable (de 0 à 100 %, exemple : 25 euros réel deviennent à 100% -> 50 euros titrisés). Cela permet à l’utilisateur de spéculer ou de ne pas le faire. Ce qui permet à l’utilisateur de transformer ses capitaux en plus de capitaux représenté par les titres. (Et ensuite transformer ses titres en capitaux par l’acte de vente, exemple : 50 euros titrisés -> 50 euros réel). Finalement : 25 euros réel -> 50 euros réel. Ce qu’il fallait démontrer.

Explication Économique : Le logiciel n’a pas pour but de créer de l’inflation.

D’après ce que je sais, il existe deux types d’inflation :

– L’inflation du niveau des prix : Une hausse des prix des biens et des services durant une période de temps donné. (source : Wikipédia) Le revenu augmente moins vite que la hausse des prix des produits. → diminution du pouvoir d’achat. Ce qui est problématique. Or, ce que propose Give1Get2, c’est d’augmenter le revenu des acteurs du système, d’où une augmentation du pouvoir d’achat. Il n’y a pas de services en vente sur la plateforme et l’utilisation y est gratuite. Les « produits » financiers en vente sont des demandes de paiements. Le prix d’achat est fixé par les acheteurs eux-même. S’ils décident d’acheter plus cher, c’est pour gagner plus.

– L’inflation de la masse monétaire : Lorsque la masse monétaire mondiale subit une création monétaire. L’argent en circulation augmente via les taux d’intérêts. Or, le logiciel Give1Get2 n’a pas vocation d’augmenter la masse monétaire ni de la diminuer. Il n’y a pas de taux d’intérêts non plus dans ce système. Car c’est uniquement du ressort des banques.

Le logiciel permet la circulation de la monnaie entre les acteurs économiques.

Explication financière :

Prenons cet l’exemple : Bob veut envoyer 10 centimes d’EUR à Alice via Moneybookers.

Alice à un solde de 10.82 EUR. Bob a un solde de 78.19 EUR. Bob envoi 10 centimes à Alice. Le solde de Bob devient 78.09 EUR. Le solde de Alice passe à 10.92 EUR. C’est sans compter les frais variables (0.01) et les frais fixes (0.29). En fin de compte, le solde de Alice est de 10.62 EUR à la fin de l’opération.

Personnes Alice Bob
Temps Avant Après Avant Après
Solde 10.82 EUR 10.62 EUR 78.19 EUR 78.09 EUR

On constate que le gain (10 centimes) est inférieur à la perte (30 centimes). Bob a été chargé négativement (-0.10 EUR, ce qui est normal). Alice a été aussi chargé négativement (total de -0.20 EUR). C’est donc une situation perdant-perdant.

Pour obtenir une situation perdant-gagnant, on peut mettre en place un quota d’argent minimum automatique à définir dans les paramètres pour tout achat via l’API. Testons : Bob (solde : 78.09 EUR), après mûres réflexion, veut envoyer 3 Euros à Alice (solde : 8.52 EUR) via Moneybookers. Bob a maintenant un solde de 75.09 EUR. Alice a un solde d’environ 11.12 EUR (8.52 +3.00 -0.10 -0.29).

Personnes Alice Bob
Temps Avant Après Avant Après
Solde 8.52 EUR 11.12 EUR 78.09 EUR 75.09 EUR

Que constatons nous ? Bob a été chargé négativement (-3.00 EUR) tandis que Alice a été chargé positivement (différence de +2.60 EUR). Ce qui est une situation perdant-gagnant.

Le processus marchand fonctionne de la manière suivante : Le vendeur échange un bien contre l’argent de l’acheteur. Le vendeur du bien ne le fait que contre une somme supérieur à ce que cela lui à coûté en premier lieu auprès de ces fournisseurs.

De la même façon, lorsque que une personne A fait une demande de paiement et reçoit l’argent d’une personne B. Cela agit comme un mécanisme de compensation qui permet à B placer à son tour une demande de paiement pour un prix à une valeur égale ou supérieur à ce que cela lui a coûté auprès de son prédécesseur.

Traditionnellement, c’est une relation à 2 personnes uniquement. Ce qui pose problème si l’une des 2 partie ne peut prêter ou rembourser. ( Relation 1 à 1) Avec ce logiciel de marché alternatif, il y a de multiples offreurs et de multiples demandeurs. (Relation de plusieurs à plusieurs) Donc, cela diminue le risque (relation 1 à plusieurs dans les 2 sens) et il y a plus de possibilités de succès.

Comme je viens de le démontrer, nous pouvons transformer une stratégie perdant gagnant en une stratégie gagnant gagnant. C’est ce que nous allons faire maintenant.


Le logiciel se base sur une politique de transparence et de développement durable. La licence choisie est la GNU GPL. C’est un logiciel libre. De ce fait, il a été mis à disposition gratuitement sur SourceForge.netpour être téléchargé et installé sur des serveurs en ligne.

* Télécharger directement la solution complète (la plus à jour) : (nécessite le logiciel 7zip)

* Miroir de téléchargement complet (version stable) :

* [Moneybookers] Démonstration en action :

* [Moneybookers] La documentation en libre téléchargement: (pas requis)

Installation du logiciel

1. Acheter un nom de domaine ( chez un Registrar.

2. Obtenir un hébergement contenant un espace suffisant (environ : 50 Mo) et une bande passante suffisante (plusieurs Giga) en fonction du nombre d’utilisateur prévu. (et POP3, FTP et MySQL inclus)

3. Dé-compacter les fichiers précédemment téléchargé. (procédure ci-dessus)

4. Modifier le fichier ‘scripts sql tables & champs.sql’ : à la ligne 85, remplacer l’email ( et l’ id marchand (6173206) par votre email et votre id marchand obtenu auprès de moneybookers à l’ouverture de votre compte. Remplacer aussi le courriel par votre courriel à la ligne 108.

5. Créer une base de données « mocha » (sans les doubles quotes) dans votre panneau d’administration (généralement à l’URL

Créer un utilisateur et lui donner les droits d’accès à la base de données en lecture et écriture. (si ce n’est pas déjà fait automatiquement).

6. Cliquer sur l’onglet SQL, copier-coller les données du fichier ‘scripts sql tables & champs.sql’ dans le champ de saisie et cliquer sur Exécuter. Aucun message d’erreur ne doit s’afficher.

7. Modifier les valeurs par défaut par celles qui ont été fournies par l’hébergeur dans le fichier ‘params.php’ (sans les simple quotes) ligne 31 (hôte), ligne 32 (utilisateur), ligne 33 (mot de passe), ligne 34 (base de données)

8. Sur le serveur web, copier-coller la source modifié (avec les parametres par défauts) en 7z et zip. Créer aussi un dossier /give1get2/ . Importer les fichiers via un FTP (ex fireFTP, une extension de Firefox) avec les paramètres de l’hébergeur (‘params.php’) dans le répertoire précédemment crée.

9. Lancer dans le navigateur La page d’index doit s’afficher sans message d’erreurs. Les sources (7z et zip) doivent pouvoir être téléchargeable à partir d’un onglet ‘documentation’ ou ‘téléchargement’.

10. Référencer votre site sur les moteurs de recherche (ex :

11. Générer un sitemap XML, et le mettre à la racine (ex : )

12. Optimiser votre site (ex: avec Google Webmaster Tools )

Pré-requis :

Le seul matériel nécessaire est un pc, un système d’exploitation, une connexion à Internet et un navigateur web.

Multi-Plateforme : fonctionne sous Windows ou Linux avec Internet Explorer ou Firefox.

La formation est gratuite. Elle constitue la documentation.

Conçu en XHTML, CSS, JavaScript, PHP et SQL (CRUD). Nécessite un MySQL, phpMyAdmin, POP3 pour les mails, FTP et un navigateur web. A été testé et fonctionne avec Apache (>= 1.3.33), Mysql (>= 4.1.9), PHP (>= 4.3.10), PhpMyAdmin(>= 2.6.1).

L’architecture est en trois tiers (donnée, business logic et présentation). L’architecture se base sur le projet FreePay : Pour approfondir, la documentation de freepay est à votre disposition.

Pour les non francophone ou les non anglophones, il existe des outils de traductions comme Google translate pour lire des documents dans votre langue.

Le diagramme des traitements des processus marchands du côté de l’institution financière a été copié dans une image jointe au logiciel. « moneybookers_payment_gateway_api_details_interaction_diagram.png »

Ce script se base également sur la documentation de l’API « Moneybookers Payment Gateway – Merchant Integration Manual » (en anglais)- Version: <6.5>. (43 pages) Une nouvelle version est peut être sortie à l’heure ou vous lisez ces lignes, ce qui pourrait poser des problèmes.

Le script ne prend en compte que les champs obligatoires par mesure de simplification. Pour ce qui est des champs facultatifs : se référer à la documentation officielle.

Le code ISIN est de nouveau utilisé dans ce logiciel (ISO 6166). La codification mis en place est le ZZ afin de faire une distinction claire et qu’il n’y ai aucune ambiguïté avec les pays ou territoires ayant des valeurs mobilières, selon la norme ISO 3166-1.

Les status d’une transaction (états) :

2 : validé (Processed)
1 : test //status ajouté, pas présent dans la documentation
0 : en attente (Pending)
-1 : annulé (Cancelled)
-2 : Échoué (Failed )
-3 : Retour arrière (Chargeback)

Les Étapes du développement (le Comment)

Vision : Le module de paiement de FreePay et tout les modules de niveau inférieur sont remplacés par l’API externe de Moneybookers (institution financière validé par la FSA).

Conséquences : Le support du module de paiement est donc externalisé. Le nom du projet ne correspond plus. Les balises Méta ne correspondent plus. Les menus ne correspondent plus.

1. Copie de Freepay. Tout les modules non nécessaires sont retirés sauf le FSX. (+ vérifier que ça marche)

2. Implémentation de l’API Moneybookers (+ vérifier que ça marche)

3. Mashup des deux (Application composite)
création de l’interface spécifique
création des processus spécifique
création de la base de donnée spécifique (+ vérifier que ça marche via un simulateur de moteur de paiement)

4. Re-factorisation : Optimisation de la Mashup (+ vérifier que ça marche)

5. Publication sur internet


Le code source est en français. Les commentaires du code source sont en français aussi. Sauf pour les standards financiers qui sont en anglais. Le projet s’oriente vers une internationalisation (I18N).

Toutes les images sont dans un dossier spécifique (/images).

Tout les CSS (Feuilles de style en cascade) sont dans un dossier spécifique (/style).

Tout ce qui a attrait au support utilisateur est dans le dossier /support.

La documentation est dans le dossier /support/docs.

Tout ce qui concerne l’internationalisation est dans le dossier nommé « services/i18n ».

La programmation est de type procédurale : les méthodes sont appelés dans un ordre spécifique.

La partie visible est composé de la page principale, de l’historique et de la documentation.

L’existence d’une demande de paiement peut se vérifier via l’historique.

La limitation d’accès se fait grâce aux sessions pour la partie caché (processus de paiement).

La disponibilité d’une demande de paiement peut se vérifier en appliquant le filtre avec le numéro ISIN en paramètre.

Comme c’est un projet web, l’interface homme-machine est basé sur une architecture est de type client/serveur. Et, le serveur à une architecture en 3 tiers (base de données, traitements, présentation).

La base de donnée

Elle est composée de 4 tables par institution financière : (« scripts sql tables & champs.sql » présent à la racine)

-2 pour les titres (déjà existante dans le FSX) :

– liste des transactions passés effectués sur des titres.
– liste des titres en vente dans leur états actuels.

– 2 pour les ordres de paiements (l’avant et l’après) :

– liste des ordres passés sur les titres du FSX.
– liste des ordres de paiements renvoyé par l’api.

Elle est composé de 2 insertions dans ces tables correspondant à un titre et de son historique.

Les étapes du processus de paiement pour un utilisateur dans le FSX

L’utilisateur a crée et approvisionné un compte Moneybookers. ( )

1. Le lien vers la page de connexion est sur la première page en haut à droite. La connexion se fait avec l’Email et l’identifiant numérique (Customer ID) associé au compte Moneybookers.
(Visible en dessous du menu dans l’interface Moneybookers). (Pas de mot de passe, il est gérée par Moneybookers lors du paiement pour éviter une récupération externe)

2. L’utilisateur va sur la page d’achat et sélectionne un numero ISIN (définit aussi la valeur et le profit si besoin).

L’ordre d’achat est sauvegardé et accessible via le menu du même nom. Il récapitule l’état de la transaction (En cours / En attente, Échoue / Annulé ou Fini).

3. Selon les paramètres (« params.php ») défini par l’administrateur, l’utilisateur est redirigé soit :
– sur le serveur de test (mb_test_payment.php) et valide
– soit sur Moneybookers (

La redirection se fait grâce à un GET (passage de tout les paramètres obligatoires). La solution qui a été choisie est une redirection javascript. (<script type=’text/javascript’>Code</script>)

4. Si la personne a donnée les bons paramètres, elle entre juste son mot de passe. Sinon, elle crée son compte.

5. Le paiement est annulé ou validé par l’utilisateur. Moneybookers transfert l’argent entre les parties. Moneybookers envoie un code de retour « HTTP 200 » en POST uniquement à la status_url précédement envoyé (« paiement/pay/status_report.php ») et redirige l’utilisateur vers la plateforme de FSX défini précédement.

– Le logiciel utilise un couplage par données (passage de paramètres).

if( isset($_POST[‘mb_transaction_id’]) ) { $mb_transaction_id = $_POST[‘mb_transaction_id’]; }

– Les données sont ensuite filtrées par mesure de sécurité. (« status_report_filtre.php ») Il vérifie que tout les champs sont renseignés, qu’ils ont le bon type, la bonne longueur et les bonnes données (technique de filtrage par liste blanche).

exemple : vérification que l’origine des données (IP) provient bien de l’institution financière pour éviter toute tentative frauduleuse d’envoi d’argent fictif. (attaque de type « man in the middle »)

Le montant renvoyé par moneybookers peut être inférieur au montant indiqué dans la réservation (du fait de la prise de commission (fixe et variable) de la plateforme de paiement ou des paramètres GET qui peuvent être modifié en cours de route par l’internaute). Le transfert de possession des titres se fait compte tenu des nouveaux chiffres envoyé par l’API uniquement afin d’éviter ces problèmes.

6. Ensuite, si tout les critères sont validés alors les données sont stockés dans la table de l’api. (+ date actuelle) Et affichable au besoin par le fichier ‘pay_liste.php’ que le client retrouve sous ses yeux lorsqu’il retourne sur Give1Get2.

7. continuation de processus de transfert de possession (la transaction en attente « pending » passe à « done ») grâce au numéro de transaction récupéré par Moneybookers précédemment envoyé)

A chaque vente de titre, l’argent est sauvegardé dans les comptes de l’institution financière. En cas de crise (comme une indisponibilité de la plateforme de titre), l’argent, lui, est toujours disponible.

8. L’utilisateur peut consulter ses titres et rafraichir la page (F5). Il peut aussi utiliser l’emailling pour accélérer le processus de paiement, puis :
– Le vendeur reçoit une notification par email du FSX l’informant de la cession du titre et de la reception de l’argent. (+ emetteur + argent + devise)
– L’acheteur reçoit une notification par email de l’institution financière. (+ argent + devise + indicatif produit)

9. Déconnexion de la plateforme de trading (FSX)

Les vues :

L’architecture des vues est commune à FreePay (header et footer en commun sur toutes les pages).

Le Menu : (Accueil, Historique des titres, Acheter un titre, Ordre Achat (la confirmation est visible si l’ordre a réussi), Consulter vos titres, Contactez-nous, Documentation)

– L’utilisateur peut voir l’historique des transactions.
– L’utilisateur peut acheter une demande ISIN.
– L’utilisateur peut consulter la liste de ses ordres d’achat et, cliquer sur le numéro de la transaction pour voir les détails de la transaction (si celle-ci a réussi).
– L’utilisateur peut consulter ses titres.

Respect des standards du W3C : a été validé XHTML 1.0 transitionnel et CSS 2.0 sous Mozilla Firefox, Internet Explorer et Safari.

Les contrôleurs :

Ce sont les même que ceux de FreePay. PHP et Javascript pour le côté serveur et client respectivement.

Les transactions qui n’aboutissent pas au bout d’1 journée sont classé comme ayant échoué. (status à -2).


L’application a été conçu et testé avec CAL9000 (OWASP) pour être protégé contre les attaques de type Cross Site Scripting (XSS). Dans le Top 10 des vulnérabilités 2007 selon l’Open Web Application Security Project (OWASP).

Test et Confirmation :

Les comptes de tests sont ouvert à l’initiative des clients. Des fonds de test sont donné gratuitement par Moneybookers.

Passer la séries de tests suivantes : Nécessite minimum 2 utilisateurs. (Alice et Bob) Préparatif : Noter la situation financière existante des utilisateurs : « Solde en Euro » et « Solde ISIN » pour chacun d’eux.

Effectuer un achat et pour les 3 cas (inférieur, égal, supérieur), vérifier :
– Le solde de l’acheteur (Alice) a t-il diminué ?
– La valeur du titre de l’acheteur (Alice) a t-elle augmenté ?
– Le solde du récepteur (Bob) a t-il augmenté ?
– Les titres du récepteur (Bob) ont-ils diminué ?
– Le récepteur (Bob) a t-il été notifié par email ?

Prochain développement de la plateforme : FaceBook + Paypal


Je pense que mon système est légal car j’ai fais des recherches en ce sens avant de le mettre à disposition de tous. Je considère qu’il va dans le sens des principes de l’union européenne. ( . J’ai joint dans le dossier « support » > « docs » les documents de référence concernant le contexte législatif, juridique et réglementaire qui pourrait s’y rapporter.

Le site internet de la commission européenne est très instructif sur cette question. ( ) Rubrique : Commission européenne >Marché Intérieur > Le marché unique des services > Services financiers. Je ne suis pas complètement d’accord sur le choix de cette rubrique puisque la plateforme de trading offre un service gratuit (sans contrepartie) et ne gère pas d’argent (uniquement la confirmation que l’argent a été transféré).

Fonds d’investissements > Investissements alternatifs : il existe un Projet de Directive relative aux gérants de fonds dits ‹ alternatifs ›. Ce projet de directive peut encore être changé, et, la version finale ne va pas forcément s’appliquer à ce cas très précis.

Services de paiement > Monnaie électronique : La plateforme de trading ne crée pas de monnaie. Donc, cela ne concerne que le PSP Moneybookers.

Services de paiement > e-Facturation : c’est PSP Moneybookers qui gère la facturation (il peut le désactiver) Uniquement une copie est gardé à des fins d’archive par la plateforme de trading (ou rien suivant le paramétrage)

Conglomérats financiers : Selon la taille du système de trading Give1Get2 et sa structure, il peut entrer ou ne pas entrer dans cette catégorie. C’est au choix du/des entrepreneurs selon les opportunités de fusion / acquisitions.

Commerce électronique : Cela dépend de ce qui est fait par les clients en contrepartie de l’argent envoyé.

Copyright :

Mon droit d’auteur est garanti par la Licence publique générale GNU.

Mes créations sont protégés au niveau Européen par la Directive 91/250/CEE du Conseil, du 14 mai 1991, concernant la protection juridique des programmes d’ordinateur. ( )

Mes créations sont protégés internationalement par la Convention de Berne pour la protection des œuvres littéraires et artistiques (géré actuellement par l’ Organisation mondiale de la propriété intellectuelle (OMPI), organisme spécialisé au sein de l’ONU). (source : )

Clause de non responsabilité :

L’utilisation de la présente application à valeur d’acceptation de la clause de non responsabilité suivante : L’auteur décline toute responsabilité quant aux conséquences pouvant résulter de l’utilisation de cette application.

Script fourni sans aucune garantie.

L’ Organisation

L’ Indefinite Lifespan Foundation est un organisation de bienfaisance à but non lucratif, non gouvernementale, dédié à réduire la mortalité humaine, à encourager l’extension de l’espérance de vie et la recherche du bonheur en utilisant principalement la médecine préventive, la santé publique et l’informatique. (En phase de création)

Contact :

En tant que développeur, je recherche toujours un moyen de produire plus et à moindre coût. Ma motivation se base sur le fait que le logiciel fonctionne et qu’il est utile. Bien que je sois d’accord pour dire que le type de communication le plus efficient est le face à face, je reconnais aussi que je ne suis pas toujours disponible et donc, j’ai mis en place une documentation écrite. Dans le cadre d’une politique de transparence, j’ai aussi mis mon cv en pièce jointe afin de pouvoir renseigner qui le souhaite sur mon identité et mes aptitudes professionnelles (ce qui laisse plusieurs moyens de me contacter). Sa lecture est facultative.

De plus, je suis ouvert à toute suggestion permettant d’améliorer le logiciel. S’il y a des bogues, pour que je puisse les corriger, il faut que j’en ai connaissance précise. D’après mon expérience, pour améliorer un système, il faut que les utilisateurs puissent contacter l’auteur car l’amélioration de la plateforme se fait grâce aux boucles de rétroaction positive à l’initiative des utilisateurs. Ce retour servira de base à l’architecture de la prochaine version (qui contiendra l’existant + les corrections).

Enfin, si vous avez un problème de nature financière relatif à votre compte Moneybookers, vous pouvez vous adresser au service clientèle de Moneybookers.