sepa-transaction-it

Get Started. It's Free
or sign up with your email address
sepa-transaction-it by Mind Map: sepa-transaction-it

1. DELETE Transactions

1.1. Delete SEPA Credit Transaction using ID

1.1.1. Delete a new SEPA credit transaction using ID as url parameter

1.1.1.1. Check that response code is 200

1.1.1.2. Check that status is "success"

1.1.1.3. Check that exchange-id is populated

1.1.1.4. Check that status is VOID

1.2. Delete SEPA Debit Transaction using ID

1.2.1. Delete a new SEPA debit transaction using ID as url parameter

1.2.1.1. Check that response code is 200

1.2.1.2. Check that exchange-id is populated

1.2.1.3. Check that status is VOID

1.2.1.4. Check that status is "success"

1.3. Delete a SEPA Transaction in status VOID

1.3.1. Delete a SEPA transaction that is in status VOID

1.3.1.1. Check that response code is 200

1.3.1.2. Check that status is "success"

1.3.1.3. Check that exchange-id is populated

1.3.1.4. Check that status is VOID

1.4. Delete a SEPA Transaction not in status PENDING

1.4.1. Delete a SEPA transaction that is not in status PENDING

1.4.1.1. Check that response code is 400

1.4.1.2. Check that status is "fail"

1.4.1.3. Check that exchange-id is populated

1.4.1.4. Check that error-message is good

1.4.1.5. Check that result code is "281"

1.4.1.6. Check that time-stamp is populated

1.4.1.7. Check that payloadType is "error"

1.5. Delete a SEPA Transaction with no ID as URL parameter

1.5.1. Delete a SEPA transaction that has no ID given as URL parameter

1.5.1.1. Check that response code is 405

1.5.1.2. Check that status is "fail"

1.5.1.3. Check that exchange-id is populated

1.5.1.4. Check that error-message is good

1.5.1.5. Check that result code is "092"

1.5.1.6. Check that time-stamp is populated

1.5.1.7. Check that payloadType is "error"

1.6. Delete a SEPA Transaction with non-existing ID as URL parameter

1.6.1. Delete a SEPA transaction that has as URL parameter an ID that does not exist

1.6.1.1. Check that response code is 404

1.6.1.2. Check that status is "fail"

1.6.1.3. Check that exchange-id is populated

1.6.1.4. Check that error-message is good

1.6.1.5. Check that result code is "287"

1.6.1.6. Check that time-stamp is populated

1.6.1.7. Check that payloadType is "error"

2. REFUND Transactions (With AccessKey)

2.1. createAValidRefundTest

2.1.1. Create a valid refund for a COMPLETED debit transaction test

2.1.1.1. Check header status code is 200

2.1.1.2. Check the body status code is 200

2.1.1.3. Check status is success

2.1.1.4. Check exchange-id is not null

2.1.1.5. Check the payload type is correct

2.1.1.6. Check the amount is correct

2.1.1.7. Check the type is correct

2.1.1.8. Check the status is correct

2.1.1.9. Check the customer-full-name is correct

2.1.1.10. Check the transaction-id is not null

2.1.1.11. Check the description is correct

2.1.1.12. Check the token-id is not null

2.1.1.13. Check the external-transaction-reference is not null

2.1.1.14. Check the execution-date is correct

2.1.1.15. Check the subtype is refund

2.2. createAValidRefundTest

2.2.1. Create a valid refund for a SETTLEDdebit transaction test

2.2.1.1. Check header status code is 200

2.2.1.2. Check the body status code is 200

2.2.1.3. Check status is success

2.2.1.4. Check exchange-id is not null

2.2.1.5. Check the payload type is correct

2.2.1.6. Check the amount is correct

2.2.1.7. Check the type is correct

2.2.1.8. Check the status is correct

2.2.1.9. Check the customer-full-name is correct

2.2.1.10. Check the transaction-id is not null

2.2.1.11. Check the description is correct

2.2.1.12. Check the token-id is not null

2.2.1.13. Check the external-transaction-reference is not null

2.2.1.14. Check the execution-date is correct

2.2.1.15. Check the subtype is refund

2.3. createARefundWhereADeclinedOneAlreadyExistsTest

2.3.1. Create a refund using the same original-transaction-id when a REJECTED refund already exists

2.3.1.1. Check header status code is 200

2.3.1.2. Check the body status code is 200

2.3.1.3. Check status is success

2.3.1.4. Check exchange-id is not null

2.3.1.5. Check the payload type is correct

2.3.1.6. Check the amount is correct

2.3.1.7. Check the type is correct

2.3.1.8. Check the status is correct

2.3.1.9. Check the customer-full-name is correct

2.3.1.10. Check the transaction-id is not null

2.3.1.11. Check the description is correct

2.3.1.12. Check the token-id is not null

2.3.1.13. Check the external-transaction-reference is not null

2.3.1.14. Check the execution-date is correct

2.3.1.15. Check the subtype is refund

2.4. tryRefundForInvalidDebitStatusReturnsError

2.4.1. Check that a refund request for a %s transaction returns an error

2.4.1.1. PENDING SETTLING RETURNED VOID UNPROCESSED WRITING DECLINED NOT_CONFIRMED SENT REJECTED FUNDED PARTIALLY_FUNDED DUPLICATE

2.4.1.1.1. Check the error message is correct

2.4.1.1.2. Check the header status code is 400

2.4.1.1.3. Check the body status code is 400

2.4.1.1.4. Check the status is fail

2.4.1.1.5. Check the exchange-id is not null

2.4.1.1.6. Check the payload-type is correct

2.4.1.1.7. Check the result-code is correct

2.4.1.1.8. Check the time-stamp is not null

2.5. tryRefundForDifferentAmountTest

2.5.1. Check refund with empty string amount

2.5.1.1. Check the error message is correct

2.5.1.2. Check the header status code is 400

2.5.1.3. Check the body status code is 400

2.5.1.4. Check the status is fail

2.5.1.5. Check the exchange-id is not null

2.5.1.6. Check the payload-type is correct

2.5.1.7. Check the result-code is correct

2.5.1.8. Check the time-stamp is not null

2.5.2. Check refund with non numeric amount

2.5.2.1. Check the error message is correct

2.5.2.2. Check the header status code is 400

2.5.2.3. Check the body status code is 400

2.5.2.4. Check the status is fail

2.5.2.5. Check the exchange-id is not null

2.5.2.6. Check the payload-type is correct

2.5.2.7. Check the result-code is correct

2.5.2.8. Check the time-stamp is not null

2.5.3. Check refund with 0 amount

2.5.3.1. Check the error message is correct

2.5.3.2. Check the header status code is 400

2.5.3.3. Check the body status code is 400

2.5.3.4. Check the status is fail

2.5.3.5. Check the exchange-id is not null

2.5.3.6. Check the payload-type is correct

2.5.3.7. Check the result-code is correct

2.5.3.8. Check the time-stamp is not null

2.5.4. Check refund with no decimal amount

2.5.4.1. Check the error message is correct

2.5.4.2. Check the header status code is 400

2.5.4.3. Check the body status code is 400

2.5.4.4. Check the status is fail

2.5.4.5. Check the exchange-id is not null

2.5.4.6. Check the payload-type is correct

2.5.4.7. Check the result-code is correct

2.5.4.8. Check the time-stamp is not null

2.5.5. Check refund with a different amount than debit one

2.5.5.1. Check the error message is correct

2.5.5.2. Check the header status code is 400

