Where is the best place in a checkout flow to ask users to save the payment method?

In a checkout process, I need to show an option for the user to save their payment method info, to pay faster next time. Only registered users can save this info, so if a user wants to save they either have to sign in or create an account. The checkout form is a single form, no steps.

Two options come to mind:

  1. After the user enters payment info, before sending to payment. This will trigger a modal window to sign in or register.
  2. After payment is processed, on the success screen.

There are pros and cons to either of these, but i'm curious to hear what you think.