INTRODUCTION

Need to integrate any of the services we provide into your applications? Access the tools and resources you need to offer services similar to our platform.

If you will be needing a technical support to integrate the API or more request, kindly use the Contact form sending us a mail in respect to your request.
We will also send you commission for using our API when you send us a mail.

Last Updated: 05:36pm - Wednesday, 20th November, 2019

User Account

GET: https://www.payscribe.ng/api/account/

Headers
Content-Type: application/json
Authorization: Bearer {YOUR API TOKEN}

Body
{ "username": "{YOUR EMAIL ID}" }

													{
													"status": true,
													"message": {
													"description": "User authenticated successfully.",
													"details":{
													"name": "{Your full name}",
													"phone": "08144227788",
													"wallet": "16064",
													"commission": "37.25",
													"referral_code": "12457"
													}
													},
													"status_code": 200
													}
												

Services available on the API are:

Airtime Purchase
Buy 9mobile, MTN, GLO, AIRTEL VTU at cheap price using our API

Data Purchase
Buy 9mobile, MTN, GLO, AIRTEL data at cheap price using our API

Multichoice Bills
Vend for GOTV, DSTV, STARTIMES and get instant commission

Electricity Purchase
Buy 9mobile, MTN, GLO, AIRTEL data at cheap price using our API

VEND AIRTIME

Purchase airtime (Glo, Mtn, Airtel, 9mobile)

POST: https://www.payscribe.ng/api/vend/airtime/

Headers
Content-Type: application/json
Authorization: Bearer {YOUR API TOKEN}

Body '{"network":"{NETWORK NAME}", "amount":200, "recipent": "{PHONE NUMBER}"}'

Please replace the NETWORK NAME with the respective network eg glo, mtn 9mobile or airtel, also replace the {PHONE NUMBER} with your customer number.
Note: the recipent can come as multiple, but separate it with comma(,) i.e 07038067493, 07038067492
													"status": true,
													"message": {
														"description": "Order received. In process.",
														"details": {
															"processed": "07038067493,",
															"amount": 96,
															"total_charge" : 96
															"transaction_id": "PS75893264",
															"network": "",
															"datetime": "2019-08-03 22:51:16"
														}
													},
													"status_code": 200
												

VEND DATA

Purchase data (Glo, Mtn, Airtel, 9mobile)

Data Lookup

GET: https://www.payscribe.ng/api/lookup/data

Headers
Content-Type: application/json
Authorization: Bearer {YOUR API TOKEN}

Body '{"network":"{NETWORK NAME}"'

