An official developer portal of the Government of the Republic of Zambia · Test environmentVerify a certificate
Pamodzi Developer HubBuild, integrate and learn the e-Services framework
MFL · Department of Veterinary Services

Slaughter Permit

FormWorkflowOutputsE2E testDocs
PassedPassedPassedPassedPassed
End-to-end test
3/3 passed 2026-10-21 (mihud, combined)
Documentation
19 steps, 32 images · Download the DOCX
Who can apply
Individual, Organization
Catalogue ID
377

Fees

FeeCaseAmount (ZMW)
Pregnant AnimalsNew200
Immature AnimalsNew100

Required documents

Output documents

Test evidence

Slaughter Permit

Service documentation · Republic of Zambia · GSB e-Services

OwnerDepartment of Veterinary Services
Service keyMFL/slaughter-permit
Versionservice v1, platform a0a302b8
Date2026-10-21

Generated automatically by the service's end-to-end test run. Every screenshot shows synthetic test data on a local test installation, never real personal data.

This document describes the Slaughter Permit service of Department of Veterinary Services as the platform runs it today. It is generated by the service's end-to-end test: every step below was performed by the test, and every screenshot was taken during that run with synthetic data. Regenerate it with npm run docs:services in the e2e suite; do not edit it by hand.

1. Service summary

