Accept payments effortlessly and boost your business.

Zing.gg is an online payment platform for accepting cards and other payment methods through all your sales channels. We offer access to a global acquiring network through a single API integration.

Everything you need to accept all major card brands, payment methods and currencies globally.


Contact Sales Get Started
Image Description
Image Description

Merchant Account in 3 easy steps

SVG

Create an account

SVG

Complete Onboarding

SVG

Start Getting Paid

SVG

Virtual Terminal

A Virtual Terminal is the easy way for your call centre operatives to enter a payment

SVG

Hosted Checkout

Flexible and secure hosted payment page, easy to integrate and style how you like

SVG

Recurring Payments

Optimize your billing strategy with one-click, recurring subscriptions and metered billing

SVG

Billing Manager

Create and manage ongoing subscriptions and instalments with z-Terminal module

SVG

Single Integration

Connect to multiple acquirers and all the payment methods you need with a single integration

SVG

Fraud Prevention

PCI DSS and 3DS 2.0 ready solution reduces PCI scope and keeps you safe and secure

It's free. Test Zing.gg without commitment

  
curl https://test.oppwa.com/v1/checkouts \
 -d "entityId=8a8294174b7ecb28014b9699220015ca" \
 -d "amount=92.00" \
 -d "currency=EUR" \
 -d "paymentType=DB" \
 -d "registrations[0].id=8ac7a49f6c619208016c6261cc9841db" \
 -d "registrations[1].id=8ac7a49f6c619208016c6261ced741e7" \
 -d "createRegistration=true" \
 -H "Authorization: Bearer OGE4Mjk0MTc0YjdlY2IyODAxNGI5Njk5MjIwMDE1Y2N8c3k2S0pzVDg="
  
  
function request() {
	$url = "https://test.oppwa.com/v1/checkouts";
	$data = "entityId=8a8294174b7ecb28014b9699220015ca" .
                "&amount=92.00" .
                "¤cy=EUR" .
                "&paymentType=DB" .
                "®istrations[0].id=8ac7a49f6c619208016c6261cc9841db" .
                "®istrations[1].id=8ac7a49f6c619208016c6261ced741e7" .
                "&createRegistration=true";

	$ch = curl_init();
	curl_setopt($ch, CURLOPT_URL, $url);
	curl_setopt($ch, CURLOPT_HTTPHEADER, array(
                   'Authorization:Bearer OGE4Mjk0MTc0YjdlY2IyODAxNGI5Njk5MjIwMDE1Y2N8c3k2S0pzVDg='));
	curl_setopt($ch, CURLOPT_POST, 1);
	curl_setopt($ch, CURLOPT_POSTFIELDS, $data);
	curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, false);// this should be set to true in production
	curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
	$responseData = curl_exec($ch);
	if(curl_errno($ch)) {
		return curl_error($ch);
	}
	curl_close($ch);
	return $responseData;
}
$responseData = request();
  
  
require 'net/https'
require 'uri'
require 'json'

def request()
	uri = URI('https://test.oppwa.com/v1/checkouts')
	http = Net::HTTP.new(uri.host, uri.port)
	http.use_ssl = true
	req = Net::HTTP::Post.new(uri.path)
	req.set_form_data({
		'entityId' => '8a8294174b7ecb28014b9699220015ca',
		'amount' => '92.00',
		'currency' => 'EUR',
		'paymentType' => 'DB',
		'registrations[0].id' => '8ac7a49f6c619208016c6261cc9841db',
		'registrations[1].id' => '8ac7a49f6c619208016c6261ced741e7',
		'createRegistration' => 'true'
	})
	res = http.request(req)
	return JSON.parse(res.body)
end

puts request()
  
  
var https = require('https');
var querystring = require('querystring');

