Reach out to local credit unions or even smallish bank. They usually are middleman to firstdata, chase paymentech etc. But you get a dedicated account rep at cost of nominal monthly fee. Rates usually are competitive often lower than what stripe and paypal offers.
Implement it all yourself and have the UI be awful is not a good solution. Stripe takes about 1 day to set up. Getting a meeting with an interested bank or credit union could easily take 1 month.
Reach out to local credit unions or even smallish bank. They usually are middleman to firstdata, chase paymentech etc. But you get a dedicated account rep at cost of nominal monthly fee. Rates usually are competitive often lower than what stripe and paypal offers.