2.5.5.3. Check the body status code is 400

2.5.5.4. Check the status is fail

2.5.5.5. Check the exchange-id is not null

2.5.5.6. Check the payload-type is correct

2.5.5.7. Check the result-code is correct

2.5.5.8. Check the time-stamp is not null

2.6. tryRefundForADifferentMerchantTest

2.6.1. Try to create a refund using a different merchant from the original debit one

2.6.1.1. Check the error message is correct

2.6.1.2. Check the header status code is 400

2.6.1.3. Check the body status code is 400

2.6.1.4. Check the status is fail

2.6.1.5. Check the exchange-id is not null

2.6.1.6. Check the payload-type is correct

2.6.1.7. Check the result-code is correct

2.6.1.8. Check the time-stamp is not null

2.7. tryRefundWithAnInvalidDateTest

2.7.1. Try to create a refund using an invalid execution date

2.7.1.1. Check the error message is correct

2.7.1.2. Check the header status code is 400

2.7.1.3. Check the body status code is 400

2.7.1.4. Check the status is fail

2.7.1.5. Check the exchange-id is not null

2.7.1.6. Check the payload-type is correct

2.7.1.7. Check the result-code is correct

2.7.1.8. Check the time-stamp is not null

2.8. tryRefundWithLengthyDescriptionTest

2.8.1. Try to create a refund using a description that exceeds the allowed character limit

2.8.1.1. Check the error message is correct

2.8.1.2. Check the header status code is 400

2.8.1.3. Check the body status code is 400

2.8.1.4. Check the status is fail

2.8.1.5. Check the exchange-id is not null

2.8.1.6. Check the payload-type is correct

2.8.1.7. Check the result-code is correct

2.8.1.8. Check the time-stamp is not null

2.9. tryToCreateRefundForSameOriginalTransactionIdTest

2.9.1. Try to create a refund using the same original-transaction-id when a PENDING refund already exists

2.9.1.1. Check the error message is correct

2.9.1.2. Check the header status code is 400

2.9.1.3. Check the body status code is 400

2.9.1.4. Check the status is fail

2.9.1.5. Check the exchange-id is not null

2.9.1.6. Check the payload-type is correct

2.9.1.7. Check the result-code is correct

2.9.1.8. Check the time-stamp is not null

3. GET Transaction

3.1. Get Transactions with API Key Tests

3.1.1. Get Transactions with a valid api-key and no query parameters

3.1.1.1. Get a valid transaction response with a valid api-key and no query parameter

3.1.1.1.1. Check that response code is 200

3.1.1.1.2. Check that status is "success"

3.1.1.1.3. Check that exchange-id is populated

3.1.1.1.4. Check that ach-transactions is populated

3.1.1.1.5. Check that payloadType is "ach-transactions"

3.1.2. Get Transactions filtered by merchant id hierarchy node

3.1.2.1. Get transactions filtered by the merchant id passed as target node from the JWT token

3.1.2.1.1. Check that response code is 200

3.1.2.1.2. Check that status is "success"

3.1.2.1.3. Check that exchange-id is populated

3.1.2.1.4. Check that ach-transactions is populated

3.1.2.1.5. Check that payloadType is "ach-transactions"

3.1.2.1.6. Check the transactions are filtered by the merchant id

3.1.3. Get Transactions with a valid ID as query parameter

3.1.3.1. Get a valid transaction response by querying for an existing ID

3.1.3.1.1. Check that response code is 200

3.1.3.1.2. Check that status is "success"

3.1.3.1.3. Check that exchange-id is populated

3.1.3.1.4. Check that ach-transactions is populated

3.1.3.1.5. Check transaction returned is filtered by ID

3.1.3.1.6. Check that payloadType is "ach-transactions"

3.1.4. Get Transactions with an inexistent ID as query parameter

3.1.4.1. Get a not-found transaction response by querying for an inexistent ID

3.1.4.1.1. Check that response code is 204

3.1.5. Get Transactions with a valid TYPE as query parameter

3.1.5.1. Get a valid transaction response by querying for a valid TYPE

3.1.5.1.1. Check that response code is 200

3.1.5.1.2. Check that status is "success"

3.1.5.1.3. Check that exchange-id is populated

3.1.5.1.4. Check that ach-transactions is populated

3.1.5.1.5. Check transactions returned are filtered by TYPE

3.1.5.1.6. Check that payloadType is "ach-transactions"

3.1.6. Get Transactions with an invalid TYPE as query parameter

3.1.6.1. Get a not-found transaction response by querying for an invalid TYPE

3.1.6.1.1. Check that response code is 400

3.1.6.1.2. Check that status is "fail"

3.1.6.1.3. Check that exchange-id is populated

3.1.6.1.4. Check that error-message is populated

3.1.6.1.5. Check that result code is "074"

3.1.6.1.6. Check that timestamp is populated

3.1.6.1.7. Check that payloadType is "error"

3.1.7. Get Transactions with a valid STATUS as query parameter

3.1.7.1. Get a valid transaction response by querying for a valid STATUS

3.1.7.1.1. Check that response code is 200

3.1.7.1.2. Check that status is "success"

3.1.7.1.3. Check that exchange-id is populated

3.1.7.1.4. Check that ach-transactions is populated

3.1.7.1.5. Check transactions returned are filtered by STATUS

3.1.7.1.6. Check that payloadType is "ach-transactions"

3.1.8. Get Transactions with an invalid STATUS as query parameter

3.1.8.1. Get a not-found transaction response by querying for an invalid STATUS

3.1.8.1.1. Check that response code is 400

3.1.8.1.2. Check that status is "fail"

3.1.8.1.3. Check that exchange-id is populated

3.1.8.1.4. Check that error-message is populated

3.1.8.1.5. Check that result code is "074"

3.1.8.1.6. Check that timestamp is populated

3.1.8.1.7. Check that payloadType is "error"

3.1.9. Get Transactions with a valid PROCESSING-TYPE as query parameter

3.1.9.1. Get a valid transaction response by querying for a valid PROCESSING-TYPE

3.1.9.1.1. Check that response code is 200

3.1.9.1.2. Check that status is "success"

3.1.9.1.3. Check that exchange-id is populated

3.1.9.1.4. Check that ach-transactions is populated

3.1.9.1.5. Check transactions returned are filtered by PROCESSING-TYPE

3.1.9.1.6. Check that payloadType is "ach-transactions"

3.1.10. Get Transactions with an invalid PROCESSING-TYPE as query parameter

3.1.10.1. Get a not-found transaction response by querying for an invalid PROCESSING-TYPE

3.1.10.1.1. Check that response code is 400

3.1.10.1.2. Check that status is "fail"

3.1.10.1.3. Check that exchange-id is populated

3.1.10.1.4. Check that error-message is populated

3.1.10.1.5. Check that result code is "074"

3.1.10.1.6. Check that timestamp is populated

3.1.10.1.7. Check that payloadType is "error"

3.1.11. Get Transactions with the api-key missing from the header

3.1.11.1. Get Transactions with the api-key missing from the header

3.1.11.1.1. Check that response code is 401

3.1.11.1.2. Check that status is "fail"

3.1.11.1.3. Check that exchange-id is populated

3.1.11.1.4. Check that error-message is "Unauthorized"

3.1.11.1.5. Check that result code is "042"

3.1.11.1.6. Check that timestamp is populated

3.1.11.1.7. Check that payloadType is "error"

3.1.12. Get Transactions error with an invalid api-key

3.1.12.1. Get Transactions with an invalid api-key

