1. 7. Payment Providers (PSPs)
Mozarto - The Payments Orchestration Platform
  • 1. Introduction
  • 2. Quick Start
  • 3. Authentication
  • 4. Webhook Setup
  • 5. Errors
  • 6. Redirect flow
    • Pay-In Flow
    • Pay-Out Flow
  • 7. Payment Providers (PSPs)
    • Overview
    • Brite
    • Cleo
    • Flexepin
    • ForumPay
    • Gigadat
    • Neosurf
    • PayOne
    • Trust Payments
    • Worldpay
    • Emerchantpay
  • 8. Redirect Flow APIs
    • Redirect Flow APIs - overview
    • Pay-In
      • WorldPay
      • Forumpay
      • Payone
      • Gigadat
      • Flexepin
      • Trust
    • Pay-Out
      • Forumpay
      • Payone
      • Gigadat withdraw ETO
      • Gigadat withdraw ACH
    • Webhook
      • Payone status webhook
  • Schemas
    • TransactionData
  1. 7. Payment Providers (PSPs)

Trust Payments

Card payment processing through Trust Payments hosted Payment Pages. The cardholder enters card details on a Trust-hosted page, so no PAN, expiry, or CVV data passes through the Mozarto API.
Operations: Pay-In ✓ | Pay-Out - | Webhook ✓
Processing: Asynchronous - redirect the user to a hosted page, then receive settlement by webhook
Payment type: Card (Visa, Mastercard), Apple Pay, and Google Pay, depending on what the site reference has enabled. All are collected on the Trust hosted Payment Pages.
Fields marked with * are required.

Configuration (Mozarto back office)#

FieldDescription
sitereference *Trust Payments site reference
siteSecurityPasswordSite security password. When set, requests are signed and success/failure redirect URLs are sent to Trust
siteUrlDefault URL the cardholder returns to after payment, used when a transaction does not supply its own redirect URLs
webhookUrlEndpoint Mozarto calls with the settlement notification once the payment completes

Pay-In#

POST /v1/api/mozarto/cashier
The cashier call does not charge the card directly. It creates a transaction and returns a paymentUrl. Redirect the cardholder to that URL to complete payment on the Trust hosted page.

Request body#

FieldTypeDescription
pspType *stringAlways "TRUST"
type *stringAlways "PAYIN"
baseamount *numberAmount as a number (e.g. 100)
currency *stringCurrency code (e.g. "EUR")
userId *stringYour internal user/player identifier
merchantReferencestringYour reference for the order, echoed back in the response and webhook
firstNamestringCardholder first name, prefilled on the hosted page
lastNamestringCardholder last name, prefilled on the hosted page
emailstringCardholder email, prefilled on the hosted page
phonestringCardholder phone number, prefilled on the hosted page
countryCodestringISO 3166-1 alpha-2 country code, prefilled on the hosted page
addressobjectBilling address prefill. See address fields below
hppSuccessUrlstringURL the cardholder returns to after a successful payment. Overrides the configured siteUrl
hppFailureUrlstringURL the cardholder returns to after a failed or cancelled payment. Overrides the configured siteUrl
Billing fields are optional. When supplied, they are forwarded to Trust to prefill the hosted page; they do not change whether the request is accepted.
Do not send card data (pan, expiry, cvv) to this endpoint. The cardholder enters card details on the Trust hosted Payment Pages.

Address fields#

All address fields are optional and used only for prefill.
FieldTypeDescription
address.line1stringStreet address line 1
address.line2stringStreet address line 2
address.citystringCity
address.statestringState or region
address.postalCodestringPostal / ZIP code
address.countrystringCountry code

Example request#

{
  "pspType": "TRUST",
  "type": "PAYIN",
  "currency": "EUR",
  "baseamount": 100,
  "merchantReference": "ORDER-REF-001",
  "userId": "64a1f2b3c4d5e6f7a8b9c0d2",
  "phone": "+447911123456"
}

Response#

{
  "status": "success",
  "message": "Successfully",
  "isSuccess": true,
  "data": {
    "paymentUrl": "https://backend.dev-app.mozarto.io/v1/transactions/trust/redirect/64a1f2b3c4d5e6f7a8b9c0d1?token=<redirect-token>",
    "transactionId": "64a1f2b3c4d5e6f7a8b9c0d1",
    "merchantReference": "ORDER-REF-001",
    "amount": 100,
    "transaction_status": "Pending"
  }
}
FieldTypeDescription
paymentUrlstringSingle-use URL to redirect the cardholder to. Expires five minutes after it is issued
transactionIdstringMozarto transaction identifier. Use it to match the settlement webhook
merchantReferencestringYour reference from the request, or an empty string if none was sent
amountnumberThe transaction baseamount
transaction_statusstringAlways "Pending" at this point. The final outcome arrives by webhook
Redirect the cardholder to paymentUrl. It serves a self-submitting form that posts to the Trust hosted Payment Pages, where the card details are entered. The paymentUrl is single-use and expires five minutes after it is issued.

Settlement webhook#

Once Trust settles the transaction, Mozarto sends a POST to your configured webhookUrl. The payload is the same shape for approvals and declines; read transaction_status for the outcome.
{
  "transaction_id": "64a1f2b3c4d5e6f7a8b9c0d1",
  "psp_transaction_id": "<trust-transaction-reference>",
  "user_id": "64a1f2b3c4d5e6f7a8b9c0d2",
  "status": "SUCCESS",
  "transaction_status": "Approved",
  "message": "Transaction approved and successfully processed",
  "amount": 100,
  "merchantReference": "ORDER-REF-001"
}
FieldDescription
transaction_idMozarto transaction identifier returned by the Pay-In call
psp_transaction_idTrust transaction reference
user_idThe userId from the Pay-In request
statusRaw Mozarto status (SUCCESS, FAILED, or CANCELLED)
transaction_statusNormalized outcome - Approved, Failed, or Cancelled. Use this for business logic
amountSettled amount
merchantReferenceYour reference from the Pay-In request
The request carries an Authorization header with a Mozarto-generated signature token. Verify it before applying any balance or state change. See Webhook setup.

Error codes#

The Pay-In call returns an error when the request cannot be set up. Transaction declines are reported later through the settlement webhook with transaction_status: "Failed", not on this call.
HTTP statusResponseWhen
400message: "PSP Configuration not found. Please check you psp Configuration"Trust sitereference is missing from the back office configuration
500errorCode / message from the normalized error setUnexpected server error while preparing the hosted payment
For the full list of errorCode values and retryability guidance, see Errors.
Modified at 2026-06-12 07:16:55
Previous
PayOne
Next
Worldpay
Built with