# Testing
source: https://developer.mastercard.com/community-pass-payment-apis/documentation/testing/index.md

## Test cases {#test-cases}

* Callbacks API - When payment transaction is processed at the Bank and payment provider call callbacks API, 200 OK Http status should be returned. The status of the transaction should be updated in Mastercard applications(MFN/Kupaa).
* Validations API - When a payment is initiated and Bank can call validations API,200 OK Http status with the user information should be returned.
* Notifications API - When Bank calls notifications API 200 OK Http status should be returned. The payment staus should be updated in the Mastercard applications (MFN/Kupaa).

## Test Data {#test-data}

* Callbacks API -

Sample json request -
{
"appId": "kupaa",
"partnerAccountId": "111",
"transactionReference": "18d3c164-5f85-4d5c-a5fc-83931d2f901a",
"providerReference": "111",
"status": "MOCK",
"responseCode": "0000",
"responseMessage": "[mcsetup2016@gmail.com](mailto:mcsetup2016@gmail.com)",
"apiAction": "B2C",
"correlationId": "18d3c164-5f85-4d5c-a5fc-83931d2f901a",
"recipients": \[{
"requestId": "88784744",
"transactionId": "8878",
"accountName": "Test User",
"accountNumber": "1234567890",
"transactionAmount": 1112,
"currency": "UGX",
"countryCode": "UG",
"responseCode": "100",
"responseMessage": "Successful"
}\]
}

* Validations API -

Sample json request -
{
"appId": "kupaa",
"partnerId": "mock",
"accountId": "1113",
"partnerType": "SCHOOL",
"paymentChannel": "MOBILE",
"correlationId": "3fa85f64-5717-4562-b3fc-2c963f66afa6"
}

* Notifications API -

Sample json request -
{
"appId":"Kupaa",
"partnerId": "1234",
"providerReference": "ABC123",
"srcAccount": "25471234567",
"paymentChannel": "MOBILE",
"transactionAmount": 12567.00,
"accountId": "1234",
"transactionDate": "2020-07-07",
"narration": "mock",
"accountName": "Payer",
"accountNumber": "12345",
"currency": "UGX",
"countryCode": "UG",
"signature": "abcdefq",
"correlationId": "3fa85f64-5717-4562-b3fc-2c963f66afa6"
}
