Aceptar Tarjetas de Crédito con Shopify en Chile

Shopify es un servicio de plataforma eCommerce en línea, es decir, una herramienta que se puede utilizar sin necesidad de ser comprada y únicamente se paga de manera mensual o anual por su uso orientada a personas o empresas que quieren vender sus productos o servicios.

Si llegaste a este post es debido a que ya tienes una tienda eCommerce con Shopify o simplemente estás experimentando alternativas a lo que ya tienes. Si no es así la verdad no se por qué estás acá :P.

En el último tiempo son bastantes las personas que me han consultado si sabía de alguna forma de recibir pagos de manera eficaz y efectiva con tarjetas de crédito y/o débito chilenas con Shopify y la verdad es que no supe que contestarles hasta ahora.

Antes de continuar debes de tener una cuenta en Shopify para poder comenzar a vender, si no tienes una por favor haz click en el siguiente link .

Leer más

Actualizar Elastic BeanStalk Enviroment para usar PHP7.0 con eb-cli

AWS Elastic Beanstalk es un servicio fácil de utilizar para implementar y escalar servicios y aplicaciones web.

Ahora veremos como hacer el upgrade de la versión de PHP de un servicio ( enviroment ) ya corriendo.

Antes de hacerlo :

  1. Ya debes de estar familiarizado con lo que es ElasticBeanstalk.
  2. Debes de tener los comandos de consola de EB instalasdos ( EB-CLI ).
  3. Asumiremos el upgrade desde una máquina con consola linux.

Creando la configuración inicial.

Antes que todo nos situamos en la carpeta de la aplicación de la cual haremos el upgrade y ejecutamos el comando eb init. Si ya lo habíamos hecho anteriormente usaremos la opción de «interactive» como fue mi caso. Resaltaré en negrita la selección del menú correspondiente.

ctala@BeaTriX-CTMGroup:~/REPOS/tbk-aas-server$ eb init --interactive

Select a default region
1) us-east-1 : US East (N. Virginia)
2) us-west-1 : US West (N. California)
3) us-west-2 : US West (Oregon)
4) eu-west-1 : EU (Ireland)
5) eu-central-1 : EU (Frankfurt)
6) ap-south-1 : Asia Pacific (Mumbai)
7) ap-southeast-1 : Asia Pacific (Singapore)
8) ap-southeast-2 : Asia Pacific (Sydney)
9) ap-northeast-1 : Asia Pacific (Tokyo)
10) ap-northeast-2 : Asia Pacific (Seoul)
11) sa-east-1 : South America (Sao Paulo)
12) cn-north-1 : China (Beijing)
(default is 3): 

Select an application to use
1) APP1
2) APP2
3) APP3
4) [ Create new Application ]
(default is 3): 3
Select the default environment. 
You can change this later by typing "eb use [environment_name]".
1) APP3-devel
2) APP3-prod
(default is 1): 2

Select a platform.
1) Node.js
2) PHP
3) Python
4) Ruby
5) Tomcat
6) IIS
7) Docker
8) Multi-container Docker
9) GlassFish
10) Go
11) Java
(default is 1): 2

Select a platform version.
1) PHP 5.4
2) PHP 5.5
3) PHP 5.6
4) PHP 7.0
5) PHP 5.3
(default is 1): 4

Con esto lo que hacemos es decirle a beanstalk como funcionar. Si se creara la aplicación desde cero partiría de inmediato con php7, pero como no es nuestro caso lo que haremos primero es guardar la configuración de nuestro enviroment según lo que tenemos en la nube.

Creando y editando la configuración del enviroment.

ctala@BeaTriX-CTMGroup:~/REPOS/tbk-aas-server$ eb config save app3-prod --cfg app3-prod-config

Configuration saved at: /home/ctala/REPOS/app3/.elasticbeanstalk/saved_configs/app3-prod-config.cfg.yml

Una vez guardada la configuración por defecto la editaremos según lo que necesitemos. En nuestro caso buscamos la línea que define el Stack a ocupar y la editamos.

Cambiaremos esto :

SolutionStack: 64bit Amazon Linux 2016.03 v2.1.3 running PHP 5.6

Por esto

SolutionStack: 64bit Amazon Linux 2016.03 v2.1.3 running PHP 7.0

Si, solo cambiaremos la parte donde sale la versión de PHP. En este caso es sencillo ya que el SolutionStack existe y se llama de esa manera.

Actualizando la configuración en la nube.

Ya teniendo nuestra nueva configuración lo que debemos hacer es subirla a amazon y luego cargarla.

