Transaction Object

Details on transaction object

Field

Required

Type

Description

id

No

UUID

ID of the transaction created.

user_id

Yes

UUID

ID of the User initiating the transaction.

from_fund_id

Yes

UUID

Account ID of the User from where the amount will be debited.

funding_source_type

Yes

String

Enumerated value: CARD, BANK_ACCOUNT

to.id

Yes

UUID

ID of the receive User who will receive the amount

to.fund_id

Yes

UUID

ID of the receive user’s fund.

to.payout_method

Yes

String

Payout method for transaction amount delivery. Enumerated Value: BANK_DEPOSIT (Default), CASH_PICKUP, WALLET, HOME_DELIVERY.

type

No

String

Enumerated value: TRANSFER|PAYOUT or PAYOUT

from_amount

Yes

numeric

The amount entered by the user to be debited from the user’s account. We accept maximum two decimal places.

to_amount

No

numeric

The amount to be received by the receiving user. We accept maximum two decimal places.

from_currency

Yes

String

User’s currency

to_currency

Yes

String

Receive user’s currency

exchange_rate

Yes

numeric

Exchange rate used in transaction. We accept maximum four decimal places.

fee_amount

Yes

numeric

Additional fee. We accept maximum two decimal places.

purpose

Yes

Category

The purpose of sending money. Details below.

custom_purpose

Yes, if purpose is OTHER

String

Additional details when purpose is OTHER

physical_documents

No

Object

Copy of a document. This may be required for certain corridors and will be outlined in your spec sheet.

physical_documents.document_type

No

Category

Enumerated value: INVOICE

physical_documents.document_value

No

String

Value of the document. Documents must be encoded Base64 before being uploaded to our system.

calculation_mode

Yes

String

Enumerated value : SENDER_AMOUNT, RECEIVER_AMOUNT.

payer_id

No

numeric

Id of payer.

status

No

String

Enumerated value : INITIATED, PENDING, PROCESSING, PROCESSED, CANCELED, FAILED, HOLD, REFUNDED, RETURNED Note: Transaction hold reasons are listed below.

delivery_status

No

String

Enumerated Value : NONE, HOLD, PENDING, DELIVERY_REQUESTED, DELIVERED, DELIVERY_FAILED, DELIVERY_AUTHORIZED, DELIVERY_PAYOUT_READY

risk_score

No

numeric

A Risk Score indicates the high or low risk of a transaction created by users. The lower the score, the less likely the event is high risk.

reference_number

No

String

A unique identification number of a transaction. This number is generated once the transaction is in PENDING status.

payout_reference_number

No

String

Reference number provided by the payout partner.

bonus_amount

No

numeric

Bonus/discount provided on the transaction. The total amount deducted from the sender is equal to from_amount + fee_amount - bonus_amount. The nature of your implementation will determine whether a bonus or a discount is applied on the transaction. Please review use cases section for common implementation examples. We accept maximum two decimal places.

note

No

String

Additional information on the transaction.

Purpose

Purpose

Description

COMPUTER_SERVICES

Computer service

FAMILY_SUPPORT

Family support

EDUCATION

Education

GIFT_AND_DONATION

Gift and other donations

MEDICAL_TREATMENT

Medical treatment

MAINTENANCE_EXPENSES

Maintenance or other expenses

TRAVEL

Travel

SMALL_VALUE_REMITTANCE

Small value remittance

LIBERALIZED_REMITTANCE

Liberalized remittance

CONSTRUCTION_EXPENSES

Construction expenses

HOTEL_ACCOMMODATION

Hotel accommodation

ADVERTISING_EXPENSES

Advertising and/or public relations related expenses

ADVISORY_FEES

Fees for advisory or consulting service

BUSINESS_INSURANCE

Business related insurance payment

INSURANCE_CLAIMS

Insurance claims payment

DELIVERY_FEES

Delivery fees

EXPORTED_GOODS

Payments for exported goods

SERVICE_CHARGES

Payment for services

LOAN_PAYMENT

Payment of loans

OFFICE_EXPENSES

Office expenses

PROPERTY_PURCHASE

Residential property purchase

PROPERTY_RENTAL

Property rental payment

ROYALTY_FEES

Royalty, trademark, patent and copyright fees

SHARES_INVESTMENT

Investment in shares

FUND_INVESTMENT

Fund investment

TAX_PAYMENT

Tax payment

TRANSPORTATION_FEES

Transportation fees

UTILITY_BILLS

Utility bills

PERSONAL_TRANSFER

Personal transfer

SALARY_PAYMENT

Payment of salary

REWARD_PAYMENT

Payment of rewards

INFLUENCER_PAYMENT

Payment of Influencer

OTHER_FEES

Broker, commitment, guarantee and other fees

OTHER

Other purposes

Transaction Hold Reasons

Transactions may be placed on hold for specific reasons. Regardless of the reason, transactions on hold for more than 7 days are automatically cancelled.

Code

Reason

T001

Transaction is under review by compliance. Machnet will provide further information once available.

T002

Issue processing transaction. Please contact Machnet customer support.

T003

Unable to check balance of the funding account. Please contact Machnet customer support.

T004

Transaction limit based on the current tier of the user has been exceeded. If the user is eligible to increase their limits, requested information must be submitted and verified for the transaction to be processed. Check requested information using this API.

T005

User is not verified. All basic information must be submitted and verified for the transaction to be processed. Check KYC status using this API.

T006

Issue processing transaction. Please contact Machnet customer support.

T007

User is not verified. All basic information must be submitted and verified for the transaction to be processed. Check KYC status using this API.

T008

Issue processing transaction. Please contact Machnet customer support.

T009

Issue processing transaction. Please contact Machnet customer support.

T010

Possible duplicate transaction. Please review.

T011

Unable to process the transaction. ACH authorization form may be required from the receiver. Please contact Machnet customer support.

T012

Unable to process the transaction. ACH authorization form may be required from the sender. Please contact Machnet customer support.

T014

Sender account is not verified. Please contact customer support for more details.

T015

Sender or sender’s account is not verified. Please contact customer support for more details

T016

Required sender information must be verified to process this transaction amount.

Transaction Cancellation Reason

Code

Reason

C001

Transaction risk is high.

C002

Platform limit exceeded.

C003

Transaction expired as it was on HOLD for more than 7 days

C004

Transaction was canceled by the user.

C005

Transaction was canceled by the admin.

C006

Transaction not authorized. Please contact Machnet customer support.

C007

Transaction not authorized. Please contact Machnet customer support.

C008

Transaction not authorized. Please contact Machnet customer support.

C009

Transaction not authorized. Please contact Machnet customer support.

C010

Transaction was canceled due to high risk of NSF.

C011

Transaction canceled as the user was suspended by admin.

We may add new transaction status, hold reasons and cancel reasons as and when required. The document will be updated accordingly.

Last updated