Giter Club home page Giter Club logo

oyst-1click-magento's People

Contributors

jney avatar mbouchotoyst avatar mehdichaouch avatar rus-daniel avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

oyst-1click-magento's Issues

Bouton 1-click et gestion de commandes

Détails:

Cet épic regroupe les tickets concernant l'affichage du bouton 1-click sur les fiches produits et l'affichage des commandes sur le BO Magento passées depuis 1-click

Affichage des détails du produits dans la commande dans le BO

ETQM, je sais exactement quel produit a été acheté par le client.

Connaissant l'id unique de la variation du produit (référence produit, ex : mpd00038) je dois remonter dans le titre de la commande des infos relatives à ce produit (qui sont inscrites en base)

image

Dans un premier temps on travaille sur nos données et sur nos articles.
Il faut faire un choix sur l'affichage des propriétés qui permettent d'identifier de manière unique la variation du produit.
Ici on affiche ainsi: titre - type - color - size
image

QA affichage de la modale

Une fois l'export terminé. J'observe le bouton sur les différentes fiches produits.
Quand je clique sur le bouton, il ne se passe rien:
image

Console associée:
image

QA export catalogue incomplet

L'export s'est déroulé correctement.
Cependant en base seulement 195 produits ont été exporté (postman).

L'API refuse certains produits car la catégorie doit être de type string:

Error [joi] during post products for merchant [fc60a2fd-4052-40c8-b8e8-92e02e1d5943].

Error

message: child "categories" fails because ["categories" at position 0 fails because [child "reference" fails because ["reference" must be a string]]] stack: - ValidationError: child "categories" fails because ["categories" at position 0 fails because [child "reference" fails because ["reference" must be a string]]] - at Object.exports.process (/app/node_modules/joi/lib/errors.js:181:19) - at internals.Object._validateWithOptions (/app/node_modules/joi/lib/types/any/index.js:651:31) - at module.exports.internals.Any.root.validate (/app/node_modules/joi/lib/index.js:121:23) - at validateProduct (/app/dist/methods/products/create.js:43:9) - at ramda_1.map.product (/app/dist/methods/products/create.js:65:36) - at _map (/app/node_modules/ramda/src/internal/_map.js:6:19) - at map (/app/node_modules/ramda/src/map.js:57:14) - at /app/node_modules/ramda/src/internal/_dispatchable.js:39:15 - at Object.f2 [as map] (/app/node_modules/ramda/src/internal/_curry2.js:25:16) - at Joi.validate (/app/dist/methods/products/create.js:65:21) - at internals.Object._validateWithOptions (/app/node_modules/joi/lib/types/any/index.js:654:20) - at module.exports.internals.Any.root.validate (/app/node_modules/joi/lib/index.js:121:23) - at Object. (/app/dist/methods/products/create.js:53:9) - at Generator.next () - at /app/dist/methods/products/create.js:7:71 - at Promise () - at __awaiter (/app/dist/methods/products/create.js:3:12) - at Object.exports.default (/app/dist/methods/products/create.js:52:47) - at handler (/app/dist/routes/products/create.js:12:48) - at internals.handler (/app/node_modules/hapi/lib/handler.js:101:51) - at bound (domain.js:301:14) - at runBound (domain.js:314:12)