ctala@BeaTriX-CTMGroup:~/REPOS/app3$ eb config put app3-prod-config
ctala@BeaTriX-CTMGroup:~/REPOS/app3$ eb config app3-prod --cfg tbk-aas-server-prod-config 
Printing Status: INFO: Environment update is starting.                                
INFO: Updating environment app3-prod's configuration settings. 
INFO: Created Auto Scaling launch configuration named: awseb-e-4g3mx5ymyq-stack-AWSEBAutoScalingLaunchConfiguration-16CD5LSR5ERIN INFO: Auto Scaling group update progress: Rolling update initiated. Terminating 1 obsolete instance(s) in batches of 1, while keeping at least 1 instance(s) in service. Waiting on resource signals with a timeout of PT30M when new instances are added to the autoscaling group. 
INFO: Auto Scaling group update progress: Temporarily setting autoscaling group MinSize and DesiredCapacity to 2. 
INFO: Environment health has transitioned from Ok to Info. Configuration update in progress (running for 30 seconds). 
INFO: Auto Scaling group update progress: New instance(s) added to autoscaling group - Waiting on 1 resource signal(s) with a timeout of PT30M. 
INFO: Added instance [i-051d72f3a5ba93b63] to your environment.      INFO: Still waiting for the following 1 instances to become healthy: [i-051d72f3a5ba93b63]. 
INFO: Deleted Auto Scaling launch configuration named: awseb-e-4g3mx5ymyq-stack-AWSEBAutoScalingLaunchConfiguration-10200GU7CE7MB 
INFO: Successfully deployed new configuration to environment.

Ahora así de simple hemos actualizado el enviroment para que use la versión de php7 sin tener downtime y manteniendo los servicios relacionados como pueden ser las bases de datos.

Espero que les sirva !

Una mirada al e-Rut Chileno. ¿ Qué es y cómo se usa ?

El eRUT consiste en un archivo electrónico que puede ser impreso y/o guardado, y también exhibido por el usuario a través de celulares y dispositivos móviles, para ser utilizado en transacciones comerciales y/o en trámites que así lo requieran.

Origen: Cédula RUT en Papel

Hace casi ya un mes que el e-Rut comenzó su funcionamiento en Chile, pero hoy fue el primer día en el cual le pude dar un uso real.

Hoy es de esos días que quería sacar a almorzar a mi equipo de trabajo y no andaba con la cédula de la empresa, por lo que recordando que este mes había iniciado el funcionamiento del e-Rut decidí darle una prueba.

Leer más

Agregando un repositorio privado de GitHub a Composer

Composer

Como agregar un repositorio privado de github a nuestro proyecto utilizando composer para manejar los repositorios usando el token oauth.

Hace poco que tengo algunos proyectos privados en GitHub ya que estaba bastante acostumbrado a usar Bitbucket para esto. La razón de la migración es que había tenido problemas con la carga de las librerías privadas usando Composer desde Bitbucket así que le di una oportunidad a GitHub.

Para los que no saben Composer es repositorio de librerías para php que maneja las dependencias de tus proyectos. Es bastante útil para no reusar código y manejar las actualizaciones de todas tus aplicaciones simplemente con un «Update».

De manera simple se crea un archivo composer.json en donde está la información básica del proyecto y sus dependencias.

Para poder agregar un repositorio privado necesitamos lo siguiente.

  1. Generar el Token para el acceso desde GitHub
  2. Crear el composer.json que usará el repositorio privado
  3. Agregar nuestro token.
  4. Installar las dependencias.

Generando el token de acceso.

Fuente : https://help.github.com/articles/creating-an-access-token-for-command-line-use/

  1. Una vez ingresado a tu dashboard de GitHub selecciona tu foto de perfil en la esquina superior derecha y en el menú que aparece haz click en Settings.
  2. Una vez en Settings hacemos click en «Personal Access Tokens»
  3. Creamos un nuevo token dándole el nombre y los permisos correspondientes.
  4. Guardamos el token recién creado.

Generando un composer.json mínimo.

{
    "repositories": [
        {
            "type": "vcs",
            "url": "[email protected]:NAITUSEIRL/NOMBRELIBRERIA.git"
        }
    ],
    "require": {
        "ctala/NOMBRELIBRERIA": "dev-master"
    }

}

En el ejemplo anterior simplemente agregamos el repositorio privado que usaremos. Cuando se específica el tipo de repositorio VCS se hace para que se detecte automáticamente a que tipo de repositorio corresponde.

Es importante usar la notación de ssh (git@github) y no de https para la dirección del repositorio o este simplemente no funcionará.

Agregando el token a la configuración.

Agregar el token es bastante sencillo debido a que Composer ya tiene una herramienta que nos ayuda para esto. En este caso simplemente ejecutamos :

$ composer config -g github-oauth.github.com TOKENBASTANTELARGO

Esto permite que podamos acceder al repositorio privado agregado anteriormente con el access token.

Finalizando.

Ya teniendo todo en orden nos vamos a nuestra carpeta en donde tenemos nuestro composer.json y simplemente ejecutamos la instalación de las librerías.

$ composer install

Si todo salio bien se descargarán todas las librerías de dependencia incluyendo la privada que especificamos en el repositorio.

Yii2 Implementando Access Token para Autenticación REST

Los métodos de autenticación son los que nos permiten saber si un usuario pertenece a un sistema o no, generalmente cuando accedemos a algunas de nuestras cuentas de correo, facebook, etc lo que nosotros hacemos es autenticarnos con el servicio con nuestro usuario y clave. En este caso usaremos un Access Token para poder acceder a la aplicación.

Cuando usamos APIs en general, podemos acceder a la información de un servicio de una manera bastante sencilla. Nos gustaría que esto fuera por personas que tienen al menos una cuenta en el sistema o servicio.

En este caso veremos como implementar un access token para poder autentificarnos con la aplicación sin usar usuario o clave, lo que nos hará más sencillas las consultas.

Leer más