- 
                Notifications
    You must be signed in to change notification settings 
- Fork 42
Description
Is your feature request related to a problem? Please describe.
Yes. While using the Adyen Drop-in for React Native with the SEPA Direct Debit payment method, the onSubmit callback is triggered correctly after the user enters their name and IBAN and taps "Pay".
However, in our use case, we run custom validation logic in onSubmit — and depending on conditions, we may want to reject the submission, display a custom error message, and allow the user to correct their input and try again.
Currently, there's no supported way to:
Prevent the form from closing
Show a custom error message back on the SEPA form
Reset the form or return it to a clean state for re-entry
Control the loading state of the "Pay" button
Because the SDK auto-dismisses or locks the form once onSubmit completes, the user experience cannot be gracefully recovered from a validation failure.
Describe the solution you'd like
I would like to request:
Ability to return an error from onSubmit that causes the Drop-in to:
Stay on the SEPA screen
Show a custom error message (e.g., "IBAN failed internal validation")
Optionally clear or retain the existing form values
An API like:
dropInComponent.showValidationError(message: string)
dropInComponent.resetForm()
Or ability to return something like:
return {
  action: 'reject',
  errorMessage: 'Your IBAN is invalid',
  resetForm: true, // or false to keep values
}
Optional: expose a way to manually control loading spinner state on the "Pay" button (to avoid flickers or double loading)
Describe alternatives you've considered
We tried showing a global error or alert, but the SEPA form is already locked or dismissed.
Reopening the Drop-in is not user-friendly and forces users to re-enter all details.
Building the SEPA form ourselves is not possible, as there’s no standalone UI component exposed for SEPA in the React Native SDK.
Additional context
We have shown the custom error in the toast style but not able to control the form or loading state of action button.
