Table of Contents
PDT & ITN Variables
Detailed below are the possible variables returned to the receiver as the response to a PDT request or as part of an ITN from PayFast.
Transaction Details
| Name | Description | Required | Length | Notes |
| m_payment_id | Unique transaction ID on the receiver's system. | |||
| pf_payment_id | Unique transaction ID on PayFast. | |||
| payment_status | The status of the payment. | |||
| item_name | The name of the item being charged for. | 100 char | ||
| item_description | The description of the item being charged for. | 255 char | ||
| amount_gross | The total amount which the payer paid. | |||
| amount_fee | The total in fees which was deducated from the amount. | |||
| amount_net | The net amount credited to the receiver's account. | |||
| custom_str1..5 | The series of 5 custom string variables (custom_str1, custom_str2...) originally passed by the receiver during the payment request. | 255 char | ||
| custom_int1..5 | The series of 5 custom integer variables (custom_int1, custom_int2...) originally passed by the receiver during the payment request. |
Payer Information
| Name | Description | Required | Length | Notes |
| name_first | First name of the payer. | 100 char | ||
| name_last | Last name of the payer. | 100 char | ||
| email_address | Email address of the payer. | 100 char |
Receiver Information
| Name | Description | Required | Length | Notes |
| merchant_id | The Merchant ID as given by the PayFast system. Used to uniquely identify the receiver's account. |
Security Information
| Name | Description | Required | Length | Notes |
| signature | A security signature of the transmitted data taking the form of an MD5 hash of the submitted variables. The string from which the hash is created, is the concatenation of the name value pairs of all the non-blank variables with ';' used as a separator eg. "name_first=John;name_last=Doe;" where pairs are listed in alphabetic order by name. This hash should be independently generated by the receiver and compared with this value to ensure the integrity of the data transfer. | 32 char |