Vodacom Financial Services: Payment Solutions - Merchant Payment Page Integration
Once-Off Credit Card Payments

Contents / Tables / Figures / Related Links
Version 3.5

1. Contents

Table 1. Contents
# Chapter
1. Introduction
2. Developer Information
2.1 - Minimum API Developer Requirements
2.2 - Operational & Maintenance Hours
2.3 - Security & Firewall Requirements
2.4 - Parameterised Data
2.5 - Role Players
2.6 - Payment Types
3. Implementation
3.1 - Merchant Integration Flow
3.2 - Step 1: Create Transaction Object
 - Asyncrhonous Webhooks response for the Payment Outcome
3.3 - Step 2: Encode the Form Data
3.4 - Step 3: Encrypt the Transaction Object
3.5 - Step 3: Encrypt the Transaction Object
3.6 - Step 5: POST Form
3.7 - Step 6: Transaction Notification to Merchant
 - Syncrhonous Payment Response
 - Asyncrhonous Payment Response
3.8 - Step 7: Settle Transaction
3.9 - Payment Intent API (Optional)
3.10 - Save Card Only Journey (Optional)
3.11 - Delete Saved Card (Optional)
3.12 - Refund API (Optional)
3.13 - Cancel Pre–Auth API (Optional)
4. Appendices
4.1 - Appendix A: Encryption Algorithms
4.2 - Appendix B: Control Key - TransactionStatusCompletedURL
4.3 - Appendix C: Control Key - TransactionStatusCallbackURL
4.4 - Appendix D: Bank Response Codes
4.5 - Appendix E: Payment Gateway Response Codes
4.6 - Appendix F: XML Schema Definitions
4.7 - Appendix G: Payment Page Checkout & Saved Card UX Journey
4.8 - Appendix H: Webhook Example Templates & Return Data
4.9 - Appendix I: Authentication

2. Tables

Table 2. Tables
# Tables
2.1 Table 4: Firewall Request for Asynchronous Call-Back
2.2 Table 5: Payment Gateway White-Listing Requirements
2.3 Table 6: Merchant Prerequisites
2.4 Table 7: Create Transaction Object
2.5 Table 8: WebHook Transaction Response Template Field Definition
2.6 Table 9: HTML Form Fields
2.7 Table 10: HTML Form Post Endpoints
2.8 Table 11: Merchant Notification POST Fields
2.9 Table 12: Asycnrhonous Callback POST Fields
2.10 Table 13: API Fields for Settle Requests
2.11 Table 14: API Fields for Settle Response
2.12 Table 15: Settlements API Service Endpoints
2.13 Table 16: Payment Intent Endpoints
2.14 Table 17: Payment Intent Request Payload
2.15 Table 18: Response Payload Returned Fields
2.16 Table 19: Save New Card without Payment HTML Post End-Point
2.17 Table 20: Save New Card without Payment Form Fields
2.18 Table 21: Save New Card without Payment Pre-Encrypyted XML/JSON fields
2.18 Table 22: Delete saved card endpoints
2.18 Table 23: Request Payload For Delete Saved Card
2.18 Table 24: Response of delete card request
2.18 Table 25: Refund API endpoints
2.18 Table 26: Refund API endpoint request payload
2.18 Table 27: Cancel Pre–Auth API endpoints
2.18 Table 28: Cancel Pre–Auth API endpoint url property
2.13 Table 29: Acquiring Bank Response Codes
2.14 Table 30: Payment Gateway Response Codes

3. Figures

Table 3. Figures
# Figures
3.1 Figure 1: Merchant Template Update
3.2 Figure 2: Webhooks Payment Asyncrhonous Response Template
3.3 Figure 3: Transaction Object – XML
3.3 Figure 4: Transaction Object – JSON
3.5 Figure 5: Setting the Payment Gateway Encryption Key
3.6 Figure 6: Encoded HTML Form
3.7 Figure 7: Merchant Payments Page
3.8 Figure 8: 3-D Secure OTP Capture
3.9 Figure 9: Asynchronous Callback XML Encoded Data
3.10 Figure 10: Asynchronous Callback JSON Encoded Data
3.11 Figure 11: XML Post-Back Example
3.12 Figure 12: JSON Post-Back Example
3.13 Figure 13: Manual Transaction Settle
3.14 Figure 14: API Settle Request - JSON
3.15 Figure 15: API Settle Request - XML
3.16 Figure 16: Settle Response Message - JSON
3.17 Figure 17: Settle Response Message - XML
3.18 Figure 18: Settlements API Sample Call - JSON
3.19 Figure 19: Settlements API Sample Call - XML
3.21 Figure 20: Payment Intent - Sample Transaction XML Object
3.21 Figure 21: Payment Intent Payload JSON Example for Request
3.21 Figure 22: Payment Intent JSON Response Format
3.21 Figure 23: Payment Intent JSON Example Response
3.21 Figure 24: Save-Card Encoded Html Form
3.21 Figure 25: Save Card Pre-encrypted JSON Payload
3.21 Figure 26: Save Card Pre-encrypted XML Payload
3.22 Figure 27: Sample JavaScript Blowfish Encryption
3.23 Figure 28: AES Encryption
3.24 Figure 29: TwoFish Encryption
3.24 Figure 30: Control Key Encryption - TransactionCompletedURL
3.25 Figure 31: Control Key Encryption - TransactionStatusCallbackURL
3.26 Figure 32: XML Schema Definition
3.27 Figure 33: Default Credit Card Payment Page UX
3.28 Figure 34: View Order Pop-Up UX
3.29 Figure 35: Payment Methods UX
3.30 Figure 36: Terms & Conditions and Privacy Policy UX
3.31 Figure 37: Credit-Card Capture Details UX
3.32 Figure 38: Credit-Card Save Card Details UX
3.33 Figure 39: ABSA 3D Secure (OTP) Check UX
3.34 Figure 40: Nedbank 3D Secure (OTP) Check UX
3.35 Figure 41: Processing Screen UX
3.36 Figure 42: Saved-Card Payment Page (with saved card) UX
3.37 Figure 43: Saved-Card Payment with CVV UX
3.38 Figure 44: Edit Saved Card UX
3.39 Figure 45: Delete Saved Card Confirmation UX
3.40 Figure 46: Confirmation of Saved Card Deletion for a Card with No Alias
3.41 Figure 47: WebHooks Base64 Encoded Template
3.42 Figure 48: WebHooks Template Base64 Encoding/Decoding
3.43 Figure 49: WebHooks Sample Response: Success
3.44 Figure 50: WebHooks Sample Response: Canceled
3.45 Figure 51: WebHooks Sample Response: Failed

4. Referenced Documentation


Continue

Return