Please replace the NETWORK NAME with the respective network eg glo, mtn 9mobile or airtel. Note that if the network parameter is empty, we will return all data services.
													{
														"status": true,
														"message": {
															"description": "Lookup successful.",
															"details": [
																{
																	"network_name": "mtn",
																	"title": "MTN Data",
																	"network_code": "PSDATA_15",
																	"check_balance": "*461*4#",
																	"plans": [
																		{
																			"plan_code": "PSPLAN_55",
																			"name": "250MB",
																			"amount": "150"
																		},
																		{
																			"plan_code": "PSPLAN_56",
																			"name": "500MB",
																			"amount": "300"
																		},
																		{
																			"plan_code": "PSPLAN_57",
																			"name": "1GB",
																			"amount": "470"
																		},
																		{
																			"plan_code": "PSPLAN_58",
																			"name": "2GB",
																			"amount": "940"
																		},
																		{
																			"plan_code": "PSPLAN_59",
																			"name": "5GB",
																			"amount": "2350"
																		}
																	]
																},
																{
																	"network_name": "glo",
																	"title": "Glo Data",
																	"network_code": "PSDATA_16",
																	"check_balance": "*127*0#",
																	"plans": [
																		{
																			"plan_code": "PSPLAN_61",
																			"name": "3.65GB/4.5GB",
																			"amount": "1700"
																		},
																		{
																			"plan_code": "PSPLAN_62",
																			"name": "7GB/8.75GB",
																			"amount": "2550"
																		},
																		{
																			"plan_code": "PSPLAN_63",
																			"name": "10GB/12.5GB",
																			"amount": "3400"
																		},
																		{
																			"plan_code": "PSPLAN_64",
																			"name": "12.5GB/15.6GB",
																			"amount": "4250"
																		},
																		{
																			"plan_code": "PSPLAN_65",
																			"name": "20GB/25GB",
																			"amount": "6800"
																		},
																		{
																			"plan_code": "PSPLAN_66",
																			"name": "26GB/32.5GB",
																			"amount": "8500"
																		},
																		{
																			"plan_code": "PSPLAN_67",
																			"name": "42GB/52.5GB",
																			"amount": "12750"
																		},
																		{
																			"plan_code": "PSPLAN_68",
																			"name": "63GB/78.7GB",
																			"amount": "17000"
																		},
																		{
																			"plan_code": "PSPLAN_69",
																			"name": "1.6GB/1.84GB",
																			"amount": "850"
																		},
																		{
																			"plan_code": "PSPLAN_70",
																			"name": "5.75GB/7.2GB",
																			"amount": "2150"
																		},
																		{
																			"plan_code": "PSPLAN_85",
																			"name": "800MB/920MB",
																			"amount": "450"
																		}
																	]
																},
																{
																	"network_name": "airtel",
																	"title": "Airtel Data",
																	"network_code": "PSDATA_17",
																	"check_balance": "*140#",
																	"plans": [
																		{
																			"plan_code": "PSPLAN_71",
																			"name": "1.5GB",
																			"amount": "970"
																		},
																		{
																			"plan_code": "PSPLAN_72",
																			"name": "3.5GB",
																			"amount": "1950"
																		},
																		{
																			"plan_code": "PSPLAN_73",
																			"name": "5.5GB",
																			"amount": "2450"
																		}
																	]
																},
																{
																	"network_name": "9mobile",
																	"title": "9mobile Data",
																	"network_code": "PSDATA_18",
																	"check_balance": "*229*9#",
																	"plans": [
																		{
																			"plan_code": "PSPLAN_74",
																			"name": "1.5GB",
																			"amount": "1110"
																		},
																		{
																			"plan_code": "PSPLAN_75",
																			"name": "1GB",
																			"amount": "920"
																		},
																		{
																			"plan_code": "PSPLAN_76",
																			"name": "2.5GB",
																			"amount": "1840"
																		},
																		{
																			"plan_code": "PSPLAN_77",
																			"name": "4GB",
																			"amount": "2760"
																		},
																		{
																			"plan_code": "PSPLAN_78",
																			"name": "5.5GB",
																			"amount": "3680"
																		},
																		{
																			"plan_code": "PSPLAN_79",
																			"name": "11.5GB",
																			"amount": "7360"
																		},
																		{
																			"plan_code": "PSPLAN_80",
																			"name": "15GB",
																			"amount": "9200"
																		},
																		{
																			"plan_code": "PSPLAN_81",
																			"name": "27.5GB",
																			"amount": "16560"
																		}
																	]
																}
															]
														},
														"status_code": 200
													}
												

Data Vending

POST: https://www.payscribe.ng/api/vend/data/

Headers
Content-Type: application/json
Authorization: Bearer {YOUR API TOKEN}

Body '{"network":"{NETWORK}", "plan":{PLAN CODE}, "recipent": "{PHONE NUMBER}"}'

Please replace the {NETWORK} with the respective name: glo, mtn, 9mobile or airtel.
Replace the {PLAN CODE} with the plan_code you want to buy as seen as on the lookup
also replace the {PHONE NUMBER} with your customer number (You can vend for multiple number. Separate it with comma(,))
													{
														"status": true,
														"message": {
															"description": "Order received. In process.",
															"details": {
																"processed": "07038067493,",
																"amount": 150,
																"transaction_id": "PS82731549",
																"datetime": "2019-08-20 06:28:47"
															}
														},
														"status_code": 200
													}
												

VEND MULTICHOICE - GOTV, DSTV

GET: https://www.payscribe.ng/api/validate/multichoice/

Multichoice validation

Headers
Content-Type: application/json
Authorization: Bearer {YOUR API TOKEN}

