Apple Pay and Google Pay
Mobile-wallet integration for the Paynetics acquiring product — accept Apple Pay and Google Pay across in-app, online, and in-store channels with end-to-end encryption and tokenisation.
Overview
Paynetics offers Apple Pay and Google Pay integration for its acquiring product. These mobile wallets enable merchants to accept secure payments via smartphones, tablets, and wearables across in-app, online, and in-store channels. The solution features end-to-end encryption and tokenisation to minimise fraud risks.
Currency and country coverage
Settlement currencies supported are EUR, GBP, and BGN. Processing accepts all currencies that Apple Pay and Google Pay support. Geographic coverage includes EU27 member states, Iceland, Liechtenstein, Norway, and the UK.
Merchant onboarding
Onboarding follows standard procedures with two options:
- API onboarding (recommended) — uses the Paynetics onboarding API for automated setup.
- Manual onboarding — merchants upload application forms and documents to secure storage, with email notification to
underwriting@paynetics.digital. This method has limited capacity, processing only 10–15 applications per month.
Partners manage merchant onboarding with wallet providers. Paynetics handles transaction processing but not message decryption or key exchange.
Fees, payouts, and reporting
Fees and payouts follow existing procedures. Real-time transaction tracking is available via API, with daily reconciliation reports sent via SFTP. Monthly commission reports arrive by the 10th, requiring invoice submission upon approval.
Technical integration
After agreement execution, developers receive sandbox access for integration testing. Production deployment requires a new API key and updated API root path.
Payments use POST /v1/purchase or POST /v1/pre-authorization endpoints. Key parameters include network card tokens, cardholder names, expiration data, wallet identifiers, cryptograms, and merchant identifiers.
For Visa transactions, 3D Secure authentication is optional but recommended for liability protection when ECI 05 status is desired.
API reference
Live request / response schema, parameters, example payload, and cURL / Node / Python / PHP code samples — pulled from the OpenAPI spec for post_/v1/purchase/{init}.
purchasePath parameters
| Name | Example | Description |
|---|---|---|
init |
— |
Token returned from /v1/init. Not required |
Request body
| Field | Type | Description |
|---|---|---|
reference2
|
string (0,any) | |
industry_
|
string (0,any) | |
moto
|
boolean | |
zip
|
string (0,any) | |
address
|
string (0,any) | |
balance
|
string (0,any) | |
fee
|
number (0,any) | |
sca_
|
string (0,any) | |
mpg_
|
string (0,any) | |
card_
|
string (0,any) | |
card_
|
string (0,any) | |
merchant
|
string (0,any) | |
terminal
|
string (0,any) | |
user
|
string (0,any) | |
currency
|
string (0,any) | |
card
|
string (0,any) | |
card_
|
string (0,any) | |
reference
|
string (0,any) | |
cardholder_
|
string (2,45) | |
cvv2
|
string (0,any) | |
mid
|
string (0,any) | |
xid
|
string (28,28) | |
cavv
|
string (28,28) | |
version
|
integer (0,any) | |
directory_
|
string (36,36) | |
resolution
|
string (0,any) | |
eci
|
string (0,2) | |
recurring_
|
integer (0,any) | |
initial_
|
string (0,any) | |
transaction_
|
string (0,any) | |
settlement_
|
string (0,any) |
Example request
{
"reference2": "string",
"industry_specific_transaction": "string",
"moto": "boolean",
"zip": "string",
"address": "string",
"balance": "string",
"fee": "number",
"financial_institution_service_data": {
"date_of_birth": "2021-12-12",
"postal_code": "string",
"surname": "string"
},
"client_fingerprint": {
"location_finger_print": "",
"ip_address": "127.0.0.1",
"geo_location": "string",
"device_type": "string",
"operating_type_and_version": "WI11",
"browser_type_and_version": "CH88",
"email": "string"
},
"delivery_details": {
"delivery_name": "John Doe",
"delivery_street_name": "James Bourchier 76A",
"delivery_zip": "1407",
"delivery_city": "Sofia",
"delivery_country": "BG"
},
"sca_exemption": "string",
"wallet_payment": {
"wallet_identifier": "apple-pay",
"digital_payment_cryptogram": "string",
"remote_commerce_acceptor_identifier": "string"
},
"aft": {
"account_owner_address1": "James Bourchier 76A",
"account_owner_address2": "James Bourchier 76A",
"account_owner_street": "James Bourchier",
"account_owner_postal_code": "ABCDE12345",
"account_owner_city": "Sofia",
"account_owner_country": "BGR",
"merchant_postal_code": "ABCDE123",
"merchant_state": "SOF",
"acceptor_legal_name": "Paynetics",
"sender_address": "James Bourchier 76A",
"sender_city": "Sofia",
"sender_state": "SF",
"sender_country": "BGR",
"sender_name": "John Doe",
"sender_account_number": "efa213eab69d46c4a690",
"recipient_name": "John Doe",
"bai": "string",
"account_owner_subdivision_code": "abc",
"mvv": "13456ABCD"
},
"partner_data": {
"independent_sales_organization_id": "00001111222"
},
"market_specific_extensions": {
"mcc": "0000"
},
"additional_clearing_data": {
"merchant_street": "James Bourchier",
"merchant_postcode": "ABCDE12345"
},
"mpg_id": "string",
"card_expiration_month": "string",
"card_expiration_year": "string",
"merchant": "string",
"terminal": "string",
"user": "string",
"amount": "number",
"currency": "string",
"card": "string",
"card_number": "string",
"reference": "string",
"cardholder_name": "string",
"cvv2": "string",
"mid": "string",
"card_acceptor": {
"name": "string"
},
"xid": "string",
"cavv": "string",
"version": "integer",
"directory_transaction_id": "string",
"resolution": "string",
"eci": "string",
"recurring_type": "integer",
"initial_transaction": "string",
"transaction_stamp": "string",
"settlement_date": "string"
}
Response
| Field | Type | Description |
|---|---|---|
code
|
integer (0,any) |
Example response
{
"code": "integer",
"data": {
"card_number": "string",
"processing_code": "string",
"amount": "number",
"stan": "string",
"local_time": "string",
"local_date": "string",
"auth_code": "string",
"response_code": "string",
"card_acceptor_terminal_id": "string",
"card_acceptor_identification_code": "string",
"currency": "string",
"transaction": "string",
"external_transaction_id": "string",
"error_details": "string",
"cvv_status": "string",
"avs_status": "string",
"ccti_id": "string",
"transaction_stamp": "string",
"retrieval_reference_number": "string",
"card": "string",
"original_network_response_code": "string",
"action_code": "string",
"order": "string"
}
}