package stripe import "testing" func TestBuildPaymentLinkCreateParamsSetsBookingMetadataOnPaymentIntent(t *testing.T) { params, err := buildPaymentLinkCreateParams(CreatePaymentLinkParams{ Amount: 120.50, Currency: "EUR", BookingID: 42, Description: "Villa booking", PaymentMethodTypes: []string{"card"}, }) if err != nil { t.Fatalf("unexpected error: %v", err) } if params.Metadata["booking_id"] != "42" { t.Fatalf("payment link metadata missing booking id: %+v", params.Metadata) } if params.PaymentIntentData == nil { t.Fatal("payment intent data should not be nil") } if params.PaymentIntentData.Metadata["booking_id"] != "42" { t.Fatalf("payment intent metadata missing booking id: %+v", params.PaymentIntentData.Metadata) } }