Да, вы можете выставлять счета клиентам в Stripe, не используя их логику подписок.
Чтобы сделать это, вам нужно собрать информацию о карте на своем внешнем интерфейсе, а затем сохранить ее для клиента в Stripe;вы бы сохранили идентификатор этого клиента в своей базе данных.
Когда дело касается взимания платы с пользователя, вы можете попросить ваше приложение списать средства с сохраненной карты на клиента, которого вы создали в Stripe.
# Create a Customer:
customer = Stripe::Customer.create({
source: 'tok_mastercard',
email: 'paying.user@example.com',
})
# Charge the Customer instead of the card:
charge = Stripe::Charge.create({
amount: 1000,
currency: 'usd',
customer: customer.id,
})
# YOUR CODE: Save the customer ID and other info in a database for later.
# When it's time to charge the customer again, retrieve the customer ID.
charge = Stripe::Charge.create({
amount: 1500, # $15.00 this time
currency: 'usd',
customer: customer_id, # Previously stored, then retrieved
})
Подробнее
см.
https://stripe.com/docs/saving-cards