1. Home
  2. PAYCode
  3. Transaction Authorization (MMO)
  4. Authorize Transaction

Authorize Transaction

Authorize Transaction
Authorize Transaction message is used to send a transaction authorization to a MMO.

Authorize Transaction Request
The following describes the important element required to be sent for Authorize Transaction request. The HTTP method is POST.

S/N Data Element (DE)   Description
1 subscriberId Mandatory Customer ID. E.g. 2348012233220
2 transactionId Mandatory Unique ID for the transaction
3 transactionType Mandatory Transaction Type
4 providerToken Mandatory Mobile Money Transaction Authentication Token.

NB: Null is sent and should be used if providerToken is not sent generate token request.

5 Narration Mandatory Transaction narration
6 mercantId Mandatory Merchant Identifier
7 terminalId Mandatory Mobile Money Transaction Authentication Token
8 Amount Mandatory Transaction Amount in lower denomination
9 Acquirer Mandatory Acquirer
10 macdata Mandatory See the MAC computation in the appendix
11 paycode Mandatory PayWithMobile Token

Request Headers

S/N Data Element (DE)   Description
1 Authorization Mandatory Basic Authentication will be used. E.g Basic dXNlcm5hbWU6cGFzc3dvcmQ=. The username and

Password for basic authentication is to be provided by

MMO

2 Content-Type Mandatory The API should support “application/json” media type

Sample Authorize Transaction Request (Sent from Interswitch)

POST {context}/transactions/authorize

Content-Type: application/json

Authorization: dXNlcm5hbWU6cGFzc3dvcmQ=

Signature: SUtJQTc2QzYzQjYwODIxNjI5RjRDQ0I5MDQ3RjRFNzI5NzUyMjJGMENENzc=

{
“subscriberId”: “2348060774043”,
“transactionId”: “123456”,
“providerToken”: “null”,
“transactionType”: “withdrawal”,
“narration”: “ABC1234567”,
“amount”: “00000010000”,
“merchantId”: “ttt3244”,
“terminalId”: “234455555”,
“acquirer”: “12344453”,
“macdata”: “JgUGs+L/G2DsC8q0mn7CEKozmukVCIFnmKO5bGugZdQ
gIS7RmEMtY3Nv6xR9AJaurAiBqxttckUZXpWOC3g3/w==”,
“paycode”: “12601609197”

}

Authorize Transaction Response 
The following describes the important data element required for Authorize Transaction response.

S/N Data Element (DE) Description
1 responseCode Response Code. See Response Code Table Below
2 responseDecription Response Description. See Response Code Table Below

Successful Response

        HTTP Status Code:  200

Content-Type: application/json

{

“responseCode”: “00”,

“responseDescription”: “Authorized”

}

Unsuccessful Response

HTTP Status Code:  401

Content-Type: application/json

{

“responseCode”: “63”,

“responseDescription”: “Security Violation”

}

HTTP Status Code:  500

Content-Type: application/json

{

“responseCode”: “06”,

“responseDescription”: “Unable to authorize due to some errors”

}

Was this article helpful to you? Yes No

How can we help?