3.1.12.1.1. Check that response code is 401

3.1.12.1.2. Check that status is "fail"

3.1.12.1.3. Check that exchange-id is populated

3.1.12.1.4. Check that error-message is "Unauthorized"

3.1.12.1.5. Check that result code is "042"

3.1.12.1.6. Check that timestamp is populated

3.1.12.1.7. Check that payloadType is "error"

3.1.13. Get Transactions with a disabled api-key

3.1.13.1. Get Transactions with a disabled api-key

3.1.13.1.1. Check that response code is 401

3.1.13.1.2. Check that status is "fail"

3.1.13.1.3. Check that exchange-id is populated

3.1.13.1.4. Check that error-message is "Unauthorized"

3.1.13.1.5. Check that result code is "042"

3.1.13.1.6. Check that timestamp is populated

3.1.13.1.7. Check that payloadType is "error"

3.1.14. Verify JSON schema

3.1.14.1. Get a valid transaction response and verify the JSON schema is valid

3.2. Get Transactions with JWT Tests

3.2.1. Get Transactions with a valid JWT token and no query parameters

3.2.1.1. Get a valid transaction response with a valid JWT token and no query parameter

3.2.1.1.1. Check that response code is 200

3.2.1.1.2. Check that status is "success"

3.2.1.1.3. Check that exchange-id is populated

3.2.1.1.4. Check that ach-transactions is populated

3.2.1.1.5. Check that payloadType is "ach-transactions"

3.2.2. Get Transactions with a valid ID as query parameter

3.2.2.1. Get a valid transaction response by querying for an existing ID

3.2.2.1.1. Check that response code is 200

3.2.2.1.2. Check that status is "success"

3.2.2.1.3. Check that exchange-id is populated

3.2.2.1.4. Check that ach-transactions is populated

3.2.2.1.5. Check transaction returned is filtered by ID

3.2.2.1.6. Check that payloadType is "ach-transactions"

3.2.3. Get Transactions with a valid TYPE as query parameter

3.2.3.1. Get a valid transaction response by querying for a valid TYPE

3.2.3.1.1. Check that response code is 200

3.2.3.1.2. Check that status is "success"

3.2.3.1.3. Check that exchange-id is populated

3.2.3.1.4. Check that ach-transactions is populated

3.2.3.1.5. Check transactions returned are filtered by TYPE

3.2.3.1.6. Check that payloadType is "ach-transactions"

3.2.4. Get Transactions with a valid TYPE as query parameter

3.2.4.1. Get a valid transaction response by querying for a valid TYPE

3.2.4.1.1. Check that response code is 200

3.2.4.1.2. Check that status is "success"

3.2.4.1.3. Check that exchange-id is populated

3.2.4.1.4. Check that ach-transactions is populated

3.2.4.1.5. Check transactions returned are filtered by TYPE

3.2.4.1.6. Check that payloadType is "ach-transactions"

3.2.5. Get Transactions with an invalid TYPE as query parameter

3.2.5.1. Get a not-found transaction response by querying for an invalid TYPE

3.2.5.1.1. Check that response code is 400

3.2.5.1.2. Check that status is "fail"

3.2.5.1.3. Check that exchange-id is populated

3.2.5.1.4. Check that error-message is populated

3.2.5.1.5. Check that result code is "074"

3.2.5.1.6. Check that timestamp is populated

3.2.5.1.7. Check that payloadType is "error"

3.2.6. Get Transactions with a valid STATUS as query parameter

3.2.6.1. Get a valid transaction response by querying for a valid STATUS

3.2.6.1.1. Check that response code is 200

3.2.6.1.2. Check that status is "success"

3.2.6.1.3. Check that exchange-id is populated

3.2.6.1.4. Check that ach-transactions is populated

3.2.6.1.5. Check transactions returned are filtered by STATUS

3.2.6.1.6. Check that payloadType is "ach-transactions"

3.2.7. Get Transactions with an invalid STATUS as query parameter

3.2.7.1. Get a not-found transaction response by querying for an invalid STATUS

3.2.7.1.1. Check that response code is 400

3.2.7.1.2. Check that status is "fail"

3.2.7.1.3. Check that exchange-id is populated

3.2.7.1.4. Check that error-message is populated

3.2.7.1.5. Check that result code is "074"

3.2.7.1.6. Check that timestamp is populated

3.2.7.1.7. Check that payloadType is "error"

3.2.8. Get Transactions with a valid PROCESSING-TYPE as query parameter

3.2.8.1. Get a valid transaction response by querying for a valid PROCESSING-TYPE

3.2.8.1.1. Check that response code is 200

3.2.8.1.2. Check that status is "success"

3.2.8.1.3. Check that exchange-id is populated

3.2.8.1.4. Check that ach-transactions is populated

3.2.8.1.5. Check transactions returned are filtered by PROCESSING-TYPE

3.2.8.1.6. Check that payloadType is "ach-transactions"

3.2.9. Get transaction with expired token

3.2.9.1. Get unauthorized transaction using an expired token

3.2.9.1.1. Check that response code is 401

3.2.9.1.2. Check that status is "fail"

3.2.9.1.3. Check that exchange-id is populated

3.2.9.1.4. Check that error-message is "Unauthorized"

3.2.9.1.5. Check that result code is "042"

3.2.9.1.6. Check that timestamp is populated

3.2.9.1.7. Check that payloadType is "error"

4. Create Transaction

4.1. Create Credit Transaction using API Tests

4.1.1. Create SEPA credit transaction that is valid

4.1.1.1. Create a valid SEPA credit transaction with success

4.1.1.1.1. Check that response code is 200

4.1.1.1.2. Check that status is "success"

4.1.1.1.3. Check that exchange-id is populated

4.1.1.1.4. Check that ach-transaction is populated

4.1.1.1.5. Check that payloadType is "ach-transaction"

4.1.2. Create SEPA credit transaction with invalid amount

4.1.2.1. Create a SEPA credit transaction by not entering digits and decimals for amount field

4.1.2.1.1. Check that response is 400

4.1.2.1.2. Check that status is "fail"

4.1.2.1.3. Check that exchange-id is populated

4.1.2.1.4. Check that error-message is populated

4.1.2.1.5. Check that result code is "280"

4.1.2.1.6. Check that time-stamp is populated

4.1.2.1.7. Check that payloadType is "error"

4.1.3. Create SEPA credit transaction with invalid IBAN

4.1.3.1. Create a SEPA credit transaction using an invalid IBAN

4.1.3.1.1. Check that response is 500

4.1.3.1.2. Check that status is "error"

4.1.3.1.3. Check that exchange-id is populated

4.1.3.1.4. Check that error-message is populated

4.1.3.1.5. Check that result code is "073"

4.1.3.1.6. Check that time-stamp is populated

4.1.3.1.7. Check that payloadType is "error"

4.1.4. Create SEPA credit transaction without individual name

4.1.4.1. Create a SEPA credit transaction having no individual name sent

4.1.4.1.1. Check that response is 400

4.1.4.1.2. Check that status is "fail"

4.1.4.1.3. Check that exchange-id is populated

4.1.4.1.4. Check that error-message is populated

4.1.4.1.5. Check that result code is "280"

4.1.4.1.6. Check that time-stamp is populated

4.1.4.1.7. Check that payloadType is "error"

4.1.5. Create SEPA credit transaction with wrong amount format

4.1.5.1. Create a SEPA credit transaction by not entering the two decimal places for amount field

