Paynow Developer Hub
  • DOCUMENTATION
  • ABOUT
  • HELP
  • FORUMS
  • SIGN UP / SIGN IN

›API Reference

Getting Started

  • Getting started
  • Generating Integration Keys
  • Test Mode
  • Artwork and Buttons
  • PHP
  • .NET
  • Node.JS
  • Python
  • Java
  • WooCommerce
  • Gravity Forms
  • Easy Digital Downloads
  • Shopify
  • Camptix
  • Magento
  • Spring Boot

Links & Buttons

  • Simple Payment Request Button
  • Advanced Payment Request Button
  • Notification, Success & Cancel URLs
  • URL Safe Base 64 Encoding

API Reference

  • System Layout
  • Initiate a transaction
  • Express Checkout Transactions
  • Complete a Transaction
  • Status Update
  • Polling for a Status Update
  • Generating Hash
  • Validating Hash
  • Initiate a Passenger Ticket Transaction

Library Source Docs

  • PHP
  • .NET
  • Node.JS
  • Java

Express Checkout Transactions

An express checkout transaction allows a merchant to capture their customer's payment method and details inside their application and complete payment without redirecting the customer to Paynow.

Express checkout transactions currently support the following payment methods:

  • Visa/Mastercard (via tokenized card details)
  • Zimswitch (via tokenized card details)
  • EcoCash
  • OneMoney
  • InnBucks
  • PayGo (e.g. Omari)

Initiate an Express Checkout Transaction

To initiate an express checkout transaction, an HTTP POST request should be made to the URL:

https://www.paynow.co.zw/interface/remotetransaction

The fields below are required in addition to those specified in the Initiate a Transaction section

FieldRequired ForData TypeDescription
methodAllStringThe payment method to be used. One of the following:
  • zimswitch
  • vmc (Visa Mastercard)
  • ecocash
  • onemoney
  • innbucks
  • paygo
phoneMobile MoneyStringThe subscriber number of the mobile money wallet to be debited
tokenVisa/Mastercard/ZimswitchStringA token returned by a previous tokenized transaction. Used to carry out recurring payments without requiring further input from the card holder
merchanttraceVisa/Mastercard/ZimswitchStringA unique merchanttrace is required for each request to ensure that no duplicate debits are processed in the event of a request timeout or network interruption

Important Notes

Integration

The integration ID you use must be configured in Paynow to include the selected payment method e.g. if you use method=ecocash then the integration ID must be configured to include an EcoCash payment method

InnBucks

An express checkout request for InnBucks will return the following additional values:

  • authorizationcode - the authorization code for the InnBucks transaction (display to customer)
  • authorizationexpires - the date and time at which the given authorization code will expire, in the format d-MMM-yyyy HH:mm (display to customer)

The authorization code can also be displayed as a QR code to be scanned by the InnBucks mobile app. See https://developers.google.com/chart/infographics/docs/qr_codes for more details on generating a QR code

You should also present the customer with a deep link schinn.wbpycode://innbucks.co.zw?pymInnCode=xxxxxx where xxxxxx is replaced with the authorization code, which can be used to initiate a transaction in the InnBucks mobile app

PayGo

An express checkout request for PayGo will return the following additional values:

  • otpreference - the reference for the OTP which was sent to the customer's mobile number (display to customer)

Visa/Mastercard & Zimswitch

For Visa/Mastercard & Zimswitch token transactions, the merchanttrace field is required. These transactions will be automatically re-tokenized during the payment and the new token returned in the status update callback message

In order to initially get a token for a customer's payment instrument (card) which can be used repeatedly here, the merchant must redirect the customer to Paynow to complete a transaction where tokenize=true is specified in the initiate transaction request (see Initiate Transaction for more information)

The token is returned following a successful card payment (in the Status Update from Paynow) and can be stored by the merchant for future payments for the customer

← Initiate a transactionComplete a Transaction →
  • Initiate an Express Checkout Transaction
  • Important Notes
    • Integration
    • InnBucks
    • PayGo
    • Visa/Mastercard & Zimswitch
Documentation
Getting StartedAPI ReferenceFrequently Asked QuestionsArtwork & Buttons
Libraries & Plugins
PHP.NETNode.JSPythonJava
Plugins
WooCommerceGravity FormsEasy Digital DownloadsShopify
Community
Discussion ForumsBlogs & TutorialsGithubFacebookTwitter
Paynow Zimbabwe
Copyright © 2025 Paynow Zimbabwe