Payment Facilitator

Transaction initiated from Master-store

We highly recommend to check with your integration or 2nd level support team, if your store is eligible to use this functionality before proceeding with the implementation.

Once your store has been configured in our Gateway and flagged as PFAC master-store, you can send a transaction request on behalf of your sub-stores to the Gateway including paymentFacilitator object.

AttributeDescription
submerchantDataThis mandatory element provides details about a PFAC sub-merchant.
mccMerchant Category Code of a sub-merchant
legalNameOfficial legal name of a sub-merchant
timezoneA time zone a sub-merchant is operating in
addressSub-merchants address details
Note: some schemes may require full address details including a parameterregion , submitted as 2 or 3 digits ISO code
merchantIdRepresents sub-merchant's ID assigned by their payment facilitator

The following JSON document represents an example of a 'Sale' transaction triggered by PFAC master-store on behalf of their sub-store:

{
  "requestType": "PaymentCardSaleTransaction",
  "transactionAmount": {
    "total": "10.00",
    "currency": "EUR"
  },
  "paymentMethod": {
    "paymentCard": {
      "number": "414746******0067",
      "securityCode": "XXX",
      "expiryDate": {
        "month": "08",
        "year": "29"
      }
    },
  "paymentFacilitator": {
     "subMerchantData":{
        "mcc": "5655",
        "legalName": "SubMerchant",
        "email": "[email protected]",
        "timezone": "Europe/Berlin",
        "address": {
					"address1": "Main Str. 55",
					"address2": "App. 234",
					"city": "Frankfurt",
					"region": "HE",
					"postalCode": "84375",
					"country": "DE"
    },
    "merchantId": "98765432"
		}
		}
  }
}

The following example represents the API response of an approved transaction:

{
    "clientRequestId": "2811bbe3-572a-41ff-a854-70873526ac22",
    "apiTraceId": "Y6ResHyDYXJ2lNo13ccwuwAAAxY",
    "ipgTransactionId": "84615279640",
    "orderId": "R1671716528939615968",
    "transactionType": "SALE",
    "paymentToken": {
        "reusable": true,
        "declineDuplicates": false,
        "brand": "VISA",
        "type": "PAYMENT_CARD"
    },
    "transactionOrigin": "ECOM",
    "paymentMethodDetails": {
        "paymentCard": {
            "expiryDate": {
                "month": "08",
                "year": "2029"
            },
            "bin": "414746",
            "last4": "0067",
            "brand": "VISA"
        },
        "paymentMethodType": "PAYMENT_CARD"
    },
    "country": "Germany",
    "terminalId": "00011001",
    "merchantId": "000000011",
    "transactionTime": 1671716528,
    "approvedAmount": {
        "total": 10,
        "currency": "EUR",
        "components": {
            "subtotal": 10
	}
    },
    "transactionStatus": "APPROVED",
    "approvalCode": "Y:349415:4615279989:YYYM:301672",
    },
    "processor": {
        "referenceNumber": "084615279640",
	      "authorizationCode": "349415",
        "responseCode": "00",
        "responseMessage": "Function performed error-free",
        "avsResponse": {
            "streetMatch": "Y",
            "postalCodeMatch": "Y"
        },
        "securityCodeResponse": "MATCHED"
        }
    }
   
}

Transaction initiated from Sub-store

In case you preferred to board all your sub-merchants in our Gateway and your stores have been setup properly, you do not need to include any additional details when initiating a transaction request from a sub-store. The Gateway will provide all necessary flagging according your sub-store configuration.

The following JSON document represents an example of a transaction request including minimal set of elements:

{
  "requestType": "PaymentCardSaleTransaction",
  "transactionAmount": {
    "total": "10.00",
    "currency": "EUR"
  },
  "paymentMethod": {
    "paymentCard": {
      "number": "414746******0067",
      "securityCode": "XXX",
      "expiryDate": {
        "month": "08",
        "year": "29"
      }
    }


Want a quick overview?