4.1.5.1.1. Check that response is 400

4.1.5.1.2. Check that status is "fail"

4.1.5.1.3. Check that exchange-id is populated

4.1.5.1.4. Check that error-message is populated

4.1.5.1.5. Check that result code is "280"

4.1.5.1.6. Check that time-stamp is populated

4.1.5.1.7. Check that payloadType is "error"

4.1.6. Create SEPA credit transaction without software-type

4.1.6.1. Create a SEPA credit transaction by not completing the software-type field

4.1.6.1.1. Check that response is 400

4.1.6.1.2. Check that status code is "fail"

4.1.6.1.3. Check that exchange-id is populated

4.1.6.1.4. Check that error-message is populated

4.1.6.1.5. Check that result code is "280"

4.1.6.1.6. Check that time-stamp is populated

4.1.6.1.7. Check that payloadType is "error"

4.1.7. Create SEPA credit transaction without software-version

4.1.7.1. Create a SEPA credit transaction by not completing the software-version field

4.1.7.1.1. Check that response is 400

4.1.7.1.2. Check that status code is "fail"

4.1.7.1.3. Check that exchange-id is populated

4.1.7.1.4. Check that error-message is populated

4.1.7.1.5. Check that result code is "280"

4.1.7.1.6. Check that time-stamp is populated

4.1.7.1.7. Check that payloadType is "error"

4.1.8. Create SEPA credit transaction with invalid routing number

4.1.8.1. Create a SEPA credit transaction using an invalid routing number

4.1.8.1.1. Check that response is 500

4.1.8.1.2. Check that status is "error"

4.1.8.1.3. Check that exchange-id is populated

4.1.8.1.4. Check that error-message is populated

4.1.8.1.5. Check that result code is "073"

4.1.8.1.6. Check that time-stamp is populated

4.1.8.1.7. Check that payloadType is "error"

4.1.9. Create SEPA credit transaction without API-key

4.1.9.1. Create a SEPA credit transaction missing the api-key from the header

4.1.9.1.1. Check that response code is 401

4.1.9.1.2. Check that status is "fail"

4.1.9.1.3. Check that exchange-id is populated

4.1.9.1.4. Check that error-message is "Unauthorized"

4.1.9.1.5. Check that result code is "042"

4.1.9.1.6. Check that time-stamp is populated

4.1.9.1.7. Check that payloadType is "error"

4.1.10. Create SEPA credit transaction with invalid API-key

4.1.10.1. Create a SEPA credit transaction having an invalid api-key

4.1.10.1.1. Check that response code is 401

4.1.10.1.2. Check that status is "fail"

4.1.10.1.3. Check that exchange-id is populated

4.1.10.1.4. Check that error-message is "Unauthorized"

4.1.10.1.5. Check that result code is "042"

4.1.10.1.6. Check that timestamp is populated

4.1.10.1.7. Check that payloadType is "error"

4.1.11. Create SEPA credit transaction using a savings account

4.1.11.1. Create a SEPA credit transaction using a valid savings account

4.1.11.1.1. Check that response code is 200

4.1.11.1.2. Check that status is "success"

4.1.11.1.3. Check that exchange-id is populated

4.1.11.1.4. Check that ach-transaction is populated

4.1.11.1.5. Check that payloadType is "ach-transaction"

4.1.12. Create SEPA credit transaction using amount zero

4.1.12.1. Create SEPA credit transaction using amount equal to 0

4.1.12.1.1. Check that response is 400

4.1.12.1.2. Check that status is "fail"

4.1.12.1.3. Check that exchange-id is populated

4.1.12.1.4. Check that error-message is populated

4.1.12.1.5. Check that result code is "280"

4.1.12.1.6. Check that time-stamp is populated

4.1.12.1.7. Check that payloadType is "error"

4.1.13. Create SEPA credit transaction using a small amount

4.1.13.1. Create SEPA credit transaction using a small amount equal to 0.01

4.1.13.1.1. Check that response code is 200

4.1.13.1.2. Check that status is "success"

4.1.13.1.3. Check that exchange-id is populated

4.1.13.1.4. Check that ach-transaction is populated

4.1.13.1.5. Check that payloadType is "ach-transaction"

4.1.14. Create SEPA credit transaction using negative amount

4.1.14.1. Create SEPA credit transaction using a negative amount

4.1.14.1.1. Check that response is 400

4.1.14.1.2. Check that status is "fail"

4.1.14.1.3. Check that exchange-id is populated

4.1.14.1.4. Check that error-message is populated

4.1.14.1.5. Check that result code is "280"

4.1.14.1.6. Check that time-stamp is populated

4.1.14.1.7. Check that payloadType is "error"

4.2. Create Credit Transaction with ACH Token Tests

4.2.1. Create SEPA credit transaction using valid ach token

4.2.1.1. Create a SEPA credit transaction using a valid ach token

4.2.1.1.1. Check that response code is 200

4.2.1.1.2. Check that status is "success"

4.2.1.1.3. Check that exchange-id is populated

4.2.1.1.4. Check that ach-transaction is populated

4.2.1.1.5. Check that payloadType is "ach-transaction"

4.2.2. Create SEPA credit transaction with token and invalid API-key

4.2.2.1. Create a SEPA credit transaction using a valid token and an invalid api-key

4.2.2.1.1. Check that response code is 401

4.2.2.1.2. Check that status is "fail"

4.2.2.1.3. Check that exchange-id is populated

4.2.2.1.4. Check that error-message is "Unauthorized"

4.2.2.1.5. Check that result code is "042"

4.2.2.1.6. Check that time-stamp is populated

4.2.2.1.7. Check that payloadType is "error"

4.2.3. Create SEPA credit transaction with token and without API-key

4.2.3.1. Create a SEPA credit transaction using a valid token and missing the api-key

4.2.3.1.1. Check that response code is 401

4.2.3.1.2. Check that status is "fail"

4.2.3.1.3. Check that exchange-id is populated

4.2.3.1.4. Check that error-message is "Unauthorized"

4.2.3.1.5. Check that result code is "042"

4.2.3.1.6. Check that time-stamp is populated

4.2.3.1.7. Check that payloadType is "error"

4.2.4. Create SEPA credit transaction with token and invalid amount

4.2.4.1. Create a SEPA credit transaction by using a valid token and not entering digits and decimals for amount field

4.2.4.1.1. Check that response is 400

4.2.4.1.2. Check that status is "fail"

4.2.4.1.3. Check that exchange-id is populated

4.2.4.1.4. Check that error-message is populated

4.2.4.1.5. Check that result code is "280"

4.2.4.1.6. Check that time-stamp is populated

4.2.4.1.7. Check that payloadType is "error"

4.2.5. Create SEPA credit transaction with token and wrong amount format

4.2.5.1. Create SEPA credit transaction using amount zero

4.2.5.1.1. Create SEPA credit transaction using amount equal to 0

4.2.5.2. Create a SEPA credit transaction by using a valid token and not entering the two decimal places for amount field

4.2.5.2.1. Check that response is 400

4.2.5.2.2. Check that status is "fail"

4.2.5.2.3. Check that exchange-id is populated

4.2.5.2.4. Check that error-message is populated

4.2.5.2.5. Check that result code is "280"

4.2.5.2.6. Check that time-stamp is populated

4.2.5.2.7. Check that payloadType is "error"

4.2.6. Create SEPA credit transaction with ach token using savings account

4.2.6.1. Create a SEPA credit transaction using a valid token and a valid savings account

4.2.6.1.1. Check that response code is 200