Body '{"multichoice_type":"{MULTICHOICE TYPE}", "smart_card_no": {SMART CARD NO}}'

Please replace the {MULTICHOICE TYPE} with the respective multichoice type you're vending eg GOTV, or DSTV Replace the {SMART CARD NO} with the number you're trying to vend for.

													{
													"status": true,
													"message": {
														"description": "Validation successful.",
														"details": {
															"customer_smart_card_name": "{CUSTOMER_SMART_CARD_NAME}",
															"productCode": "6C4D42510ABB18165286343A2B588DCDDAE6477FFFC7D75E4B447FDA494AA86AC493A667884AB5627DDB119C01AC19C1CFFC92CC53CA604D8A495EE6B80109F0|eyJwcm9kdWN0IjoiTVVMVElDSE9JQ0UiLCJ1bml0IjoiR09UViIsImFjY291bnQiOiI3MDI4ODc3MTQ4IiwibmFtZSI6IlBISUxJUCBTT0tPWUEiLCJjdXN0b21lck51bWJlciI6IjEwNzk4MjU1NSIsImJvdXF1ZXRzIjpbeyJuYW1lIjoiR090diBWYWx1ZSIsInByb2R1Y3RfY29kZSI6IkRTVFZ8R09UViIsImFtb3VudCI6IjEyNTAifSx7Im5hbWUiOiJHT3R2IFBsdXMiLCJwcm9kdWN0X2NvZGUiOiJEU1RWfEdPVFZQTFMiLCJhbW91bnQiOiIxOTAwIn0seyJuYW1lIjoiR090diBNYXgiLCJwcm9kdWN0X2NvZGUiOiJEU1RWfEdPdHZNYXgiLCJhbW91bnQiOiIzMjAwIn0seyJuYW1lIjoiR090diBMaXRlIE1vbnRobHkiLCJwcm9kdWN0X2NvZGUiOiJEU1RWfEdPSEFOIiwiYW1vdW50IjoiNDAwIn0seyJuYW1lIjoiR090diBMaXRlIFF1YXJ0ZXJseSIsInByb2R1Y3RfY29kZSI6IkRTVFZ8R09MSVRFIiwiYW1vdW50IjoiMTA1MCJ9XSwic2VydmljZUlkIjoiQVFDIn0%3D",
															"bouquets": [
																{
																	"name": "GOtv Value",
																	"product_code": "DSTV|GOTV",
																	"amount": "1250"
																},
																{
																	"name": "GOtv Plus",
																	"product_code": "DSTV|GOTVPLS",
																	"amount": "1900"
																},
																{
																	"name": "GOtv Max",
																	"product_code": "DSTV|GOtvMax",
																	"amount": "3200"
																},
																{
																	"name": "GOtv Lite Monthly",
																	"product_code": "DSTV|GOHAN",
																	"amount": "400"
																},
																{
																	"name": "GOtv Lite Quarterly",
																	"product_code": "DSTV|GOLITE",
																	"amount": "1050"
																}
															]
														}
													},
													"status_code": 200
												}
												

Multichoice payment

POST: https://www.payscribe.ng/api/multichoice/payment/

Multichoice Payment

Headers
Content-Type: application/json
Authorization: Bearer {YOUR API TOKEN}

Body '{ "multichoice_type":"{MULTICHOICE_TYPE}", (required)
"smart_card_no": {SMART CARD NO}, (required)
"amount" : 1900, (required)
"product_code" : "DSTV|GOTVPLS", (required)
"productCode" : "{THE VALIDATION PRODUCT CODE}", (required)
"phone_number" : "{CUSTOMER PHONE NUMBER}", (not mandatory)
"customer_name" : "{CUSTOMER NAME}", (not mandatory)
"transaction_id" : "{YOUR UNIQUE TRANSACTION ID}", (required)
}'

The following parameters should be replaced with the right parameters

													"status": true,
													"message": {
														"description": "Transaction Successful.",
														"details": {
															"processed": "GOTV|745512200",
															"amount": 1900,
															"transaction_id": "PS75893264",
															"datetime": "2019-08-03 22:51:16"
														}
													},
													"status_code": 200
												

VEND STARTIMES

