uuid('id')->primary(); $table->string('slug')->unique(); $table->timestamps(); }); Schema::create('available_payment_methods', function (Blueprint $table) { $table->id(); $table->string('tenant'); $table->string('slug'); $table->string('name'); $table->string('description')->nullable(); $table->boolean('active')->default(true); $table->timestamps(); $table->foreign('tenant')->references('slug')->on('tenants')->restrictOnDelete()->cascadeOnUpdate(); $table->foreign('slug')->references('slug')->on('payment_methods')->restrictOnDelete()->cascadeOnUpdate(); $table->unique(['tenant', 'slug']); }); } public function down(): void { Schema::dropIfExists('available_payment_methods'); Schema::dropIfExists('payment_methods'); } };