He estado buscando una aplicacion para poder realizar los calculos de comision al enviar o recibir en Paypal, como no he podido conseguir algo de verdad completo me valia de Excel para poder realizar esta tarea. Resulta que al enviar por Paypal dinero se deduce una comsion la cual depende del pais de origen de la cuenta que envia y/o la que recibe, estos porcentajes van desde 2,5% hasta 5,4% más un fijo de 0,3$. Realizar este calculo en Excel es facil solo basta una formula parecida a la siguiente donde A1 contiene el monto enviado y A2 el porcentaje aplicado.

=A1*A2+0,3

Con esta formula obtendriamos el monto de comision que nos aplicaran, solo bastaria restar el resultado al monto enviado originalmente para saber cuanto se recibiria luego de aplicada la comision.

El siguiente caso es cuando se deberia enviar para recibir exactamente el monto deseado. Alli la formula seria algo mas larga pero igual nada que las matematicas no resuelvan, lo primero seria sacar la constante para obtener el calculo de la comision que se aplicaria para nuestro monto enviado. En Excel seria algo asi (Siguiendo A1 Monto enviado, A2 Porcentaje aplicado).

=A2/(1-A2)

Ya con este tendriamos el factor que multiplicariamos al monto inicial para deducir el monto que necesitamos enviar para obtenerlo. La formula seria la siguiente:

=((A1+0,3)*(A2/(1-A2)))+(A1+0,3)

Listo esto nos daria cuando debemos enviar basado en el porcentaje establecido, para poder recibir exactamente la cantidad inicial. Tampoco es muy complicado solo unas pocas formulas y un repaso de matematicas. Como siempre estaba ansioso por contar con una aplicacion para realizar rapidamente estas operaciones pero no la consegui asi que me puse manos a la obra con mi recien instalado Visual Studio 2015 a ver que tal.

Una parte importante es los Textbox de captura tanto del Monto como el Porcentaje, coloque un codigo de validacion para que solo aceptara numeros o el Backspace, igualmente como en mi region el separador de decimal es la coma (,) y no el punto, inclui un codigo para capturar si se presiona el punto y cambiarlo al vuelo por coma. Todo esto en el Evento KEYPRESS de los cuadro de textos.

        private void txtMonto_KeyPress(object sender, KeyPressEventArgs e)
        {
            base.OnKeyPress(e);

            if (e.KeyChar == '.')
            {
                e.KeyChar = ',';
            }

            // Revisa si es Presionado Backspace o un Numero.
            if (e.KeyChar != (char)8 && !char.IsNumber(e.KeyChar) && e.KeyChar != ',')
            {
                e.Handled = true;
            }
        }

Luego vendria el codigo para los calculos, en mi caso los coloque en en el evento CLICK de un Boton de procesamiento.

        private void btnProcesar_Click(object sender, EventArgs e)
        {
            double monto = 0;
            double porcentaje = 0;
            double comrec = 0;
            double recibe = 0;
            double comenv = 0;
            double envia = 0;
            double factor = 0;

            monto = Convert.ToDouble(txtMonto.Text);
            porcentaje = Convert.ToDouble(txtPorcentaje.Text)/100;

            comrec = (monto * porcentaje) + 0.3;
            recibe = monto - comrec;

            lblComRec.Text = string.Format("{0:#,##0.00}", double.Parse(Convert.ToString(comrec)));
            lblRecibe.Text = string.Format("{0:#,##0.00}", double.Parse(Convert.ToString(recibe)));

            factor = (1 * porcentaje) / (1 - (1 * porcentaje));
            envia = ((monto + 0.3) * factor) + (monto + 0.3);
            comenv = envia - monto;
            
            
            lblEnvia.Text = string.Format("{0:#,##0.00}", double.Parse(Convert.ToString(envia)));
            lblComEnv.Text= string.Format("{0:#,##0.00}", double.Parse(Convert.ToString(comenv)));


        }

Lo primero fue declarar las variables de tipo double, luego capturar los valores ingresados en los cuadros de textos para empezar a realizar las operaciones, las cuales luego se llevaran a las etiquetas colocadas para mostrar los resultados. Como ven las operaciones son las mismas planteadas en Excel, con los resultados esperados. En mi caso muestro en la misma pantalla para las dos necesidades.

Cualquier duda o recomendación para mejorar las formulas con gusto me dejan su comentario.

Si quieres probar mi version en HTML con un poco de JavaScript visita:
http://elviscortijo.com/calcupay/