ItemDetail
ServiceSlaughter Permit
Owner (MDA)Department of Veterinary Services (M)
PurposeService offered to companies and individuals who wishes to slaughter any immature or pregnant livestock.
Who can applyIndividual; Organization
How to applyOnline on the national e-Services portal, signed in with ZamPass; pay with ZamPay.
FeesPregnant Animals: ZMW 200.00
Immature Animals: ZMW 100.00
TurnaroundUp to 3 working days
Validity of the outputLinked to Stock Movement Permit
Required documentsNational Identity Card (NRC) (required)
Company Registration Certificate (required)
Certification from a Veterinary Officer (optional)
Stock Movement Permit (optional)
Passport (required)
Output documentsApplication form
GS-2 Notice of Government Action
Slaughter Permit
GF-1 Treasury Invoice
GF-2 Treasury Receipt
Legal basisAnimal Health Act No.27 of 2010 (https://www.parliament.gov.zm/sites/default/files/documents/acts/Animal%20Health%20act.pdf)
Statutory Instrument (SI) No 22. (https://faolex.fao.org/docs/pdf/zam191173.pdf)

2. Application process, step by step

The process as configured in the back office:

StepRoleTaskType
1ApplicantApplyform
2Case OfficerGenerate Paymentgenerate-payment
3ApplicantPaymentpayment
4SystemGenerate Documentgenerate-document
5Case OfficerReviewreview
6Case OfficerReviewreview
7Case OfficerApproveapprove
8SystemGenerate Documentgenerate-document
9SystemNotify Clientnotify

Who takes part in this journey: Citizen, Case Officer, Anyone (public).

Step 1. Find the service

Citizen · National e-Services portal

On the national e-Services portal the citizen opens All Services and searches for the service by name ("Slaughter Permit"). Each result names the service and the ministry that provides it.

Find the service (desktop) Find the service (375 px phone)

Step 2. Read the service page

Citizen · National e-Services portal

The service page sets out what the service is for, who provides it, the fee, how long it takes and the documents to have ready. "Start application" begins an application (the citizen is signed in with ZamPass).

Read the service page (desktop) Read the service page (375 px phone)

Step 3. Confirm the applicant details

Citizen · National e-Services portal

The applicant details are filled in from the citizen's ZamPass account. The citizen says whom they are applying for (themself) and continues with "Proceed to Application".

Confirm the applicant details (desktop) Confirm the applicant details (375 px phone)

Step 4. Fill in the application form

Citizen · National e-Services portal

The citizen answers the service's own application form, converted from the legacy system (4 answers in this run, all synthetic), for the type of application "New". Questions marked * must be answered; some appear only after an earlier answer. Answers are saved as the citizen types, so an unfinished application can be reopened from My Workplace.

Fill in the application form (desktop) Fill in the application form (375 px phone)

Step 5. Upload the supporting documents

Citizen · National e-Services portal

Each document the service asks for has its own upload (5 in this run: National Identity Card (NRC), Company Registration Certificate, Certification from a Veterinary Officer, Stock Movement Permit, Passport). The files are checked and stored with the application; the page confirms each upload.

Upload the supporting documents (desktop) Upload the supporting documents (375 px phone)

Step 6. Check the answers and confirm the declaration

Citizen · National e-Services portal

Before sending, the citizen sees every answer and document on one page and can go back to change them. The declaration that the information is true and complete must be ticked.

Check the answers and confirm the declaration (desktop) Check the answers and confirm the declaration (375 px phone)

Step 7. Application sent

Citizen · National e-Services portal

The portal confirms the application with the ministry's reference number (M-SP/00001/10-21-26 in this run). The application goes to the ministry's officers; the citizen follows it in My Workplace.

Application sent (desktop) Application sent (375 px phone)

Step 8. Take the new application on

Case Officer · Back office

The application arrives in the case queue of the ministry that owns the service (Department of Veterinary Services); only its staff see it. The officer opens it by its reference number - answers, documents and process are on the case - assigns it to themself and takes it on.

Take the new application on (desktop)

Step 9. Fill in the certificate particulars

Case Officer · Back office

The issued document prints 1 field that come from the office rather than from the application (Livestock other). The officer fills them in on the case's "Certificate particulars" tab before the document is issued (synthetic values in this run) and saves; once the document is issued they can no longer change.

Fill in the certificate particulars (desktop)

Step 10. Work out the fee

Case Officer · Back office

The Case Officer works out the fee from the service's imported fee schedule ("• Pregnant Animal ZMW 200.00 • Immature Animal ZMW 100.00"). "Submit Fees and Advance" records it, raises a ZamPay invoice for the applicant and moves the case to payment.

Work out the fee (desktop)

Step 11. See that the fee is due

Citizen · National e-Services portal

The application shows "Waiting for your payment" in My Workplace with a Pay button (K200.00). The office priced the case; the invoice was raised on ZamPay.

See that the fee is due (desktop) See that the fee is due (375 px phone)

Step 12. Pay with ZamPay

Citizen · National e-Services portal

Pay opens the invoice (K200.00, the amount set by the platform, never by the page) with its PDF preview; the citizen pays at ZamPay by mobile money or bank card.

Pay with ZamPay (desktop) Pay with ZamPay (375 px phone)

Step 13. Payment received

Citizen · National e-Services portal

ZamPay reports the payment; the dialog says "Paid. Thank you" and the application moves on to the ministry's officers.

Payment received (desktop) Payment received (375 px phone)

Step 14. Receive, Inspect, Report Findings

Case Officer · Back office

The Case Officer works on "Receive, Inspect, Report Findings" (review in the imported process), checks the application and its documents, and completes the step.

Receive, Inspect, Report Findings (desktop)

Step 15. Draft Decision, Upload Document

Case Officer · Back office

The Case Officer works on "Draft Decision, Upload Document" (review in the imported process), checks the application and its documents, and completes the step.

Draft Decision, Upload Document (desktop)

Step 16. Decide: Review, Inspect, e-Sign

Case Officer · Back office

At "Review, Inspect, e-Sign" the Case Officer records the decision: approve, with a comment kept in the case history. Approving moves the case on; the last decision completes it and issues the document.

Decide: Review, Inspect, e-Sign (desktop)

Step 17. Issue the document

Case Officer · Back office

The service's validity ("Linked to Stock Movement Permit") is not a fixed period, so completing the case does not issue the document by itself: the officer issues it from the completed case ("Issue / check permit"). It is generated from the service's output configuration and sealed.

Issue the document (desktop)

Step 18. The document in My permits

Citizen · National e-Services portal

The issued document (M-SP-2026-00001 in this run: "Slaughter Permit") is listed in "My permits and licences" with its validity and a download of the sealed PDF.

The document in My permits (desktop) The document in My permits (375 px phone)

Step 19. Verify the document

Anyone (public) · Public verification page

The QR code on the document opens the public verification page: genuine and current, to whom it was issued, and whether the electronic seal is valid. No sign-in is needed.

Verify the document (desktop) Verify the document (375 px phone)

3. Payment

ItemIn the test run
Fee (as published)• Pregnant Animal ZMW 200.00 • Immature Animal ZMW 100.00
Invoice 11044453811276150
Amount 1ZMW 200.00
Paid at 1after "Work out the fee"

On screen: step 10 (Work out the fee), step 11 (See that the fee is due), step 12 (Pay with ZamPay), step 13 (Payment received) in section 2.

4. Output documents

Slaughter Permit (sealed PDF)

Issued when the case was approved, from the service's output configuration (service template MFL_SlaughterPermit.Certificate.docx), filled from the application and the decision, sealed with the platform's electronic seal and stored as the issued version. The holder downloads it from My permits; the verification page checks it.

Slaughter Permit (sealed PDF)

The issued PDF has 1 page; the image shows the first.

Fields

FieldValue in the test run
Document titleSlaughter Permit
Permit / licence numberM-SP-2026-00001
HolderChanda Mwila
Valid from2026-10-21
Valid until
Statusactive
Verification code (printed with a QR code)AQC8-AKB2-9B

Seal

ItemDetail
Seal statussealed
Signature levelPAdES-B-T
Sealed bythe platform seal (development key in the test run)
Signed at2026-10-21T05:49:00.299Z
Trusted time-stamp2026-10-21T05:49:00.274Z (time-stamping authority)
Document fingerprint (SHA-256)24bbcebbd41d8713...

Verification

ItemDetail
WhereThe public verification page of the national portal, <portal>/verify/<verification code>, opened by scanning the QR code on the document.
What it showsWhether the document is genuine and current, its holder and validity, and whether the electronic seal is valid and who sealed it.
Checking a copyAnyone can upload a PDF they were given; the page says whether it is exactly the document that was issued. A changed copy is reported as not matching.

On screen: step 17 (Issue the document), step 18 (The document in My permits), step 19 (Verify the document) in section 2.

5. Notifications

WhenChannelToMessageDelivery
Application receivedin-app (portal bell)the applicantApplication M-SP/00001/10-21-26 received - Your application M-SP/00001/10-21-26 for Slaughter Permit has been received by Department of Veterinary Services.shown
Status changedin-app (portal bell)the applicantUpdate on application M-SP/00001/10-21-26 - M-SP/00001/10-21-26 (Slaughter Permit) is now: With the office - fees being worked out.shown
Payment due (invoice raised)in-app (portal bell)the applicantPayment due for application M-SP/00001/10-21-26 - The fee of ZMW 200.00 for Slaughter Permit (M-SP/00001/10-21-26) is now due. Invoice 1044453811276150.shown
Payment receivedin-app (portal bell)the applicantPayment received for M-SP/00001/10-21-26 - Your payment of ZMW 200.00 for M-SP/00001/10-21-26 (Slaughter Permit) has been received. Receipt: <ZamPay>/pdf?documentType=receipt&invoiceNumber=1044453811276150shown
Invitation to rate the servicein-app (portal bell)the applicantHow was Slaughter Permit? - How was Slaughter Permit? Tell us in about a minute.shown
Decision: approvedin-app (portal bell)the applicantApplication M-SP/00001/10-21-26 completed - M-SP/00001/10-21-26 (Slaughter Permit) is complete. Your documents are ready.shown
Licence / permit issuedin-app (portal bell)the applicantYour Slaughter Permit document has been issued - M-SP-2026-00001 has been issued for Slaughter Permit.shown
Application receivedemaile2e.c***@example.testApplication M-SP/00001/10-21-26 receivedskipped
Application receivedsms+260 97* *** 567Application M-SP/00001/10-21-26 for Slaughter Permit has been received. Track it: <portal>/my-workplacedelivered
Status changedsms+260 97* *** 567delivered
Payment due (invoice raised)emaile2e.c***@example.testPayment due for application M-SP/00001/10-21-26skipped
Payment due (invoice raised)sms+260 97* *** 567Fee of ZMW 200.00 due for M-SP/00001/10-21-26. Invoice 1044453811276150. Pay: <ZamPay>/pay-for-service/get-invoice/1044453811276150delivered
Payment receivedsms+260 97* *** 567delivered
Invitation to rate the servicesms+260 97* *** 567skipped
Invitation to rate the serviceemaile2e.c***@example.testHow was Slaughter Permit?skipped
Decision: approvedemaile2e.c***@example.testApplication M-SP/00001/10-21-26 completedskipped
Decision: approvedsms+260 97* *** 567delivered
Licence / permit issuedsms+260 97* *** 567delivered
Licence / permit issuedemaile2e.c***@example.testYour Slaughter Permit document has been issuedskipped

Delivery: shown = in the portal's notification bell; delivered = the SMS gateway (a test double in this run) reported the text delivered; skipped = not sent on that channel (e-mail is not configured on the test installation, and some notices go out on one channel only); sent by the national portal = a ministry node handed the notice to the national portal, which texts and e-mails the citizen under its own name and the citizen's preferences. Addresses written <portal>, <ZamPay> stand for the national portal and ZamPay.

6. Legacy mapping

ItemDetail
ReplacesSlaughter Permit in the legacy ZIGS e-Services directory (ZIGS_Services)
Legacy service id377
Legacy providerDepartment of Veterinary Services (MFL) under Ministry of Fisheries and Livestock
Legacy processFastTrackReview (process 4)
Fee in the legacy systemPregnant Animals: ZMW 200 (New)
Immature Animals: ZMW 100 (New)
Fee taken before submissionyes (as in ZIGS)
Time to issue (legacy)New: 2 working days
Legacy output templatesApplication form: ZIGS_Forms_MFL / MFL_SlaughterPermit.Application
GS-2 Notice of Government Action: ZIGS_Forms_Notices / GS-2.NoticeOfAction
Slaughter Permit: ZIGS_Forms_MFL / MFL_SlaughterPermit.Certificate
GF-1 Treasury Invoice: ZIGS_CustomForms / GF-1 Invoice
GF-2 Treasury Receipt: ZIGS_CustomForms / GF-2 Receipt
Legacy addressnone recorded
How it was brought overImported by the platform's legacy catalogue importer (zcm-backend scripts/zigs/importLegacy.js) from the ZIGS snapshot: form, case types, fees, documents, process and output templates, then served by the new platform.

7. Version and date

ItemDetail
Document versionservice v1, platform a0a302b8
Generated2026-10-21T05:49:07Z (by the end-to-end run, not edited by hand)
Service versionnot versioned (configured directly)
Platform snapshotbackend a0a302b8
portal 72805f0
back office 58e5946
Test suitee2e 5999d9b; one installation (combined); seed profile mihud
Journeys30-catalogue-service.spec.js: citizen finds the service, answers its form, uploads its documents and sends the application - passed
30-catalogue-service.spec.js: the case goes through every step of its process: payments by the citizen, each officer step by its role - passed
30-catalogue-service.spec.js: the grant document is issued, sealed, filled in and verifiable; the citizen has it in My permits - passed
Result3 of 3 journey tests passed
DataSynthetic test data on a local test installation; provider test doubles for ZamPass, ZamPay, SMS and signing.