This course is still being released! Check back later for more chapters.

Get Notified About this Course!

We will send you messages regarding this course only
and nothing else, we promise.
You can unsubscribe anytime by emailing us at:
privacy@symfonycasts.com
> Symfony 7 >

Course Overview

Login to bookmark this course

Procesador de Pagos con Lemon Squeezy

Kickstart your e-commerce journey with Lemon Squeezy integration in Symfony. Build a full checkout system to sell your digital products with a merchant of record to handle global tax compliance with ease

  • intermediate
  • 134 students
  • EN/ES Captions
  • EN/ES Script
  • Certificate of Completion

Your Guides

About this course

What PHP libraries does this tutorial use?

// composer.json
{
    "require": {
        "php": ">=8.2",
        "ext-ctype": "*",
        "ext-iconv": "*",
        "doctrine/dbal": "^3", // 3.9.4
        "doctrine/doctrine-bundle": "^2.13", // 2.13.2
        "doctrine/doctrine-migrations-bundle": "^3.4", // 3.4.1
        "doctrine/orm": "^3.3", // 3.3.2
        "symfony/asset": "7.2.*", // v7.2.0
        "symfony/asset-mapper": "7.2.*", // v7.2.3
        "symfony/console": "7.2.*", // v7.2.1
        "symfony/dotenv": "7.2.*", // v7.2.0
        "symfony/flex": "^2", // v2.5.0
        "symfony/form": "7.2.*", // v7.2.4
        "symfony/framework-bundle": "7.2.*", // v7.2.4
        "symfony/http-client": "7.2.*", // v7.2.4
        "symfony/runtime": "7.2.*", // v7.2.3
        "symfony/security-bundle": "7.2.*", // v7.2.3
        "symfony/stimulus-bundle": "^2.22", // v2.23.0
        "symfony/twig-bundle": "7.2.*", // v7.2.0
        "symfony/validator": "7.2.*", // v7.2.4
        "symfony/webhook": "7.2.*", // v7.2.0
        "symfony/yaml": "7.2.*", // v7.2.3
        "symfonycasts/tailwind-bundle": "^0.7.1", // v0.7.1
        "twig/extra-bundle": "^2.12|^3.0", // v3.20.0
        "twig/twig": "^2.12|^3.0" // v3.20.0
    },
    "require-dev": {
        "doctrine/doctrine-fixtures-bundle": "^4.0", // 4.0.0
        "phpunit/phpunit": "^9.5", // 9.6.22
        "symfony/browser-kit": "7.2.*", // v7.2.0
        "symfony/css-selector": "7.2.*", // v7.2.0
        "symfony/maker-bundle": "^1.62", // v1.62.1
        "symfony/phpunit-bridge": "^7.2", // v7.2.0
        "symfony/stopwatch": "7.2.*", // v7.2.4
        "symfony/web-profiler-bundle": "7.2.*", // v7.2.4
        "zenstruck/foundry": "*" // v2.3.8
    }
}

Note

Hay varias opciones para el servicio MoR, en este curso utilizamos Lemon Squeezy, pero puedes utilizar lo que enseñamos aquí en Paddle, Polar, o cualquier otro servicio que te guste. No tenemos ninguna preferencia, simplemente elegimos Lemon Squeezy para este curso.

¿Tienes un producto increíble que quieres vender a tus clientes? ¿Buscas un procesador de pagos que sea un Merchant of Record que se encargue del cumplimiento de las obligaciones fiscales para que puedas centrarte en obtener más ingresos? ¡Lemon Squeezy al rescate! Empieza a vender tus productos digitales de forma rápida y sencilla.

En este tutorial, crearemos un sistema de pago completo para nuestro impresionante producto y aprenderemos todo sobre los siguientes temas:

  • Gestiona tu tienda en el panel de control de Lemon Squeezy
  • Uso de la vitirna de Lemon Squeezy para vender productos
  • Cobrar una tarifa única con pagos únicos
  • Utiliza la API para hablar con Lemon Squeezy y vender productos directamente desde tu sitio web
  • Utiliza el script Lemon.js para transmitir el flujo de trabajo de pago a través de la superposición
  • Rellena previamente la información del cliente y añade datos personalizados
  • Facturación automática por correo electrónico cuando el pedido se realiza correctamente
  • Vincula los clientes de Lemon Squeezy a los usuarios de nuestra base de datos
  • Utiliza webhooks para sincronizar datos en nuestra base de datos
  • Manejo del evento webhook order_created
  • Manejo de webhooks en vivo con Ngrok
  • Prueba los webhooks simulando su envío con datos falsos

Por último, un extra: las credenciales de las tarjetas de los usuarios nunca se envían a nuestros servidores, sino directamente a Lemon Squeezy. Eso significa que no guardamos credenciales de tarjetas sensibles en nuestros servidores. ¡Sí!

Next courses in the Symfony 7: Learn More Tricks section of the Symfony 7 Track!

9 Comments

Sort By
Login or Register to join the conversation

So excited about this course!
In advance, Thanks heaps for all the effort creating it.

1 | Reply |

Hey John!

I'm thrilled to hear it! We're actively working on releasing it, so it should be released in full in a few weeks :)

Cheers!

2 | Reply |
Tac-Tacelosky avatar Tac-Tacelosky 3 days ago

What is the purpose of limiting PHP in composer.json?

    "platform": {
        "php": "8.2"
    },

The problem is that I don't have all the extensions loaded, including sqlite, so when I run symfony server:start, it fails, but when I run bin/console doctrine:fixture:load, etc. it works fine (obviously, symfony console will fail). And the application works fine in PHP 8.4. So what's the benefit to restriction it to 8.2?

| Reply |

As discussed privately with @Tac-Tacelosky, the issue was using the GitHub repo not the "Download Course Code" zip file we recommend. This code has this restriction removed.

| Reply |

Hey @Tac-Tacelosky

That's a good question. It is useful to force Composer to install packages compatible with that PHP version, which brings stability to the project. You can try pumping it up to version 8.4, it will likely work, but there may be some incompatible packages - you could remove it as well

Cheers!

| Reply |
Tac-Tacelosky avatar Tac-Tacelosky MolloKhan 2 days ago

I understand, but I don't agree that it's valuable to have. I just want to do "composer install" and have it work. Not change my PHP version, or change the code to allow it to run. Especially since it does work with 8.4!

I'd rather have it break (and report the errors) than force me to use a version of PHP that doesn't have all the extensions installed.

| Reply |

Good point! I also think the course code should not come with that version constraint. I'll share your feedback with the team

Thanks!

| Reply |

This is great! I can't wait for the subscriptions course too :)

| Reply |

Hey Skm,

Thanks for your interest in SymfonyCasts tutorials! :)

Cheers!

1 | Reply |

Delete comment?

Share this comment

astronaut with balloons in space

"Houston: no signs of life"
Start the conversation!