Uniquely identifying transfers

Increase's money movement APIs include an optional creation parameter called unique_identifier. This string parameter should be a unique value you pre-allocate in your system before invoking the Transfer creation method.

You cannot re-use a unique_identifier across two transfers. If you attempt to create a second transfer with an already used unique_identifier, you'll receive an HTTP 409 Conflict error with the type field set to unique_identifier_already_exists_error and the resource_id set to the ID of the Transfer that is associated with the unique_identifier.

You can fetch a Transfer by its unique_identifier by using the List endpoint and filtering with the optional parameter unique_identifier. This returns a list containing either the one matching Transfer or an empty list.

Transfers always include their unique_identifier when fetching or listing them from the Increase API. If you want to associate a Transfer with a specific Invoice, Order, or Payment in your systems, we recommend including the ID in your system as the unique_identifier attribute at Increase.

Recovering from errors

If you receive an HTTP 400, HTTP 500, or connection error when creating a Transfer, you can use the unique_identifier field to automatically recover from the error. You have several options:

  1. It's safe to retry a request that may have failed if you set the unique_identifier parameter in both the initial call and the second attempt. If the original transfer request was successful, the second attempt will result in a descriptive error that includes the ID of the created object.
  2. A system or operator can fetch a Transfer by its unique_identifier and determine if the object was created at Increase and what its id is.

A unique_identifier persists forever, so this information is never lost and retries are always safe. This is different from Increase's Idempotency-Key HTTP Header, which is more useful for intermittent connection issues and automatic library-level retries.

Supported transfer types

  • Account Transfers
  • ACH Transfers
  • Check Transfers
  • Real-Time Payments Transfers
  • Wire Transfers