JSON: {"isJoi":true,"name":"ValidationError","details":[{"message":""reference" must be a string","path":"categories.0.reference","type":"string.base","context":{"value":0,"key":"reference"}}],"_object":{"reference":"599","is_active":true,"is_materialized":false,"title":"Olive Bushwick Skinny Jean","condition":"new","short_description":"An ultra slim jean made from stretch denim to achieve a comfortable Eurpoean street style.","description":"Cotton skinny leg jean with five pockets. 9.5" rise. 34.5" inseam. 13" leg opening. Imported. Available in Black and Olive. Cotton/elastane. Machine wash.","amount_including_taxes":{"value":19500,"currency":"EUR"},"url":"http://www.born3convert.com/catalog/product/view/id/599/s/olive-bushwick-skinny-jean/","categories":[{"reference":0,"is_main":false,"title":"none"}],"available_quantity":0,"is_discounted":false,"images":["http://www.born3convert.com/media/catalog/product/placeholder/"],"informations":{}}}


Value

JSON: {"reference":"599","is_active":true,"is_materialized":false,"title":"Olive Bushwick Skinny Jean","condition":"new","short_description":"An ultra slim jean made from stretch denim to achieve a comfortable Eurpoean street style.","description":"Cotton skinny leg jean with five pockets. 9.5" rise. 34.5" inseam. 13" leg opening. Imported. Available in Black and Olive. Cotton/elastane. Machine wash.","amount_including_taxes":{"value":19500,"currency":"EUR"},"url":"http://www.born3convert.com/catalog/product/view/id/599/s/olive-bushwick-skinny-jean/","categories":[{"reference":0,"is_main":false,"title":"none"}],"available_quantity":0,"is_discounted":false,"images":["http://www.born3convert.com/media/catalog/product/placeholder/"],"informations":{}}

Orders

Détails:

Cet Epic correspond aux tickets relatifs aux orders

Order API:

Lorsqu’un produit d’un e-marchand est vendu via la plateforme de OYST, l’API Order lui permet de récupérer ses commandes.

Les commandes générées par OYST peuvent prendre un ensemble de statuts différents du côté de l’Order API :

Waiting:

La commande est en attente de notification au marchand. Durant ce statut, une commande peut être supprimée, prévenant ainsi le marchand de mauvaise notification. A ce stade, le marchand ne peut effectuer aucune action sur la commande. L’adresse de livraison n’est pas disponible.

Pending :

La commande attend la confirmation d’acceptation du marchand. Cette commande doit être acceptée ou refusée par le marchand. Au bout 48h la commande est automatiquement refusée.

Shipped :

La commande a été expédiée par le marchand. Cette commande peut être remboursée par le marchand.

Finalized :

La commande est finalisée 60 jours après sa création. Aucune action n’est possible sur cette commande.

Cancelled :

La commande a été annulée par Oyst ou le marchand. Aucune action n’est possible sur cette commande.

Denied :

La commande a été déclinée par le marchand. Aucune action n’est possible sur cette commande.

Refunded :

La commande a été remboursée. Aucune action n’est possible sur cette commande.

image

endpoint for shipments

Générer automatiquement les frais de transports selon le panier du client. Trouver la meilleure facon de calculer le prix.

Catalogue bug produits avec variations

ETQ user, quand je fais un achat 1 click en indiquant une couleur et une taille et que je regarde le détail de l'order dans la console, le champ variation est null partout.
image

ref: 412
quantity_avilable:0
variations: null
image

Dans postman j'ai:

{
    "product": {
        "amount_including_taxes": {
            "value": 24000,
            "currency": "EUR"
        },
        "available_quantity": 0,
        "categories": [
            {
                "title": "VIP",
                "is_main": true,
                "reference": "9"
            },
            {
                "title": "Tees, Knits and Polos",
                "is_main": false,
                "reference": "16"
            }
        ],
        "condition": "new",
        "cpa": 0,
        "description": "V-neck cardigan. Mother of pearl front button closure. Two dart pockets. Ribbed cuff and hem. 100% cotton. Hand wash.",
        "ean": "",
        "id": "ec62c576-90fb-410c-ab4b-34379c04a55d",
        "images": [
            "http://www.born3convert.com/media/catalog/product/m/t/mtk009t_2.jpg",
            "http://www.born3convert.com/media/catalog/product/m/t/mtk009t_3.jpg",
            "http://www.born3convert.com/media/catalog/product/m/t/mtk009t.jpg",
            "http://www.born3convert.com/media/catalog/product/m/t/mtk009t_4.jpg",
            "http://www.born3convert.com/media/catalog/product/m/t/mtk009t_5.jpg",
            "http://www.born3convert.com/media/catalog/product/m/t/mtk009t_1.jpg",
            "http://www.born3convert.com/media/catalog/product/m/t/mtk009a.jpg",
            "http://www.born3convert.com/media/catalog/product/m/t/mtk009b_1.jpg",
            "http://www.born3convert.com/media/catalog/product/m/t/mtk009b_2.jpg"
        ],
        "informations": {},
        "is_active": true,
        "is_discounted": false,
        "is_materialized": false,
        "isbn": "",
        "manufacturer": "",
        "merchant_id": "281fcf14-916e-44dd-89be-996966469478",
        "reference": "412",
        "related_products": null,
        "shipments": null,
        "short_description": "A lean, raglan sleeve cardigan with cosmopolitan appeal.",
        "size": null,
        "tags": null,
        "title": "Lexington Cardigan Sweater",
        "upc": "",
        "url": "http://www.born3convert.com/lexington-cardigan-sweater-566.html",
        "variations": [
            {
                "amount_including_taxes": {
                    "value": 0,
                    "currency": "EUR"
                },
                "available_quantity": 25,
                "condition": "new",
                "description": "",
                "ean": "",
                "id": "2150891f-2807-4f80-9fe8-95d1677859ed",
                "images": [
                    "http://www.born3convert.com/media/catalog/product/m/t/mtk009t_1.jpg"
                ],
                "informations": {},
                "is_discounted": false,
                "is_materialized": false,
                "isbn": "",
                "manufacturer": "",
                "reference": "258",
                "shipments": null,
                "short_description": "",
                "size": null,
                "tags": null,
                "title": "",
                "upc": "",
                "url": "http://www.born3convert.com/lexington-cardigan-sweater.html",
                "weight": "0"
            },
            {
                "amount_including_taxes": {
                    "value": 0,
                    "currency": "EUR"
                },
                "available_quantity": 25,
                "condition": "new",
                "description": "",
                "ean": "",
                "id": "80bf4bea-42a6-4a4d-8804-6a1546465d24",
                "images": [
                    "http://www.born3convert.com/media/catalog/product/m/t/mtk009t_2.jpg",
                    "http://www.born3convert.com/media/catalog/product/m/t/mtk009b_1.jpg"
                ],
                "informations": {},
                "is_discounted": false,
                "is_materialized": false,
                "isbn": "",
                "manufacturer": "",
                "reference": "259",
                "shipments": null,
                "short_description": "",
                "size": null,
                "tags": null,
                "title": "",
                "upc": "",
                "url": "http://www.born3convert.com/lexington-cardigan-sweater-564.html",
                "weight": "0"
            },
            {
                "amount_including_taxes": {
                    "value": 0,
                    "currency": "EUR"
                },
                "available_quantity": 24,
                "condition": "new",
                "description": "",
                "ean": "",
                "id": "94ccced5-f469-44e5-b0e2-b66f5ffad30e",
                "images": [
                    "http://www.born3convert.com/media/catalog/product/m/t/mtk009t_3.jpg"
                ],
                "informations": {},
                "is_discounted": false,
                "is_materialized": false,
                "isbn": "",
                "manufacturer": "",
                "reference": "260",
                "shipments": null,
                "short_description": "",
                "size": null,
                "tags": null,
                "title": "",
                "upc": "",
                "url": "http://www.born3convert.com/lexington-cardigan-sweater-565.html",
                "weight": "0"
            },
            {
                "amount_including_taxes": {
                    "value": 0,
                    "currency": "EUR"
                },
                "available_quantity": 21,
                "condition": "new",
                "description": "",
                "ean": "",
                "id": "6db25fa6-f827-4704-a7d2-34b0247aa9f7",
                "images": [
                    "http://www.born3convert.com/media/catalog/product/m/t/mtk009t_4.jpg"
                ],
                "informations": {},
                "is_discounted": false,
                "is_materialized": false,
                "isbn": "",
                "manufacturer": "",
                "reference": "494",
                "shipments": null,
                "short_description": "",
                "size": null,
                "tags": null,
                "title": "",
                "upc": "",
                "url": "http://www.born3convert.com/lexington-cardigan-sweater-567.html",
                "weight": "0"
            },
            {
                "amount_including_taxes": {
                    "value": 0,
                    "currency": "EUR"
                },
                "available_quantity": 21,
                "condition": "new",
                "description": "",
                "ean": "",
                "id": "1bc77860-407e-44d6-80fe-a4ca4289e5e2",
                "images": [
                    "http://www.born3convert.com/media/catalog/product/m/t/mtk009t_5.jpg"
                ],
                "informations": {},
                "is_discounted": false,
                "is_materialized": false,
                "isbn": "",
                "manufacturer": "",
                "reference": "495",
                "shipments": null,
                "short_description": "",
                "size": null,
                "tags": null,
                "title": "",
                "upc": "",
                "url": "http://www.born3convert.com/lexington-cardigan-sweater-568.html",
                "weight": "0"
            }
        ],
        "weight": ""
    }
}

Export catalogue

Détails:

Cet épic regroupe les différents tickets liés à l'export du catalogue

Bannière confirmation de la synchronisation du catalogue

Détails:

En tant que marchand, lorsque j'exporte mon catalogue vers Oyst, une bannière apparaît m'indiquant où en est l'export.

  • Si l'export est en cours: indiqué le nombre de produits exportés

image

  • Si la synchronisation est terminée: indiqué que l'export est terminé

image

  • Si un problème survient lors de la synchronisation (ex mauvaise clé API, mauvaise url marchand, mauvais environnement par rapport à la clé API, etc) :

image

Formulaire Oyst

Détails:

En tant que marchand, quand je clique sur la section Oyst, il y a un formulaire pour la configuration et la synchronisation du catalogue

Pour le moment:

  • Renseignement de la clé API
  • Renseignement de l'environnement
  • Bouton synchronisation du catalogue
  • Bouton pour valider la configuration

Le bouton pour la synchronisation du catalogue est disponible uniquement si la clé API est enregistrée

Avant confirmation de la configuration:

image

Après confirmation de la configuration:

image

synchro ensemble des attributs d'une boutique chez Oyst

Détails:

Constat:

Pour créer une commande il faut matcher avec le bon produit configurable.
Pour ça il faut connaître l'ensemble des attributs associés au produit.
Si l'attribut d'un produit n'est pas connu, alors il n'apparait pas dans le BO marchand.

Il y a un champ dans le code de Mehdi qui liste l'ensemble des attributs.

To Do:

Dans un premier temps, remplir la liste des attributs avec l'ensemble des attributs existants dans la boutique du marchand.

Si c'est trop lourd (bcp d'attributs sont inutiles en soi), proposer une liste dans la configuration du module ou le marchand sélectionne quel attribut il pousse chez Oyst.

image

QA zip 1.0.0-9 certains produits ne descendent pas dans le BO magento

Quand j'achete en un clic un produit dématérialié, je n'ai pas la descente de commande malgré le mail de confirmation.
ex : http://www.born3convert.com/home-decor/books-music/alice-in-wonderland.html

{
    "product": {
        "amount_including_taxes": {
            "value": 500,
            "currency": "EUR"
        },
        "available_quantity": 9982,
        "categories": [
            {
                "title": "Books & Music",
                "is_main": false,
                "reference": "22"
            }
        ],
        "condition": "new",
        "cpa": 0,
        "description": "After a tumble down the rabbit hole, Alice finds herself far away from home in the absurd world of Wonderland. As mind-bending as it is delightful, Lewis Carroll’s 1865 novel is pure magic for young and old alike. 96pp. Downloadable as pdf.",
        "ean": "",
        "id": "41d25cdc-512e-4222-a6ab-ec2e16d86053",
        "images": [
            "http://www.born3convert.com/media/catalog/product/a/l/alice_wonderland.jpeg",
            "http://www.born3convert.com/media/catalog/product/a/l/alice_wonderland_1.jpg"
        ],
        "informations": {},
        "is_active": true,
        "is_discounted": false,
        "is_materialized": true,
        "isbn": "",
        "manufacturer": "",
        "merchant_id": "281fcf14-916e-44dd-89be-996966469478",
        "reference": "450",
        "related_products": null,
        "shipments": null,
        "short_description": "Adventures of a young girl in a fantasy world.",
        "size": null,
        "tags": null,
        "title": "Alice in Wonderland",
        "upc": "",
        "url": "http://www.born3convert.com/alice-in-wonderland.html",
        "variations": [],
        "weight": ""
    }
}

Il est en de même avec les chaussures :
ex: http://www.born3convert.com/accessories/shoes/suede-loafer-navy-555.html

{
    "product": {
        "amount_including_taxes": {
            "value": 31000,
            "currency": "EUR"
        },
        "available_quantity": 25,
        "categories": [
            {
                "title": "Shoes",
                "is_main": false,
                "reference": "20"
            }
        ],
        "condition": "new",
        "cpa": 0,
        "description": "Suede loafer. Contrast stitching. Leather lined. Imported.",
        "ean": "",
        "id": "5bdc6bd4-10bb-46dd-9491-3c5ebb3897c6",
        "images": [
            "http://www.born3convert.com/media/catalog/product/placeholder/"
        ],
        "informations": {
            "color": "Blue"
        },
        "is_active": true,
        "is_discounted": false,
        "is_materialized": false,
        "isbn": "",
        "manufacturer": "",
        "merchant_id": "281fcf14-916e-44dd-89be-996966469478",
        "reference": "365",
        "related_products": null,
        "shipments": null,
        "short_description": "Make a statement, even when relaxed and casual. The classic loafer design elevates even the most dressed down look.",
        "size": null,
        "tags": null,
        "title": "Suede Loafer, Navy",
        "upc": "",
        "url": "http://www.born3convert.com/suede-loafer-navy.html",
        "variations": [],
        "weight": "1"
    }
}

Le statut de ces commandes est en pending (pgadmin). Peut être que le probleme vient de la création de la commande côté magento qui plante, et le statut accepted ne passe pas

ETQM, je n'arrive pas a pousser le json shipments

ETQM, je sauvegarde la configuration avec le nouveau json shipments
Puis quand je clique sur envoyer les nouveaux shipments, je recois un message d'erreur

image

Dans l'ajax j'ai : Fatal error: Class 'Oyst_OneClick_Exception' not found in /home/bornconvtl/www/app/Mage.php on line 580

Acceptation automatique de commandes

@quentinjunior commented on Wed May 24 2017

Détails:

En tant que plugin Magento, lorsque j'enregistre une commande, elle passe automatiquement du statut PENDING à ACCEPTATION

Utilisation de la route PATCH v1/merchants/[merchant_id]/orders/[id] pour la mise à jour du statut d’une commande chez OYST.

QA zip 1.0.0 -9 remboursement ne fonctionne pas

ETQM, je clique sur le bouton annulation et remboursement.
Côté BO magento, j'ai bien le changement de statut mais cela ne se met pas à jour côté freepay ni côté pgadmin.
image

image

staut pgadmin : accepted

bouton cancel_or_refund

ETQM quand je clique sur le bouton, cela fct mais cela créé un refund offline sur le BO magento.
Ce n'est pas bloquant pour le moment mais cela n'est pas propre et cela va créé des problèmes lorsque le fraud scoring sera mis en place sur le 1-clcik.

L'idée est de déplacer ce bouton et de le mettre dans invoice pour le remboursement.

Puis de faire un bouton uniquement annulé quand le fraud scoring sera présent.

Générer l'url de paiement 1-Click Api via la lib php

Détails:

Le module Oyst est un SDK fourni par Oyst qui s’installera côté Backend.
Au clic de l’acheteur, la fonction OYST.getOneClickUrl appelle un entry point à définir chez le marchand, qui appelle à son tour en "server to server" la fonction définie dans le SDK avec les paramètres suivants qui permettent de déterminer les informations relatives à la commande :

{
  product_reference: 'cdiscount-123',
  sku_reference: 'cdiscount-123-456',
  user: {
  	email: '[email protected]'
  },
  quantity: 2
}

Cet appel permettra à Oyst de générer une url unique, d’une validité de 15 minutes. La réponse se présentera sous la forme suivante :

{
	url: "https://1click.oyst.com/pay?token=03f329983b86f7d9a9f5fef85305880101d5e302afafa20154d094b229f75773" 
}

Cette réponse sera gérée par le module Oyst. Aucun développement n’est donc à prévoir au-delà de l’intégration du SDK.

Doc:

https://one-click-api.readme.io/reference#le-module-oyst

créé un tableau avec les attributs systemes

ETQM, quand j'installe le module 1-click; les attributs créés par le marchand sont poussés chez Oyst. Cela permet la création de commande pour les produits qui ont ses attributs.

On propose au marchand de pousser d'autres attributs systèmes.

QA synchro catalogue

En tant que marchand, quand je clique sur synchroniser mon catalogue, j'ai un message "patienter", puis quand celui ci s'en va, le bouton est cliquable. C'est une fois que je fais F5 que le bouton est grisé.

De plus je ne vois pas l'export en cours (pas d'indicateur, js non chargé je pense)

quantité incrément

ETQU, j'incrémente de trois un produit puis je fais achetez en 1-click.
image
Dans la modale la quantité est à 1.

Attendu: dans la modale la quantité correspond au choix du user

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.