function request(callback) {
	var path='/v1/checkouts';
	var data = querystring.stringify( {
		'entityId':'8a8294174b7ecb28014b9699220015ca',
		'amount':'92.00',
		'currency':'EUR',
		'paymentType':'DB',
		'registrations[0].id':'8ac7a49f6c619208016c6261cc9841db',
		'registrations[1].id':'8ac7a49f6c619208016c6261ced741e7',
		'createRegistration':'true'
	});
	var options = {
		port: 443,
		host: 'https://test.oppwa.com',
		path: path,
		method: 'POST',
		headers: {
			'Content-Type': 'application/x-www-form-urlencoded',
			'Content-Length': data.length,
			'Authorization':'Bearer OGE4Mjk0MTc0YjdlY2IyODAxNGI5Njk5MjIwMDE1Y2N8c3k2S0pzVDg='
		}
	};
	var postRequest = https.request(options, function(res) {
		res.setEncoding('utf8');
		res.on('data', function (chunk) {
			jsonRes = JSON.parse(chunk);
			return callback(jsonRes);
		});
	});
	postRequest.write(data);
	postRequest.end();
}

request(function(responseData) {
	console.log(responseData);
});
  
  
import urllib, urllib2, json

def request():
	url = "https://test.oppwa.com/v1/checkouts"
	data = {
		'entityId' : '8a8294174b7ecb28014b9699220015ca',
		'amount' : '92.00',
		'currency' : 'EUR',
		'paymentType' : 'DB',
		'registrations[0].id' : '8ac7a49f6c619208016c6261cc9841db',
		'registrations[1].id' : '8ac7a49f6c619208016c6261ced741e7',
		'createRegistration' : 'true'
	}
	try:
		opener = urllib2.build_opener(urllib2.HTTPHandler)
		request = urllib2.Request(url, data=urllib.urlencode(data))
		request.add_header('Authorization', 'Bearer OGE4Mjk0MTc0YjdlY2IyODAxNGI5Njk5MjIwMDE1Y2N8c3k2S0pzVDg=')
		request.get_method = lambda: 'POST'
		response = opener.open(request)
		return json.loads(response.read());
	except urllib2.HTTPError, e:
		return e.code;

responseData = request();
print responseData;
  
  
private String request() throws IOException {
	URL url = new URL("https://test.oppwa.com/v1/checkouts");

	HttpsURLConnection conn = (HttpsURLConnection) url.openConnection();
	conn.setRequestMethod("POST");
        conn.setRequestProperty("Authorization", "Bearer OGE4Mjk0MTc0YjdlY2IyODAxNGI5Njk5MjIwMDE1Y2N8c3k2S0pzVDg=");
	conn.setDoInput(true);
	conn.setDoOutput(true);

	String data = ""
		+ "entityId=8a8294174b7ecb28014b9699220015ca"
		+ "&amount=92.00"
		+ "¤cy=EUR"
		+ "&paymentType=DB"
		+ "®istrations[0].id=8ac7a49f6c619208016c6261cc9841db"
		+ "®istrations[1].id=8ac7a49f6c619208016c6261ced741e7"
		+ "&createRegistration=true";

	DataOutputStream wr = new DataOutputStream(conn.getOutputStream());
	wr.writeBytes(data);
	wr.flush();
	wr.close();
	int responseCode = conn.getResponseCode();
	InputStream is;

	if (responseCode >= 400) is = conn.getErrorStream();
	else is = conn.getInputStream();

	return IOUtils.toString(is);
}
  

Integrate in a Snap

Our versatile API is built to accommodate your requirements and all of our solutions are modular, adaptable and easy-to-implement, conforming to the highest PCI DSS security standards.

Icon
Tokenization
Icon
Registration
Icon
One-Click Payment
Icon
Mobile SDK
Icon
Backoffice
Icon
Recurring Payment
Icon
Reporting
Icon
Webhooks
Full API reference

Looking for a Payment Provider you can talk to?

Zing.gg offers robust payment acceptance solutions perfectly blended with our live human service, support and expertise layer. The resulting experience is likely to be unfamiliarly bold and intense yet delightfully refreshing.

Zing.gg delivers expertly managed and fully supported payment solutions from application through integration and activation onwards, with no extra cost.

SVG Illustration

Connect in more ways, easily.

Using a webshop system like Shopify, Magento, or WooCommerce? Then you’re already connected! Just activate the gateway in your control panel or install a preconfigured plugin to connect immediately.

Ready to accept payments effortlessly?

Image Description