Payment Links allow you to create shareable payment URLs that customers can use to make payments directly. These links can be used for donations, product sales, subscriptions, and general payments.
1

Create a link

Create a payment link with your desired amount and settings.
2

Share the URL

Share the generated URL with your customers.
3

Customer pays

Customers visit the link and complete their payment.
4

Get notified

You receive notifications and can track all payments.

Pricing

Fees come from the public pricing page. Custom business rates may differ.

Supported markets

Payment links work in all 12 markets: Uganda, Kenya, Rwanda, Democratic Republic of the Congo, Zambia, Cameroon, Benin, Côte d’Ivoire, Gabon, Senegal, Sierra Leone, and Congo-Brazzaville. For Kenya M-Pesa links, set country: "KE" and currency: "KES". For DRC, use CD with CDF or USD.

API base URL

All payment link API requests should be made to: https://wallet.wearemarz.com/api/v1

Authentication

All API requests require authentication using your API key. Include the API key in the Authorization header with Basic Auth format. Authorization: Basic YOUR_API_CREDENTIALS Format: YOUR_API_CREDENTIALS = base64_encode("your_api_key:your_api_secret") Create a new payment link with customizable settings. Endpoint POST https://wallet.wearemarz.com/api/v1/payment-links Request headers Request body
Parameters Success response
Error response
Retrieve details of a specific payment link. Endpoint GET https://wallet.wearemarz.com/api/v1/payment-links/{uuid} Retrieve a list of all your payment links. Endpoint GET https://wallet.wearemarz.com/api/v1/payment-links Query parameters Update an existing payment link’s settings. All fields are optional - only include the fields you want to update. Endpoint PUT https://wallet.wearemarz.com/api/v1/payment-links/{uuid} Request body
Permanently delete a payment link. Endpoint DELETE https://wallet.wearemarz.com/api/v1/payment-links/{uuid} Once created, payment links can be shared with customers through various channels. https://wallet.wearemarz.com/pay/{uuid} For fixed amount links, customers see the predetermined amount and can proceed directly to payment. For variable amount links, customers can enter their desired amount (above the minimum) before proceeding to payment.

Expiry handling

Expired links show an appropriate message to customers. Active links can be used until the expiry date.

Code examples

cURL

JavaScript (Fetch)

PHP (Guzzle)

Error codes

Best practices

Descriptive titles

Use descriptive titles and descriptions to help customers understand what they’re paying for.

Set expiry dates

Set appropriate expiry dates to prevent stale payment links.

Webhook callbacks

Implement webhook callbacks to handle payment notifications in real time.

Secure keys

Store API keys securely and never expose them in client-side code.