2012-01-26 1 views
1

J'apprécierais toute aide avec ceci, j'ai couru en rond essayant toutes sortes de combinaisons avec l'api de PayPal - mais je frappe un mur de brique sur ceci un.PayPal Sandbox - L'appel de CreateBillingAgreement renvoie Erreur interne (10001)

Je cherche à appeler la méthode CreateBillingAgreement mais chaque fois que je le fais échoue et signale une 'erreur interne' 10001 de paypal dans la réponse. J'ai un jeton valide et j'utilise la version 84.0. J'ai appelé avec succès SetupExpressCheckout et DoExpressCheckout, les deux qui réussissent et le paiement passe. Je configure un futur paiement/pré-autorisation sur le SetupExpressCheckout et l'utilisateur accepte cela pas de problèmes. Dois-je modifier les paramètres du marchand dans le bac à sable? Est-ce que j'appelle les choses dans le mauvais ordre peut-être? (SetExpress, GetExpress, DoExpress, CreateBilling)?

Je cherche à utiliser cette entente de facturation pour permettre une transaction de référence dans le futur. Je fais un compte de test 'pay' en paypal et je ne transfère aucun détail de carte de crédit, le paiement est pour un service numérique sans livraison (aucune expédition n'est fixée, aucune adresse ou frais de livraison ne sont impliqués). L'objectif général est de fournir un bouton de réapprovisionnement en un clic, dans lequel aucun détail ne doit être saisi par le client. J'utilise l'API C# dans asp.net 4, ou plus précisément j'ai créé des références de service à partir du payload sandbox wsdl et je les utilise dans asp.net.

Toute aide est appréciée - merci.

Russell.

Répondre

3

Vous n'avez pas besoin d'appeler CreateBillingAgreement si vous spécifiez le type de facturation MerchantInitiatedBilling dans votre appel API SetExpressCheckout et DoExpressCheckoutPayment. CreateBillingAgreement est seulement nécessaire si vous ne voulez pas appeler DoExpressCheckoutPayment.
Si MerchantInitiatedBilling est défini, DoExpressCheckoutPayment renvoie déjà un ID de contrat de facturation que vous pouvez utiliser dans DoReferenceTransaction.

Je n'ai pas accès à un exemple à portée de main, mais je mettrai à jour ce post dès que j'en aurai trouvé un pour vous.

+0

Parfait - merci beaucoup. Je n'obtenais pas l'ID d'accord de facturation dans la réponse "do", mais je n'avais pas défini MerchantInitiatedBilling! :) merci encore Robert. – HonkIfYouLikeChips

Questions connexes