Mock Credit Card and Bank Numbers

Ezypay provides these mock credit card numbers for your testing purposes. Each sample payment number can be used to test a different test case reason as described below.

Credit Card Details:

Test Case ReasonActionMock Card Number
PaidSuccess4111111111111111 (or valid 16 digit Luhn algorithm)
Insufficient fundsPayment failed4556175161745153
Invalid detailsPayment failed5596398242217872
Invalid detailsRefund failed4024007157038612

Other failure reasons

Test Case ReasonActionMock Card Number
Expired cardPayment failed5500000000000004
Invalid payment methodPayment failed4868470817885831
Customer to contact bankPayment failed4237990879556339
limit exceededPayment failed4554831955801980

Example for the failed payment mapping codes:

{
  "failedPaymentReason": {
    "code": "insufficient_funds",
    "description": "Payment method has insufficient funds at the time of the transaction."
  },
  "paymentProviderResponse": {
    "code": "Refused",
    "description": "51: Insufficient funds/over credit limit / Not sufficient funds"
  }
}
{
  "failedPaymentReason": {
    "code": "expired_card",
    "description": "The credit card has expired. Please use a different payment method."
  },
  "paymentProviderResponse": {
    "code": "Refused",
    "description": "54: Expired card"
  }
}
{
  "failedPaymentReason": {
    "code": "invalid_payment_method",
    "description": "Payment method details are invalid. Please use a different payment method."
  },
  "paymentProviderResponse": {
    "code": "Refused",
    "description": "12: Invalid transaction"
  }
}
{
  "failedPaymentReason": {
    "code": "customer_to_contact_bank",
    "description": "Transaction rejected by customer's bank. Please use a different payment method or ask the customer to contact the bank."
  },
  "paymentProviderResponse": {
    "code": "Refused",
    "description": "05: Do not honor"
  }
}
{
  "failedPaymentReason": {
    "code": "limit_exceeded",
    "description": "Transaction exceeded the customer's payment method daily withdrawal or activity limit."
  },
  "paymentProviderResponse": {
    "code": "Refused",
    "description": "61: Exceeds withdrawal amount limit(s) / Withdrawal amount limit exceeded"
  }
}

Bank Account Details:

AU Bank Transactions

Potential Use CaseTransaction TypeBSBLast Four Digits of Account NumberBank Error CodeFailed transaction code
PaidPayment212200 (or any valid BSB111111111NANA
Insufficient funds for refundRefundNA16866insufficient_funds
Insufficient funds for paymentPaymentNA55966insufficient_funds
Payment stoppedPaymentNA15342authority_withdrawn
Account closedPaymentNA31193bank_account_closed
Customer deceasedPaymentNA22224authority_withdrawn
No account or incorrect account numberPaymentNA88115invalid_payment_method
Invalid BSB NumberPaymentNA88121invalid_payment_method
DeletedPaymentNA88137bank_system_error
Invalid User ID NumberPaymentNA88148ezypay_error

NZ Bank Transactions

Potential Use CaseTransaction TypeBankBranchAccount NumberSuffixBank Error CodeFailed transaction code
PaidSuccess389498006000000NANA
Account closedRefundNA0061686Lbank_account_closed
No authority loadedPaymentNA0231534Xauthority_withdrawn
Account not foundPaymentNA0223119Zinvalid_payment_method
Insufficient funds for paymentPaymentNA0035596Uinsufficient_funds
Authority cancelledPaymentNA0256890Cauthority_withdrawn
Account closedPaymentNA0432222Lbank_account_closed
Account transferredPaymentNA0237881Tbank_account_closed
Payment limit exceededPaymentNA0192494Elimit_exceeded

PayTo Account Details

📘

Important Note:

PayTo is only available for AU region. Please reach out to Ezypay before testing the PayTo simulated accounts.

PayTo Simulation accounts

Test Case ReasonActionMock BSB NumberMock Account NumberEmail / Phone number
PayId - Mandate creation success and payment success Mandate creation success
Payment success
[email protected] or
411111111
PayId - Mandate creation failure * Mandate creation failure[email protected] or
422222222
Mandate creation success and payment success Mandate creation success
Payment success
809501111111111
Mandate creation failure * Mandate creation failure 809502222222222
Invalid payment method Mandate creation success
Payment failure
809503333333333
Bank account closed Mandate creation success
Payment failure
809504444444444
Blocked account number (Customer to contact bank) Mandate creation success
Payment failure
809505555555555
Validate mandate service unavailable (Bank system error) Mandate creation success
Payment failure
809506666666666
Authority withdrawn Mandate creation success
Payment failure
809507777777777

❗️

Difference in receiving the invoice status changes

When testing on the sandbox environment, integrators must be aware that the transaction period when the invoice status is updated different compared to the production environment.

Sandbox behaviour

Cards: The integrators will received the status change within a few seconds.
Bank: The status will be updated the following day, as a backend job will automatically run the billing simulator the next day.

Production behaviour

Cards: The integrators will received the status change within a few seconds.
Bank: Bank transactions are processed at midday every business day (local time for the region). Transactions can take up to 3 business day before they are changed to success. If transactions are sent after midday they will be processed on the next available business day.

❗️

What action is required

Sandbox:

Once an invoice is returned with the "PAST_DUE" status, integrators will need to "REPLACE" the payment method using the "replace payment method" API before triggering the "retry invoice" API.

Production:

Depending if the payment method token is still valid or not, replacing the payment method token might not be required.