Configura tu integración con Stripe

En este articulo te mostramos cómo puedes configurar la información que Stripe manda a Quaderno para emitir tus facturas correctamente.

Datos de facturación

Existen dos formas para indicar a Quaderno los datos de facturación de tu cliente: en el momento de recoger los datos de la tarjeta en tu frontend o directamente desde tu backend.

Si prefieres hacerlo desde tu frontend, puedes añadir la información de facturación de tu cliente en el momento de tokenizar su tarjeta con Stripe.js:

stripe =Stripe(stripePublishableKey); 
stripeCardElement = elements.create('card') 
stripeCardElement.mount('#card-container')  

stripe.createToken(stripeCardElement,{  
  name: $('#customer-name').val(),   
  address_line1: $('#address').val(),  
  address_city: $('#city').val(), 
  address_zip: $('#postal-code').val(),   
  address_country: $('#country').val(),
}).then(stripeResponseHandler);

Pero si prefieres hacerlo desde tu backend, puedes añadir los datos de facturación en el momento de crear el cliente con la API de Stripe. 

customer = Stripe::Customer.create(
  :name => 'Reynholm Industries Ltd.",
  :email =>'billing@reynholm.co.uk',
  :address =>{ 
    :line1 =>'123 Carenden Road',
    :line2 =>'Suite 201',
    :city =>'London',
    :state =>'London',
    :postal_code =>'EC5M 8AJ',
    :country =>'GB', # código ISO de 2 letras
  },
  :tax_info => { # opcional
    :tax_id => 'GB123456789',
    :type => 'eu_vat'
  },
  :metadata => { # opcional
    :contact_person =>'Maurice Moss'# persona de contacto (solo para empresas)
  },
  :source =>'tok_103NCO2eZvKYlo2Cc4lerc1E' # obtained with Stripe.js
)

Te recomendamos que, al menos, envíes el país y código postal para calcular el impuesto exacto que debemos aplicar a cada cliente. 

Existe una tercera forma de crear clientes en Stripe: usando Quaderno Checkout, nuestro formulario de compras con cálculo de impuestos en tiempo real.

Datos de la transacción

En el momento de crear el cargo o la suscripción en Stripe te recomendamos que, al menos, envíes la dirección IP del cliente que se registrará como evidencia de localización para cumplir con la ley de IVA digital. 

A continuación te mostramos un ejemplo en Ruby de cómo puedes enviar dicho dato:

Stripe::Charge.create(
  :amount =>2420, # importe total (impuestos incluidos)
  :currency =>'our',
  :customer => customer.id,
  :description =>'The Neverending Story, Michael Ende (EPUB)',
  :metadata => {
     :ip_address => request.ip 
  }
)  

customer.subscriptions.create(
  :plan =>'awesome',
  :tax_percent => 20,
  :metadata => {
    :ip_address => request.ip   
  }
)

Si necesitas calcular los impuestos que debes aplicar a un cargo o una suscripción, puedes hacerlo con nuestra API de impuestos.

Quaderno puede procesar cualquiera de los siguientes metadatos asociados a un cargo o una suscripción en Stripe. Todos ellos son opcionales.

Metadato Descripción
transaction_type Tipo de transacción: eservice, ebook o standard.
Por defecto, se aplicará el tipo que hayas seleccionado en la sección Configuración > Preferencias
sku Código de identificación del producto o servicio. Solo funciona para cargos puntuales.
tax_name Nombre del impuesto aplicado en la transacción. Por ejemplo: IVA.
tax_rate Valor de la tasa impositiva aplicada en la transacción. Por ejemplo: 21 para un impuesto del 21%. 
extra_tax_name Nombre del segundo impuesto. Por ejemplo: IRPF.
extra_tax_rate Valor del segundo impuesto.  Por ejemplo: -15.
ip_address Dirección IP del cliente
po_number Número de pedido
notes Observaciones que quieras añadir a la factura
tags Etiqueta las facturas al crearse. Por ejemplo: tag1,tag2,tag3.
Did this answer your question? Thanks for the feedback There was a problem submitting your feedback. Please try again later.

¿Todavía necesitas ayuda? Contacta con nosotros Contacta con nosotros