4.2.6.1.2. Check that status is "success"

4.2.6.1.3. Check that exchange-id is populated

4.2.6.1.4. Check that ach-transaction is populated

4.2.6.1.5. Check that payloadType is "ach-transaction"

4.2.7. Create SEPA credit transaction using a small amount

4.2.7.1. Create SEPA credit transaction using a small amount equal to 0.01

4.2.7.1.1. Check that response code is 200

4.2.7.1.2. Check that status is "success"

4.2.7.1.3. Check that exchange-id is populated

4.2.7.1.4. Check that ach-transaction is populated

4.2.7.1.5. Check that payloadType is "ach-transaction"

4.2.8. Create SEPA credit transaction using negative amount

4.2.8.1. Create SEPA credit transaction using a negative amount

4.2.8.1.1. Check that response is 400

4.2.8.1.2. Check that status is "fail"

4.2.8.1.3. Check that exchange-id is populated

4.2.8.1.4. Check that error-message is populated

4.2.8.1.5. Check that result code is "280"

4.2.8.1.6. Check that time-stamp is populated

4.2.8.1.7. Check that payloadType is "error"

4.3. Create Credit Transaction with JWT Token Tests

4.3.1. Create SEPA credit transaction that is valid

4.3.1.1. Create a valid SEPA credit transaction with success

4.3.1.1.1. Check that response code is 200

4.3.1.1.2. Check that status is "success"

4.3.1.1.3. Check that exchange-id is populated

4.3.1.1.4. Check that ach-transaction is populated

4.3.1.1.5. Check that payloadType is "ach-transaction"

4.3.2. Create SEPA credit transaction with invalid amount

4.3.2.1. Create a SEPA credit transaction by not entering digits and decimals for amount field

4.3.2.1.1. Check that response is 400

4.3.2.1.2. Check that status is "fail"

4.3.2.1.3. Check that exchange-id is populated

4.3.2.1.4. Check that error-message is populated

4.3.2.1.5. Check that result code is "280"

4.3.2.1.6. Check that time-stamp is populated

4.3.2.1.7. Check that payloadType is "error"

4.3.3. Create SEPA credit transaction with invalid IBAN

4.3.3.1. Create a SEPA credit transaction using an invalid IBAN

4.3.3.1.1. Check that response is 500

4.3.3.1.2. Check that status is "error"

4.3.3.1.3. Check that exchange-id is populated

4.3.3.1.4. Check that error-message is populated

4.3.3.1.5. Check that result code is "073"

4.3.3.1.6. Check that time-stamp is populated

4.3.3.1.7. Check that payloadType is "error"

4.3.4. Create SEPA credit transaction without individual name

4.3.4.1. Create a SEPA credit transaction having no individual name sent

4.3.4.1.1. Check that response is 400

4.3.4.1.2. Check that status is "fail"

4.3.4.1.3. Check that exchange-id is populated

4.3.4.1.4. Check that error-message is populated

4.3.4.1.5. Check that result code is "280"

4.3.4.1.6. Check that time-stamp is populated

4.3.4.1.7. Check that payloadType is "error"

4.3.5. Create SEPA credit transaction with wrong amount format

4.3.5.1. Create a SEPA credit transaction by not entering the two decimal places for amount field

4.3.5.1.1. Check that response is 400

4.3.5.1.2. Check that status is "fail"

4.3.5.1.3. Check that exchange-id is populated

4.3.5.1.4. Check that error-message is populated

4.3.5.1.5. Check that result code is "280"

4.3.5.1.6. Check that time-stamp is populated

4.3.5.1.7. Check that payloadType is "error"

4.3.6. Create SEPA credit transaction without software-type

4.3.6.1. Create a SEPA credit transaction by not completing the software-type field

4.3.6.1.1. Check that response is 400

4.3.6.1.2. Check that status code is "fail"

4.3.6.1.3. Check that exchange-id is populated

4.3.6.1.4. Check that error-message is populated

4.3.6.1.5. Check that result code is "280"

4.3.6.1.6. Check that time-stamp is populated

4.3.6.1.7. Check that payloadType is "error"

4.3.7. Create SEPA credit transaction without software-version

4.3.7.1. Create a SEPA credit transaction by not completing the software-version field

4.3.7.1.1. Check that response is 400

4.3.7.1.2. Check that status code is "fail"

4.3.7.1.3. Check that exchange-id is populated

4.3.7.1.4. Check that error-message is populated

4.3.7.1.5. Check that result code is "280"

4.3.7.1.6. Check that time-stamp is populated

4.3.7.1.7. Check that payloadType is "error"

4.3.8. Create SEPA credit transaction with invalid routing number

4.3.8.1. Create a SEPA credit transaction using an invalid routing number

4.3.8.1.1. Check that response is 500

4.3.8.1.2. Check that status is "error"

4.3.8.1.3. Check that exchange-id is populated

4.3.8.1.4. Check that error-message is populated

4.3.8.1.5. Check that result code is "073"

4.3.8.1.6. Check that time-stamp is populated

4.3.8.1.7. Check that payloadType is "error"

4.3.9. Create SEPA credit transaction using a savings account

4.3.9.1. Create a SEPA credit transaction using a valid savings account

4.3.9.1.1. Check that response code is 200

4.3.9.1.2. Check that status is "success"

4.3.9.1.3. Check that exchange-id is populated

4.3.9.1.4. Check that ach-transaction is populated

4.3.9.1.5. Check that payloadType is "ach-transaction"

4.3.10. Create SEPA credit transaction using amount zero

4.3.10.1. Create SEPA credit transaction using amount equal to 0

4.3.10.1.1. Check that response is 400

4.3.10.1.2. Check that status is "fail"

4.3.10.1.3. Check that exchange-id is populated

4.3.10.1.4. Check that error-message is populated

4.3.10.1.5. Check that result code is "280"

4.3.10.1.6. Check that time-stamp is populated

4.3.10.1.7. Check that payloadType is "error"

4.3.11. Create SEPA credit transaction using a small amount

4.3.11.1. Create SEPA credit transaction using a small amount equal to 0.01

4.3.11.1.1. Check that response code is 200

4.3.11.1.2. Check that status is "success"

4.3.11.1.3. Check that exchange-id is populated

4.3.11.1.4. Check that ach-transaction is populated

4.3.11.1.5. Check that payloadType is "ach-transaction"

4.3.12. Create SEPA credit transaction using negative amount

4.3.12.1. Create SEPA credit transaction using a negative amount

4.3.12.1.1. Check that response is 400

4.3.12.1.2. Check that status is "fail"

4.3.12.1.3. Check that exchange-id is populated

4.3.12.1.4. Check that error-message is populated

4.3.12.1.5. Check that result code is "280"

4.3.12.1.6. Check that time-stamp is populated

4.3.12.1.7. Check that payloadType is "error"

4.3.13. Create SEPA credit transaction using an expired JWT token

4.3.13.1. Create SEPA credit transaction using an expired JWT token

4.3.13.1.1. Check that response code is 401

4.3.13.1.2. Check that status is "fail"

4.3.13.1.3. Check that exchange-id is populated

4.3.13.1.4. Check that error-message is "Unauthorized"

4.3.13.1.5. Check that result code is "042"

4.3.13.1.6. Check that timestamp is populated

4.3.13.1.7. Check that payloadType is "error"

4.3.14. Create SEPA credit transaction using a higher amount than accepted

4.3.14.1. Create SEPA credit transaction using an amount higher than 100000.00

