Since the requirement is to make a callout to an external ERP system when an Account is created and still allow for the Account creation even if the call fails, a Queueable class called from a trigger is the best solution. Queueable Apex allows you to submit jobs for asynchronous processing similar to future methods but with additional benefits such as chaining jobs and monitoring the job status. By using a Queueable, the callout can be made after the Account is created, which respects the Salesforce order of execution and avoids the limitation of callouts not being allowed after DML operations in the same transaction. This approach also does not block the user interface or the creation of the Account record if the callout to the ERP system takes a long time or fails. References: Salesforce Documentation on Queueable Apex: Using Queueable Apex to Perform Jobs Salesforce Developer Guide on Asynchronous Apex: Queueable Apex