public SetExpressCheckoutOperation(ExpressCheckoutApi ec, string returnURL, string cancelURL)
     : base(ec)
 {
     RequestNVP.Method = "SetExpressCheckout";
     ReturnURL = returnURL;
     CancelURL = cancelURL;
 }
        public PaymentRequest(ExpressCheckoutApi.Operation o, int n)
        {
            this.o = o;
            this.n = n;
            this.m = 0;

            Action = PaymentAction.SALE;
        }
        public DoExpressCheckoutPaymentOperation(ExpressCheckoutApi ec, string token, string payerid, PaymentAction action)
            : base(ec)
        {
            RequestNVP.Method = "DoExpressCheckoutPayment";
            Token = token;
            PayerId = payerid;

            PaymentRequest(0).Action = action;
        }
 public OperationWithPaymentRequest(ExpressCheckoutApi ec)
     : base(ec)
 {
 }
            public Operation(ExpressCheckoutApi ec)
            {
                this.ec = ec;

                requestNVP = ec.createNVP();
            }
 public GetExpressCheckoutDetailsOperation(ExpressCheckoutApi ec, string token)
     : base(ec)
 {
     RequestNVP.Method = "GetExpressCheckoutDetails";
     Token = token;
 }
 /// <summary>
 /// Executa a operação no Sandbox ou em produção. Esse método existe para facilitar a modificação
 /// entre SandBox e produção, evitando ter que trocar todas as chamadas em pontos distintos do código.
 /// </summary>
 /// <param name='operation'>
 /// A operação que deverá ser executada.
 /// </param>
 private static void execute(ExpressCheckoutApi.Operation operation)
 {
     operation.sandbox().execute();
 }
 /// <summary>
 /// Configura a moeda e idioma da página de pagamento do PayPal.
 /// </summary>
 /// <param name='operation'>
 /// A operação que terá a moeda e idioma configurados.
 /// </param>
 private static void configureLocalization(ExpressCheckoutApi.Operation operation)
 {
     operation.CurrencyCode = CurrencyCode.BRAZILIAN_REAL;
         operation.LocaleCode = LocaleCode.BRAZILIAN_PORTUGUESE;
 }