4.3.14.1.1. Check that response code is 400

4.3.14.1.2. Check that status is "fail"

4.3.14.1.3. Check that exchange-id is populated

4.3.14.1.4. Check that error message is "The amount must not be greater than 100000."

4.3.15. Create SEPA credit transaction using exactly 100000.00

4.3.15.1. Create SEPA credit transaction using an amount higher than 100000.00

4.3.15.1.1. Check that response code is 200

4.3.15.1.2. Check that status is "success"

4.3.15.1.3. Check that exchange-id is populated

4.3.15.1.4. Check that sepa-transaction is populated

4.4. Create Credit Transaction with ACH and JWT Tokens Tests

4.4.1. Create SEPA credit transaction using valid ach token

4.4.1.1. Create a SEPA credit transaction using a valid ach token

4.4.1.1.1. Check that response code is 200

4.4.1.1.2. Check that status is "success"

4.4.1.1.3. Check that exchange-id is populated

4.4.1.1.4. Check that ach-transaction is populated

4.4.1.1.5. Check that payloadType is "ach-transaction"

4.4.2. Create SEPA credit transaction with token and invalid amount

4.4.2.1. Create a SEPA credit transaction by using a valid token and not entering digits and decimals for amount field

4.4.2.1.1. Check that response is 400

4.4.2.1.2. Check that status is "fail"

4.4.2.1.3. Check that exchange-id is populated

4.4.2.1.4. Check that error-message is populated

4.4.2.1.5. Check that result code is "280"

4.4.2.1.6. Check that time-stamp is populated

4.4.2.1.7. Check that payloadType is "error"

4.4.3. Create SEPA credit transaction with token and wrong amount format

4.4.3.1. Create a SEPA credit transaction by using a valid token and not entering the two decimal places for amount field

4.4.3.1.1. Check that response is 400

4.4.3.1.2. Check that status is "fail"

4.4.3.1.3. Check that exchange-id is populated

4.4.3.1.4. Check that error-message is populated

4.4.3.1.5. Check that result code is "280"

4.4.3.1.6. Check that time-stamp is populated

4.4.3.1.7. Check that payloadType is "error"

4.4.4. Create SEPA credit transaction with ach token using savings account

4.4.4.1. Create a SEPA credit transaction using a valid token and a valid savings account

4.4.4.1.1. Check that response code is 200

4.4.4.1.2. Check that status is "success"

4.4.4.1.3. Check that exchange-id is populated

4.4.4.1.4. Check that ach-transaction is populated

4.4.4.1.5. Check that payloadType is "ach-transaction"

4.4.5. Create SEPA credit transaction using amount zero

4.4.5.1. Create SEPA credit transaction using amount equal to 0

4.4.5.1.1. Check that response is 400

4.4.5.1.2. Check that status is "fail"

4.4.5.1.3. Check that exchange-id is populated

4.4.5.1.4. Check that error-message is populated

4.4.5.1.5. Check that result code is "280"

4.4.5.1.6. Check that time-stamp is populated

4.4.5.1.7. Check that payloadType is "error"

4.4.6. Create SEPA credit transaction using a small amount

4.4.6.1. Create SEPA credit transaction using a small amount equal to 0.01

4.4.6.1.1. Check that response code is 200

4.4.6.1.2. Check that status is "success"

4.4.6.1.3. Check that exchange-id is populated

4.4.6.1.4. Check that ach-transaction is populated

4.4.6.1.5. Check that payloadType is "ach-transaction"

4.4.7. Create SEPA credit transaction using negative amount

4.4.7.1. Create SEPA credit transaction using a negative amount

4.4.7.1.1. Check that response is 400

4.4.7.1.2. Check that status is "fail"

4.4.7.1.3. Check that exchange-id is populated

4.4.7.1.4. Check that error-message is populated

4.4.7.1.5. Check that result code is "280"

4.4.7.1.6. Check that time-stamp is populated

4.4.7.1.7. Check that payloadType is "error"

4.4.8. Create SEPA credit transaction using an expired JWT token

4.4.8.1. Create SEPA credit transaction using an expired JWT token

4.4.8.1.1. Check that response code is 401

4.4.8.1.2. Check that status is "fail"

4.4.8.1.3. Check that exchange-id is populated

4.4.8.1.4. Check that error-message is "Unauthorized"

4.4.8.1.5. Check that result code is "042"

4.4.8.1.6. Check that timestamp is populated

4.4.8.1.7. Check that payloadType is "error"

4.5. Create Debit Transaction Tests

4.5.1. Create a valid SEPA debit transaction

4.5.1.1. Create a valid SEPA debit transaction with success

4.5.1.1.1. Check that response code is 200

4.5.1.1.2. Check that status is "success"

4.5.1.1.3. Check that exchange-id is populated

4.5.1.1.4. Check that ach-transaction is populated

4.5.1.1.5. Check that payloadType is "ach-transaction"

4.5.2. Create SEPA debit transaction with invalid token

4.5.2.1. Create a SEPA debit transaction using an invalid token

4.5.2.1.1. Check that response is 400

4.5.2.1.2. Check that status is "fail"

4.5.2.1.3. Check that exchange-id is populated

4.5.2.1.4. Check that error-message is populated

4.5.2.1.5. Check that result code is "280"

4.5.2.1.6. Check that time-stamp is populated

4.5.2.1.7. Check that payloadType is "error"

4.5.3. Create SEPA debit transaction with invalid API-key

4.5.3.1. Create a SEPA debit transaction having an invalid api-key

4.5.3.1.1. Check that response code is 401

4.5.3.1.2. Check that status is "fail"

4.5.3.1.3. Check that exchange-id is populated

4.5.3.1.4. Check that error-message is "Unauthorized"

4.5.3.1.5. Check that result code is "042"

4.5.3.1.6. Check that timestamp is populated

4.5.3.1.7. Check that payloadType is "error"

4.5.4. Create SEPA debit transaction with high amount

4.5.4.1. Create a SEPA debit transaction having the amount grater than 1200

4.5.4.1.1. Check that response is 400

4.5.4.1.2. Check that status is "fail"

4.5.4.1.3. Check that exchange-id is populated

4.5.4.1.4. Check that error-message is populated

4.5.4.1.5. Check that result code is "280"

4.5.4.1.6. Check that time-stamp is populated

4.5.4.1.7. Check that payloadType is "error"

4.5.5. Create SEPA debit transaction with wrong amount format

4.5.5.1. Create a SEPA debit transaction without entering the two decimal places for amount field

4.5.5.1.1. Check that response is 400

4.5.5.1.2. Check that status is "fail"

4.5.5.1.3. Check that exchange-id is populated

4.5.5.1.4. Check that error-message is populated

4.5.5.1.5. Check that result code is "280"

4.5.5.1.6. Check that time-stamp is populated

4.5.5.1.7. Check that payloadType is "error"

4.5.6. Create SEPA debit transaction with invalid amount

4.5.6.1. Create a SEPA debit transaction without entering digits and decimals for amount field

4.5.6.1.1. Check that response is 400

4.5.6.1.2. Check that status is "fail"

4.5.6.1.3. Check that exchange-id is populated

4.5.6.1.4. Check that error-message is populated

4.5.6.1.5. Check that result code is "280"

4.5.6.1.6. Check that time-stamp is populated

4.5.6.1.7. Check that payloadType is "error"

4.5.7. Create SEPA debit transaction using amount zero

4.5.7.1. Create SEPA debit transaction using amount equal to 0