GET: https://www.payscribe.ng/api/validate/multichoice/

Startimes validation

Headers
Content-Type: application/json
Authorization: Bearer {YOUR API TOKEN}

Body '{"smart_card_no": {YOUR SMART CARD NO}}'

Please Replace the {SMART CARD NO} with the number you're trying to vend for.

													{
													"status": true,
													"message": {
														"description": "Validation successful.",
														"details": {
															"customer_smart_card_name": "Sokoya Philip",
															"productCode": "576FD941ECCE240CAA6FF53D4D9995393AC33D9B6FC5573DB44FB87E3F50C2931843A882620D50F5EBE6DE8431B5B2954EFCFB2B1EB4E255A9AA2D8720456DBB|eyJwcm9kdWN0IjoiU1RBUlRJTUVTIiwiY3VzdG9tZXJRdWVyeUJhbGFuY2VCYWxhbmNlIjoiMjcuMjIiLCJjdXN0b21lclF1ZXJ5QmFsYW5jZUJpbGxBbW91bnQiOiIwLjAiLCJjdXN0b21lclF1ZXJ5QmFsYW5jZVBheVR5cGUiOiIxIiwiY3VzdG9tZXJRdWVyeUJhbGFuY2VTbWFydENhcmRDb2RlIjoiMDIxNDY0NTIzNTYiLCJjdXN0b21lclF1ZXJ5QmFsYW5jZU5hbWUiOiJGdW5zaG8gQXllbmkiLCJjdXN0b21lclZhbGlkYXRpb25TbWFydENhcmRDZGUiOiIwMjE0NjQ1MjM1NiIsImN1c3RvbWVyVmFsaWRhdGlvbkJhbGFuY2UiOiIyNy4yMiIsImN1c3RvbWVyVmFsaWRhdGlvbkJvdXF1ZXQiOiJCYXNpYyBCb3VxdWV0OyIsImN1c3RvbWVyVmFsaWRhdGlvbk5hbWUiOiJGdW5zaG8gQXllbmkifQ%3D%3D",
															"bouquets": [
																{
																	"name": "NOVA",
																	"cycles": {
																		"daily": 60,
																		"weekly": 300,
																		"monthly": 900
																	}
																},
																{
																	"name": "BASIC",
																	"cycles": {
																		"daily": 90,
																		"weekly": 450,
																		"monthly": 1300
																	}
																},
																{
																	"name": "SMART",
																	"cycles": {
																		"daily": 120,
																		"weekly": 600,
																		"monthly": 1900
																	}
																},
																{
																	"name": "CLASSIC",
																	"cycles": {
																		"daily": 180,
																		"weekly": 900,
																		"monthly": 1900
																	}
																},
																{
																	"name": "SUPER",
																	"cycles": {
																		"daily": 180,
																		"weekly": 900,
																		"monthly": 2600
																	}
																}
															]
														}
													},
													"status_code": 200
												}
												

Startimes payment

POST: https://www.payscribe.ng/api/multichoice/payment/

Multichoice Payment

Headers
Content-Type: application/json
Authorization: Bearer {YOUR API TOKEN}

Body '{ "multichoice_type":"STARTIMES", (required)
"smart_card_no": {SMART CARD NO}, (required)
"amount" : 100, (required)
"product_code" : "NOVA|BASIC|SMART|CLASSIC|SUPER", (required)
"productCode" : "{THE VALIDATION PRODUCT CODE}", (required)
"phone_number" : "{CUSTOMER PHONE NUMBER}", (not mandatory)
"customer_name" : "{CUSTOMER NAME}", (not mandatory)
"transaction_id" : "{YOUR UNIQUE TRANSACTION ID}", (required)
}'

Please the above parameters should be replaced with the right parameters

													{
														["status"]=> bool(true)
														["message"]=> array(2)
															{
																["description"]=> string(23) "Transaction successful."
																["details"]=> array(4)
															{
																["processed"]=> string(21) "STARTIMES|01467438081"
																["amount"]=> string(3) "100"
																["transaction_id"]=> string(10) "PS73184296"
																["datetime"]=> string(19) "2019-11-06 16:29:03"
															}
													}
														["status_code"]=> int(200)
													}
												

