Why do we get this error: First exception on row 0; first error: UNABLE_TO_LOCK_ROW, unable to obtain exclusive access to this record: 
This error message is often caused by other packages that are installed, workflows or custom coding and not necessarily by Payments2Us.
What this means is that a record is currently being updated by another user or process. I common cause of this is when multiple updates are performed on details records and an update also happens to the parent object. For example, an Apex Trigger updates two contacts and at the same time, a workflow field update also changes the contacts parent account.
If this is occurring a lot, then please check the following:
- Have you recently installed/updated another App Exchange Package like Rollup Helper or Declarative Lookup Roll-up Summaries (DLRS). Are you able to remove this for now to see if that reduces the occurrence.
- Have you added roll up summary field to any object.
- Have you had some custom code added/updated recently. If so, please get your developer to review their code. The following might be of interest: https://developer.salesforce.com/docs/atlas.en-us.apexcode.meta/apexcode/langCon_apex_locking_statements.htm
- Are you running the latest version of Payments2Us. If not, please upgrade.
- Have you recently added a workflow field update or a Process Builder with an update. If so, please disable and see if this reduces the occurance of this error.
If this error occurs a lot and all at once, then it could be a record is locked and that has not been cleared. This may go away in a few hours.
If you are still having issues, please forward the error to support @ payments2us.com