4.5.7.1.1. Check that response is 400

4.5.7.1.2. Check that status is "fail"

4.5.7.1.3. Check that exchange-id is populated

4.5.7.1.4. Check that error-message is populated

4.5.7.1.5. Check that result code is "280"

4.5.7.1.6. Check that time-stamp is populated

4.5.7.1.7. Check that payloadType is "error"

4.5.8. :white_check_mark: Create SEPA debit transaction using a small amount

4.5.8.1. Create SEPA debit transaction using a small amount equal to 0.01

4.5.8.1.1. Check that response code is 200

4.5.8.1.2. Check that status is "success"

4.5.8.1.3. Check that exchange-id is populated

4.5.8.1.4. Check that ach-transaction is populated

4.5.8.1.5. Check that payloadType is "ach-transaction"

4.5.9. Create SEPA debit transaction using negative amount

4.5.9.1. Create SEPA debit transaction using a negative amount

4.5.9.1.1. Check that response is 400

4.5.9.1.2. Check that status is "fail"

4.5.9.1.3. Check that exchange-id is populated

4.5.9.1.4. Check that error-message is populated

4.5.9.1.5. Check that result code is "280"

4.5.9.1.6. Check that time-stamp is populated

4.5.9.1.7. Check that payloadType is "error"

4.5.10. Create SEPA Debit transaction with 1 future execution day

4.5.10.1. Create SEPA Debit transaction with 1 future execution day

4.5.10.1.1. Check that response code is 200

4.5.10.1.2. Check that status is "success"

4.5.10.1.3. Check that exchange-id is populated

4.5.10.1.4. Check that ach-transaction is populated

4.5.10.1.5. Check that payloadType is "ach-transaction"

4.5.11. Create SEPA Debit transaction with 30 future execution days

4.5.11.1. Create SEPA Debit transaction with 30 future execution days

4.5.11.1.1. Check that response code is 200

4.5.11.1.2. Check that status is "success"

4.5.11.1.3. Check that exchange-id is populated

4.5.11.1.4. Check that ach-transaction is populated

4.5.11.1.5. Check that payloadType is "ach-transaction"

4.5.12. Create SEPA Debit transaction with 31 future execution days

4.5.12.1. Create SEPA Debit transaction with 31 future execution days

4.5.12.1.1. Check that response is 400

4.5.12.1.2. Check that status is "fail"

4.5.12.1.3. Check that exchange-id is populated

4.5.12.1.4. Check that error-message is populated

4.5.12.1.5. Check that result code is "280"

4.5.12.1.6. Check that time-stamp is populated

4.5.12.1.7. Check that payloadType is "error"

4.5.13. Create SEPA Debit transaction with -1 future execution days

4.5.13.1. Create SEPA Debit transaction with -1 future execution days

4.5.13.1.1. Check that response is 400

4.5.13.1.2. Check that status is "fail"

4.5.13.1.3. Check that exchange-id is populated

4.5.13.1.4. Check that error-message is populated

4.5.13.1.5. Check that result code is "280"

4.5.13.1.6. Check that time-stamp is populated

4.5.13.1.7. Check that payloadType is "error"

4.6. Create Debit Transaction using JWT Token Tests

4.6.1. Create a valid SEPA debit transaction

4.6.1.1. Create a valid SEPA debit transaction with success

4.6.1.1.1. Check that response code is 200

4.6.1.1.2. Check that status is "success"

4.6.1.1.3. Check that exchange-id is populated

4.6.1.1.4. Check that ach-transaction is populated

4.6.1.1.5. Check that payloadType is "ach-transaction"

4.6.2. Create SEPA debit transaction with invalid token

4.6.2.1. Create a SEPA debit transaction using an invalid token

4.6.2.1.1. Check that response is 400

4.6.2.1.2. Check that status is "fail"

4.6.2.1.3. Check that exchange-id is populated

4.6.2.1.4. Check that error-message is populated

4.6.2.1.5. Check that result code is "280"

4.6.2.1.6. Check that time-stamp is populated

4.6.2.1.7. Check that payloadType is "error"

4.6.3. Create SEPA debit transaction with high amount

4.6.3.1. Create a SEPA debit transaction having the amount grater than 1200

4.6.3.1.1. Check that response is 400

4.6.3.1.2. Check that status is "fail"

4.6.3.1.3. Check that exchange-id is populated

4.6.3.1.4. Check that error-message is populated

4.6.3.1.5. Check that result code is "280"

4.6.3.1.6. Check that time-stamp is populated

4.6.3.1.7. Check that payloadType is "error"

4.6.4. Create SEPA debit transaction with wrong amount format

4.6.4.1. Create a SEPA debit transaction without entering the two decimal places for amount field

4.6.4.1.1. Check that response is 400

4.6.4.1.2. Check that status is "fail"

4.6.4.1.3. Check that exchange-id is populated

4.6.4.1.4. Check that error-message is populated

4.6.4.1.5. Check that result code is "280"

4.6.4.1.6. Check that time-stamp is populated

4.6.4.1.7. Check that payloadType is "error"

4.6.5. Create SEPA debit transaction with invalid amount

4.6.5.1. Create a SEPA debit transaction without entering digits and decimals for amount field

4.6.5.1.1. Check that response is 400

4.6.5.1.2. Check that status is "fail"

4.6.5.1.3. Check that exchange-id is populated

4.6.5.1.4. Check that error-message is populated

4.6.5.1.5. Check that result code is "280"

4.6.5.1.6. Check that time-stamp is populated

4.6.5.1.7. Check that payloadType is "error"

4.6.6. Create SEPA debit transaction using amount zero

4.6.6.1. Create SEPA debit transaction using amount equal to 0

4.6.6.1.1. Check that response is 400

4.6.6.1.2. Check that status is "fail"

4.6.6.1.3. Check that exchange-id is populated

4.6.6.1.4. Check that error-message is populated

4.6.6.1.5. Check that result code is "280"

4.6.6.1.6. Check that time-stamp is populated

4.6.6.1.7. Check that payloadType is "error"

4.6.7. Create SEPA debit transaction using a small amount

4.6.7.1. Create SEPA debit transaction using a small amount equal to 0.01

4.6.7.1.1. Check that response code is 200

4.6.7.1.2. Check that status is "success"

4.6.7.1.3. Check that exchange-id is populated

4.6.7.1.4. Check that ach-transaction is populated

4.6.7.1.5. Check that payloadType is "ach-transaction"

4.6.8. Create SEPA debit transaction using negative amount

4.6.8.1. Create SEPA debit transaction using a negative amount

4.6.8.1.1. Check that response is 400

4.6.8.1.2. Check that status is "fail"

4.6.8.1.3. Check that exchange-id is populated

4.6.8.1.4. Check that error-message is populated

4.6.8.1.5. Check that result code is "280"

4.6.8.1.6. Check that time-stamp is populated

4.6.8.1.7. Check that payloadType is "error"

4.6.9. Create SEPA debit transaction using an expired JWT token

4.6.9.1. Create SEPA credit transaction using an expired JWT token

4.6.9.1.1. Check that response code is 401

4.6.9.1.2. Check that status is "fail"

4.6.9.1.3. Check that exchange-id is populated

4.6.9.1.4. Check that error-message is "Unauthorized"

4.6.9.1.5. Check that result code is "042"

4.6.9.1.6. Check that timestamp is populated

4.6.9.1.7. Check that payloadType is "error"

4.6.10. Create SEPA Debit transaction with 1 future execution day