VEND ELECTRICITY - IKEJA, EKO, ENUGU, PHED, IBADAN, ABUJA, KANO ELECTRICITY DISTRIBUTION

Electricity validation

Our Api covers the following electricity distribution in Nigeria.

  • Payment for Ikeja Electric Ikeja Electric (ie)
  • Payment for Eko Electricity Eko Electricity (ekedc)
  • Payment for Enugu Electricity Enugu Electricity (eedc)
  • Payment for Ibadan Electricity Ibadan Electricity (ibedc)
  • Payment for Portharcourt Electricity Portharcourt Electricity (phed)

Please Read

When calling our electricity API, you make use of the service short name as the endpoint For example to validate for Ikeja electricity, the short name is ie.
So the final endpoint will be https://www.payscribe.ng/api/electricity/validate/ie, Where the short name is ie

Also note that all services except ikeja electricity (ie) require product_code when making payment. The product code will be sent along othe information when validating.
That is why we require you to make a validation before processing the payment.

Validation

Headers
Content-Type: application/json
Authorization: Bearer {YOUR API TOKEN}

Endpoint https://www.payscribe.ng/api/electricity/validate/{SERVICE_SHORTNAME} Where SERVICE_SHORTNAME is either ie, eedc, abuja, ekedc, phed

Body '{"meter_number":"{YOUR METER NUMBER}", "meter_type": {prepaid or postpaid}'

We validated Ikeja Postpaid, below is the response.

													{
														"status": true,
														"message": {
															"description": "IE Validation successful.",
															"details": {
																"customer_name": "MR N MRS ADEOLA TOKUNBO"
															}
														},
														"status_code": 200
													}
												

We validated Abuja Prepaid, below is the response. Take note of the product_code that comes with the response, you'll use it when making payment.

													{
														"status": true,
														"message": {
															"description": "Abuja Validation successful.",
															"details": {
																"customer_name": "AUGUTINE ARUN OGBODO",
																"product_code": "5771D757DE9B9CFCC19E71E72CD11B756473ECB1B0DC41C245B5BB93AEBBBFEB82BFD9752E12B8F702260872EB4CD7BDD7C395DEAC00B3CCB0776B8083BDE07C|eyJwcm9kdWN0IjoiQUJVSkFFTEVDVFJJQ0lUWSIsInR5cGUiOiJWYWxpZGF0aW9uIiwiY3VzdG9tZXJNZXRlck5vIjoiMDcwODU1MjI1NjgiLCJuYW1lIjoiQVVHVVRJTkUgQVJVTiBPR0JPRE8iLCJjbGllbnRJZCI6Iml0ZXgiLCJwYXNzY29kZSI6Il9pbnRlMGJ2eHoqIiwidW5pcXVlY29kZSI6IjA5MTEyMDc4NDMiLCJkYXRlVGltZSI6IjIwMTktMDktMTEgMTE6MTIiLCJkZXZpY2VJZCI6IjIwMzMwMDA5In0%3D"
															}
														},
														"status_code": 200
													}
												

For further record or log, you may choose to get transaction report.

Get transaction report for any service you vend

Successful Result

													{
														"status": true,
														"message": {
															"description": "Lookup successful.",
															"details": {
																"trans_id": "PS321865",
																"description": "N200 MTN Airtime Purchase for 1 Recipent (07038067496)",
																"amount": "192",
																"prev_balance": "6700",
																"balance": "6508",
																"date_initiated": "2019-05-22 12:31:40",
																"status": "success"
															}
														},
														"status_code": 200
													}
												

List of our status code

Successful Result

													200 - Success
													201 - Transaction Pending
													400 - Bad Request, Something missing in your body request
													401 - User not authenticated
													402 - Insufficient Fund
													403 - Forbidden request
													404 - Page Not found
													405 - Duplicate Transaction
													406 - Missing Required Information, Please check that you have provided all mandatory information
													407 - Invalid product code
													408 - MSISDN Invalid
													409 - Amount invalid To Process
													434 - General Operator Side Error, Transaction Failed
													435 - General Database Error, Transaction Failed
													5xx - Some server-side error