2011-04-28 1 views
2

J'ai une application Django qui utilise Satchmo en conjonction avec Authorize.net. Authorize.net est maintenant en charge de l'autorisation partielle pour les cartes MasterCard et Discover, comme indiqué here et here. Est-ce que quelqu'un sait si ces changements sont supportés par le module de paiement Authorize.net dans Satchmo? J'ai trouvé un mailing list thread sur le sujet, mais la réponse n'était pas claire à partir de cela.Le module de paiement Authorize.net de Satchmo prend-il en charge les autorisations partielles de MasterCard?

(J'ai posté cette même requête à la fois sur la liste des utilisateurs de Satchmo et sur la liste des développeurs de Satchmo, et j'ai demandé dans le canal IRC, sans réponse.Le projet Satchmo semble en grande partie mort, j'espère quelqu'un ici peut aider.)

Répondre

4

La réponse courte est non, le module Authorize.net de Satchmo ne prend pas en charge l'autorisation partielle prête à l'emploi. La réponse longue, cependant, est qu'il peut être plus facile que vous pensez de créer ce que vous voulez:

  1. This documentation décrit exactement ce dont vous avez besoin pour poster un paiement partiel au système Authorize.net :

    • Envoyer x_allow_partial_auth=true avec une transaction individuelle.
    • Lorsque la première transaction est approuvée avec succès pour un montant partiel de la commande totale, une ID d'offre fractionnée est générée et renvoyée. Vous devez renvoyer cette valeur dans les transactions suivantes avec x_split_tender_id=<value>. (Si vous incluez à la fois un ID d'appel d'offres de scission et un numéro de transaction sur la même demande, une erreur se produit.)
  2. The Satchmo documentation décrit comment créer des modules de paiement personnalisé.

Si vous regardez le code source pour le module de paiement Authorize.net dans /payment/modules/authorizenet/processor.py, vous pouvez voir la plupart du travail est déjà fait pour vous. Vous pouvez étendre cette classe Authorize.net ou simplement copier & coller le code dans un nouveau module, par exemple, /payment/modules/authorizenetpartial/ et effectuer les ajustements comme indiqué dans la documentation Authorize.net. Il suffit de remplacer ce x_split_tender_id à la place de votre x_trans_id, et peut-être quelques autres tweaks d'essai-erreur, et vous devriez être bon à faire.

+0

Lien vers le document est cassé, le trouver [ici] (http://developer.authorize.net/guides/AIM/wwhelp/wwhimpl/js/html/wwhelp.htm) –

+0

Merci @UdaySawant, j'ai mis à jour à un lien direct vers la documentation d'authentification partielle. – Kelly

Questions connexes