4.6.10.1. Create SEPA Debit transaction with 1 future execution day

4.6.10.1.1. Check that response code is 200

4.6.10.1.2. Check that status is "success"

4.6.10.1.3. Check that exchange-id is populated

4.6.10.1.4. Check that ach-transaction is populated

4.6.10.1.5. Check that payloadType is "ach-transaction"

4.6.11. Create SEPA Debit transaction with 30 future execution days

4.6.11.1. Create SEPA Debit transaction with 30 future execution days

4.6.11.1.1. Check that response code is 200

4.6.11.1.2. Check that status is "success"

4.6.11.1.3. Check that exchange-id is populated

4.6.11.1.4. Check that ach-transaction is populated

4.6.11.1.5. Check that payloadType is "ach-transaction"

4.6.12. Create SEPA Debit transaction with 31 future execution days

4.6.12.1. Create SEPA Debit transaction with 31 future execution days

4.6.12.1.1. Check that response is 400

4.6.12.1.2. Check that status is "fail"

4.6.12.1.3. Check that exchange-id is populated

4.6.12.1.4. Check that error-message is populated

4.6.12.1.5. Check that result code is "280"

4.6.12.1.6. Check that time-stamp is populated

4.6.12.1.7. Check that payloadType is "error"

4.6.13. Create SEPA Debit transaction with -1 future execution days

4.6.13.1. Create SEPA Debit transaction with -1 future execution days

4.6.13.1.1. Check that response is 400

4.6.13.1.2. Check that status is "fail"

4.6.13.1.3. Check that exchange-id is populated

4.6.13.1.4. Check that error-message is populated

4.6.13.1.5. Check that result code is "280"

4.6.13.1.6. Check that time-stamp is populated

4.6.13.1.7. Check that payloadType is "error"

4.7. Check Duplicates

4.7.1. Direct Debit

4.7.1.1. :white_check_mark: Test duplicate transaction in PENDING status

4.7.1.1.1. Check first transaction result code is 200

4.7.1.1.2. Check second transaction result code is 200

4.7.1.1.3. Check Original transaction status is correct

4.7.1.1.4. Check duplicated transaction status is returned same as in original transaction

4.7.1.1.5. Check duplicated transaction responds with same Id as the original

4.7.1.2. :white_check_mark: Test duplicate transaction in NOT_CONFIRMED status

4.7.1.2.1. Check first transaction result code is 200

4.7.1.2.2. Check second transaction result code is 200

4.7.1.2.3. Check Original transaction status is correct

4.7.1.2.4. Check duplicated transaction status is returned same as in original transaction

4.7.1.2.5. Check duplicated transaction responds with same Id as the original

4.7.1.3. :white_check_mark: Test duplicate transaction in SENT status

4.7.1.3.1. Check first transaction result code is 200

4.7.1.3.2. Check second transaction result code is 200

4.7.1.3.3. Check Original transaction status is correct

4.7.1.3.4. Check duplicated transaction status is returned same as in original transaction

4.7.1.3.5. Check duplicated transaction responds with same Id as the original

4.7.1.4. :white_check_mark: Test duplicate transaction in SETTLING status

4.7.1.4.1. Check first transaction result code is 200

4.7.1.4.2. Check second transaction result code is 200

4.7.1.4.3. Check Original transaction status is correct

4.7.1.4.4. Check duplicated transaction status is returned same as in original transaction

4.7.1.4.5. Check duplicated transaction responds with same Id as the original

4.7.1.5. :white_check_mark: Test duplicate transaction in SETTLED status

4.7.1.5.1. Check first transaction result code is 200

4.7.1.5.2. Check second transaction result code is 200

4.7.1.5.3. Check Original transaction status is correct

4.7.1.5.4. Check duplicated transaction status is returned same as in original transaction

4.7.1.5.5. Check duplicated transaction responds with same Id as the original

4.7.1.6. :white_check_mark: Test duplicate transaction in FUNDED status

4.7.1.6.1. Check first transaction result code is 200

4.7.1.6.2. Check second transaction result code is 200

4.7.1.6.3. Check Original transaction status is correct

4.7.1.6.4. Check duplicated transaction status is returned same as in original transaction

4.7.1.6.5. Check duplicated transaction responds with same Id as the original

4.7.1.7. :white_check_mark: Test duplicate transaction in DECLINED status

4.7.1.7.1. Check first transaction result code is 200

4.7.1.7.2. Check second transaction result code is 200

4.7.1.7.3. Check Original transaction status is correct

4.7.1.7.4. Check a new transaction was created

4.7.1.8. :white_check_mark: Test duplicate transaction in RETURNED status

4.7.1.8.1. Check first transaction result code is 200

4.7.1.8.2. Check second transaction result code is 200

4.7.1.8.3. Check Original transaction status is correct

4.7.1.8.4. Check a new transaction was created

4.7.1.9. :white_check_mark: Test duplicate transaction in REJECTED status

4.7.1.9.1. Check first transaction result code is 200

4.7.1.9.2. Check second transaction result code is 200

4.7.1.9.3. Check Original transaction status is correct

4.7.1.9.4. Check a new transaction was created

4.7.1.10. Test duplicate transaction in HELD status

4.7.1.10.1. first transaction

4.7.1.10.2. update status in DB for first transaction to HELD sepa.dbo.TransactionStatusHistory.TransactionStatusId = 16

4.7.1.10.3. second transaction change amount, invoice and description values

4.7.2. Credit Transfer

4.7.2.1. :white_check_mark: Test duplicate transaction in PENDING status

4.7.2.1.1. Check first transaction result code is 200

4.7.2.1.2. Check second transaction result code is 200

4.7.2.1.3. Check Original transaction status is correct

4.7.2.1.4. Check duplicated transaction status is returned same as in original transaction

4.7.2.1.5. Check duplicated transaction responds with same Id as the original

4.7.2.2. :white_check_mark: Test duplicate transaction in NOT_CONFIRMED status

4.7.2.2.1. Check first transaction result code is 200

4.7.2.2.2. Check second transaction result code is 200

4.7.2.2.3. Check Original transaction status is correct

4.7.2.2.4. Check duplicated transaction status is returned same as in original transaction

4.7.2.2.5. Check duplicated transaction responds with same Id as the original

4.7.2.3. :white_check_mark: Test duplicate transaction in COMPLETED status

4.7.2.3.1. Check first transaction result code is 200

4.7.2.3.2. Check second transaction result code is 200

4.7.2.3.3. Check Original transaction status is correct

4.7.2.3.4. Check duplicated transaction status is returned same as in original transaction

4.7.2.3.5. Check duplicated transaction responds with same Id as the original

4.7.2.4. :white_check_mark: Test duplicate transaction in DECLINED status

4.7.2.4.1. Check first transaction result code is 200

4.7.2.4.2. Check second transaction result code is 200

4.7.2.4.3. Check Original transaction status is correct

4.7.2.4.4. Check a new transaction was created

4.7.2.5. :white_check_mark: Test duplicate transaction in REJECTED status

4.7.2.5.1. Check first transaction result code is 200

4.7.2.5.2. Check second transaction result code is 200

4.7.2.5.3. Check Original transaction status is correct

4.7.2.5.4. Check a new transaction was created

4.7.3. parameters used in duplication check

4.7.3.1. Merchant ID

4.7.3.1.1. identified from the authentication token

4.7.3.2. external-transaction-reference

4.7.3.3. execution-date

4.7.3.4. transaction-type

4.7.3.5. subtype