Testing Bank Transfer Payments

In your demo environment, create a test payment with the following data:

1. Payer information (Magic Values)

Use any placeholder data you'd like for the required payer information.

For the payer's first name use one of the magic values depending on the scenario you want to test:

Successful Payment - realistic disbursement

This scenario simulates a successful payment that moves into delivered after 24 hours. This is a realistic scenario since payments get disbursed every 24 hours. If you create multiple test payments like this, you create a realistic disbursement file that contains multiple payments.

Payer's First Name Payment Flow Callbacks you will receive
SANDBOX_TO_GUARANTEED_STATUS

Initiated > Processed > Guaranteed > (after 24 hours) Delivered

Initiated

Processed

Guaranteed

After 24 hours:

Delivered

Successful Payment - disbursed immediately

This magic value moves a payment into delivered immediately.

Be aware that this is not a realistic payment behavior and creates disbursement files that contain only one payment, since every time a payment is moved to Delivered a new disbursement file is generated. Usually, all payments for the day get bundles into one disbursement file.

 

Payer's First Name Payment Flow Callbacks you will receive

SANDBOX_TO_DELIVERED_STATUS

Initiated > Processed > Guaranteed > Delivered

Initiated

Processed

Guaranteed

Delivered

Unsuccessful Payment - cancelled payment

This can happen for any payment method when then payment gets cancelled by you, the payer, or by Flywire.

 

Payer's First Name Payment Flow Callbacks you will receive
SANDBOX_TO_CANCEL_STATUS

Initiated > Cancelled

Initiated

Cancelled

Successful Payment - with simulated successful verification

This can happen for any payment method if a manual review (for example document collection or quality checks) is necessary.

This magic value simulates a payment that fails automated checks and gets routed to manual review which ends up being successful.

The manual compliance review time is simulated as 2 hours, but note that the actual duration on a real compliance review differs depending on the necessary reviews.

 

Payer's First Name Payment Flow Callbacks you will receive
SANDBOX_TO_VERIFICATION Initiated > Processed > after 2 hoursGuaranteed

Initiated

Processed

After 2 hours:

Guaranteed

Unsuccessful Payment - with simulated failed verification

This can happen for any payment method if document collection or quality checks fail and cannot be manually corrected by contacting the payer.

The magic value simulates a payment that fails automated checks and gets routed to manual review and fails the check.

The manual compliance review time is simulated as 2 hours, but note that the actual duration on a real compliance review differs depending on the necessary reviews.

 

Payer's First Name Payment Flow Callbacks you will receive
SANDBOX_TO_VERIFICATION_FAILED

Initiated > Processed > after 2 hours Cancelled

Initiated

Processed

After 2 hours:

Cancelled

Re-initiated Cancelled Payment

This can happen for payments made via bank transfer, card, or alternative payment methods.

In some edge cases, the Cancelled status isn't final. It is important to ensure that your platform can handle callbacks that occur after cancelled.

When can this happen?

  • For bank transfer:

    A bank transfer is automatically cancelled if Flywire doesn't receive the funds in time. However, if the payer sent funds but they did not arrive before the cancellation or there was a bank delay, Flywire will re-initiate and process the payment if the FX rate is similar. This moves a payment from cancelled back through the standard flow.

  • For payment via card and alternative payment methods:

    If the third-party caused the payment to go into cancelled even though the transaction was successful, Flywire is able to re-initate the payment.

Payer's First Name Payment Flow Callbacks you will receive
SANDBOX_CANCELLED_BACK_TO_PROCESS_STATUS

Initiated > Cancelled > Initiated > Processed > Guaranteed > Delivered

Initiated

Cancelled

Initiated

Processed

Guaranteed

Delivered

This can happen for payments made via any payment method.

After Flywire receives the funds, the transaction is flagged as suspicious and is placed on hold. The payment is manually checked to determine legitimacy. There can be two outcomes:

  • If the alert is deemed to be a false positive, Flywire will deliver the funds.

  • If the risk profile of the payment is deemed higher than Flywire thresholds allow (payment is deemed to be suspicious and/or the alert cannot be deemed a false-positive), the payment will be cancelled. Flywire will notify you and return the funds to the payer.

    Initiated > Processed > Guaranteed > Cancelled

Under- or Overpayment

This can only happen for bank transfer as the payment method (because the payment is completed manually outside of the Flywire platform). If the payer transfers a slightly wrong amount, the payment amount that is Guaranteed (and will be Delivered ) can be different from the Initiated amount.

The guaranteed amount will always be the same as the delivered amount.

Example:

  1. A payer books an exchange rate with Flywire to send $2000 via bank transfer.

  2. An initiated status and value of $2000 is sent to you via the callback notification.

  3. When the payer sends funds via online banking or at their physical bank, they send above or below the quoted amount of $2000. Flywire will accept this amount if it is within a specific threshold.

    Flywire amount change tolerances are:

    • 200.00 USD or equivalent under the booked exchange amount

    • 1000.00 USD or equivalent over the booked exchange amount

  4. If the payment is within these tolerances:

    A guaranteed status with an updated value in the amount parameter is sent to you via the callback notification.

    If the payment is outside of these tolerances (excessively under or over the initiated value):

    Flywire will contact you to ask if you would like to accept the payment or return it back to the payer. If this happens, the payment will be placed on hold and follow the payments on hold flow.

Payer's First Name Payment Flow Callbacks you will receive
SANDBOX_SMALL_UNDERPAYMENT_STATUS

Initiated ($2000) > Processed ($1950) > Guaranteed ($1950) > Delivered ($1950)

Initiated

Processed

Guaranteed

Delivered

SANDBOX_SMALL_OVERPAYMENT_STATUS

Initiated ($2000) > Processed ($2050) > Guaranteed ($2050) > Delivered ($2050)

Initiated

Processed

Guaranteed

Delivered

2. Payment option

Choose bank transfer as the payment option.

The bank transfer instructions will be displayed but you can ignore them, since at this point the payment has already been created and will move through the statuses according to the scenario you chose.

3. Check the results

You will receive callbacks according to the scenario you chose (see Payment Status Notifications for details).