Skip to content

Remittance Management

Modify Sender#

modifySender

This method is used to modify a remittance's sender information.

Info

Allowed if the remittance status is READY.

Update Behavior

Only the fields that need to be updated are required in the request; Passed fields will overwrite the original field value.

Request Inputs#

Field Type Size Mandatory Description
agentCode String 5 Yes Send Agent code assigned by SHIFT
userId String 20 Yes User ID assigned by SHIFT
userPassword String 30 Yes User password assigned by SHIFT
remittancTrackingCode String 20 Yes
sender Object Yes Sender information to update.
See below sender

sender#

sender Object fields (for modifySender)
Field Type Size Mandatory Description
customerId String 11 Conditional This field is mandatory when using an existing sender
type Integer 1 Yes See customer type table
firstName String 50 Conditional This field is mandatory if the sender type is 1. Allowed characters: English letters (A–Z, a–z) and spaces only.
middelName String 50 Conditional This field is mandatory if the sending country requires a middle name and the sender type is 1. Allowed characters: English letters (A–Z, a–z) and spaces only. If not required, this field should be left blank.
lastName String 50 Conditional This field is mandatory if the sender type is 1. Allowed characters: English letters (A–Z, a–z) and spaces only.
enName String 100 Conditional This field is mandatory if the sender type is 2. Allowed characters: English letters (A–Z, a–z) and spaces only.
telephone String 20 No (+ or ++ not accepted)
mobile String 20 Yes (+ or ++ not accepted)
email String 100 No If provided, must be in a valid email format
address String 200 Yes
nationalityCountryCode String 3 Yes ISO Alpha-3 (3166)
identityTypeCode Integer 4 Yes Selected Identity type
identityNumber String 20 Yes This field accepts English letters (A–Z, a–z), numbers (0–9), spaces, and dashes (-)
identityIssuePlace String 100 Yes
identityIssueDate Date Yes Format: dd/MM/yyyy
identityExpiryDate Date Yes Format: dd/MM/yyyy
birthDateOrEstablishDate Date Yes Format: dd/MM/yyyy. If sender type is 1, sender's birthday; if 2, company establishment date.
birthPlace String 50 Conditional
gender Integer 1 Conditional Mandatory if the sender type is 1. See the gender types table
occupationOrSector String 100 Yes Depends on sender type. See get Occupations or sector
postalCode String 50 No
nationalNumber String 50 No If this field is not required, it should be left blank
sourceOfFund String 50 No See get source of fund. This field must be filled with a value based on the sourceOfFund list

Response Outputs#

Field Type Description
resultCode String See the Result Codes and Messages table
resultMessage String

SOAP Request#

<soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/" xmlns:web="http://webservice/" xmlns:apis="http://xml.netbeans.org/schema/ApiSchema">
    <soapenv:Header/>
    <soapenv:Body>
        <web:modifySender>
            <remittancTrackingCode>50378138624</remittancTrackingCode>
            <sender>
                <!-- <apis:customerId></apis:customerId>
                <apis:type></apis:type> -->
                <apis:firstName>Victoria</apis:firstName>
                <!-- <apis:middelName></apis:middelName>
                <apis:lastName></apis:lastName>
                <apis:enName></apis:enName>
                <apis:telephone></apis:telephone>
                <apis:mobile></apis:mobile>
                <apis:email></apis:email>
                <apis:address></apis:address>
                <apis:nationalityCountryCode></apis:nationalityCountryCode>
                <apis:identityTypeCode></apis:identityTypeCode>
                <apis:identityNumber></apis:identityNumber>
                <apis:identityIssuePlace></apis:identityIssuePlace>
                <apis:identityIssueDate></apis:identityIssueDate>
                <apis:identityExpiryDate></apis:identityExpiryDate>
                <apis:gender></apis:gender>
                <apis:occupationOrSector></apis:occupationOrSector>
                <apis:postalCode></apis:postalCode>
                <apis:birthDateOrEstablishDate></apis:birthDateOrEstablishDate>
                <apis:birthPlace></apis:birthPlace>
                <apis:nationalNumber></apis:nationalNumber>
                <apis:sourceOfFund></apis:sourceOfFund> -->
            </sender>
            <agentCode>*****</agentCode>
            <userId>*****</userId>
            <userPassword>*****</userPassword>
        </web:modifySender>
    </soapenv:Body>
</soapenv:Envelope>

SOAP Response#

<S:Envelope xmlns:S="http://schemas.xmlsoap.org/soap/envelope/">
   <S:Body>
      <ns2:modifySenderResponse xmlns:ns2="http://webservice/" xmlns:ns3="http://xml.netbeans.org/schema/ApiSchema">
         <return>
            <ns3:resultCode>9000</ns3:resultCode>
            <ns3:resultMessage>Operation successfully</ns3:resultMessage>
         </return>
      </ns2:modifySenderResponse>
   </S:Body>
</S:Envelope>

Modify Receiver#

modifyReceiver

This method is used to modify a remittance's receiver information.

Info

Allowed if the remittance status is READY.

Update Behavior

Only the fields that need to be updated are required in the request; Passed fields will overwrite the original field value.

Request Inputs#

Field Type Size Mandatory Description
agentCode String 5 Yes Send Agent code assigned by SHIFT
userId String 20 Yes User ID assigned by SHIFT
userPassword String 30 Yes User password assigned by SHIFT
remittancTrackingCode String 20 Yes
receiver Object Yes Receiver information to update.
See below receiver

receiver#

receiver Object fields (for modifyReceiver)
Field Type Size Mandatory Description
receiverId String 11 No
type Integer 1 Yes See customer type table
firstName String 50 Conditional This field is mandatory if the receiver type is 1. Allowed characters: English letters (A–Z, a–z) and spaces only
middelName String 50 Conditional This field is mandatory if the receiving country requires a middle name and the receiver type is 1. Allowed characters: English letters (A–Z, a–z) and spaces only. If not required, this field should be left blank.
lastName String 50 Conditional This field is mandatory if the receiver type is 1. Allowed characters: English letters (A–Z, a–z) and spaces only
enName String 100 Conditional This field is mandatory if the receiver type is 2. Allowed characters: English letters (A–Z, a–z) and spaces only
telephone String 20 No (+ or ++ not accepted)
mobile String 20 Yes (+ or ++ not accepted)
email String 100 No If provided, must be in a valid email format
address String 200 Yes
nationalityCountryCode String 3 Yes ISO Alpha-3 (3166)
gender Integer 1 Conditional Mandatory if receiver type is 1. See the gender types table
occupationOrSector String 100 Conditional Depends on receiver type. See get Occupations and sectors

Response Outputs#

Field Type Description
resultCode String See the Result Codes and Messages table
resultMessage String

SOAP Request#

<soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/" xmlns:web="http://webservice/" xmlns:apis="http://xml.netbeans.org/schema/ApiSchema">
    <soapenv:Header/>
    <soapenv:Body>
        <web:modifyReceiver>
            <remittancTrackingCode>50378138624</remittancTrackingCode>
            <receiver>
                <!-- <apis:receiverId></apis:receiverId>
                <apis:type></apis:type>
                <apis:firstName></apis:firstName>
                <apis:middelName></apis:middelName> -->
                <apis:lastName>Aburrob</apis:lastName>
                <!-- <apis:enName></apis:enName>
                <apis:telephone></apis:telephone>
                <apis:mobile></apis:mobile>
                <apis:email></apis:email>
                <apis:address></apis:address>
                <apis:gender></apis:gender>
                <apis:nationalityCountryCode></apis:nationalityCountryCode>
                <apis:occupationOrSector></apis:occupationOrSector> -->
            </receiver>
            <agentCode>*****</agentCode>
            <userId>*****</userId>
            <userPassword>*****</userPassword>
        </web:modifyReceiver>
    </soapenv:Body>
</soapenv:Envelope>

SOAP Response#

<S:Envelope xmlns:S="http://schemas.xmlsoap.org/soap/envelope/">
   <S:Body>
      <ns3:modifyReceiverResponse xmlns:ns2="http://xml.netbeans.org/schema/ApiSchema" xmlns:ns3="http://webservice/">
         <return>
            <ns2:resultCode>9000</ns2:resultCode>
            <ns2:resultMessage>Operation successfully</ns2:resultMessage>
         </return>
      </ns3:modifyReceiverResponse>
   </S:Body>
</S:Envelope>

Refund Remittance#

refundRemittance

This method is used to refund a remittance.

Info

Allowed if the remittance status is READY.

Status Change

Calling this method changes the remittance status to REFUNDED.

Charges

The sender will lose any charges if the remittance is refunded.

Request Inputs#

Field Type Size Mandatory Description
agentCode String 5 Yes Send Agent code assigned by SHIFT
userId String 20 Yes User ID assigned by SHIFT
userPassword String 30 Yes User password assigned by SHIFT
remittancTrackingCode String 20 Yes
receiver Object Yes Receiver identity information.
See below receiver Object

receiver#

receiver Object fields
Field Type Size Mandatory Description
identityTypeCode Integer 4 Yes Selected Identity type
identityNumber String 20 Yes
identityIssuePlace String 100 Yes
identityIssueDate Date Yes Format: dd/MM/yyyy
identityExpiryDate Date Yes Format: dd/MM/yyyy

Response Outputs#

Field Type Description
resultCode String See the Result Codes and Messages table
resultMessage String

SOAP Request#

<soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/" xmlns:web="http://webservice/" xmlns:apis="http://xml.netbeans.org/schema/ApiSchema">
   <soapenv:Header/>
   <soapenv:Body>
      <web:refundRemittance>
         <remittancTrackingCode>49670088378</remittancTrackingCode>
         <receiver>
            <apis:identityTypeCode>1</apis:identityTypeCode>
            <apis:identityNumber>45644410011</apis:identityNumber>
            <apis:identityIssuePlace>amman</apis:identityIssuePlace>
            <apis:identityIssueDate>10/03/2018</apis:identityIssueDate>
            <apis:identityExpiryDate>09/03/2023</apis:identityExpiryDate>
         </receiver>
         <agentCode>*****</agentCode>
         <userId>*****</userId>
         <userPassword>*****</userPassword>
      </web:refundRemittance>
   </soapenv:Body>
</soapenv:Envelope>

SOAP Response#

<S:Envelope xmlns:S="http://schemas.xmlsoap.org/soap/envelope/">
   <S:Body>
      <ns3:refundRemittanceResponse xmlns:ns2="http://xml.netbeans.org/schema/ApiSchema" xmlns:ns3="http://webservice/">
         <return>
            <ns2:resultCode>9000</ns2:resultCode>
            <ns2:resultMessage>Operation successfully</ns2:resultMessage>
         </return>
      </ns3:refundRemittanceResponse>
   </S:Body>
</S:Envelope>

Cancel Remittance#

cancelRemittance

This method is used to cancel a remittance (complete reversal).

Info

Allowed if the remittance status is READY.

Status Change

Calling this method changes the remittance status to CANCELED.

Request Inputs#

Field Type Size Mandatory Description
agentCode String 5 Yes Send Agent code assigned by SHIFT
userId String 20 Yes User ID assigned by SHIFT
userPassword String 30 Yes User password assigned by SHIFT
remittancTrackingCode String 20 Yes
reason String 200 Yes Reason for cancellation

Response Outputs#

Field Type Description
resultCode String See the Result Codes and Messages table
resultMessage String

SOAP Request#

<soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/" xmlns:web="http://webservice/">
    <soapenv:Header/>
    <soapenv:Body>
        <web:cancelRemittance>
            <remittancTrackingCode>59128033144</remittancTrackingCode>
            <reason>Insufficient funds</reason>
            <agentCode>*****</agentCode>
            <userId>*****</userId>
            <userPassword>*****</userPassword>
        </web:cancelRemittance>
    </soapenv:Body>
</soapenv:Envelope>

SOAP Response#

<S:Envelope xmlns:S="http://schemas.xmlsoap.org/soap/envelope/">
    <S:Body>
        <ns3:cancelRemittanceResponse xmlns:ns2="http://xml.netbeans.org/schema/ApiSchema" xmlns:ns3="http://webservice/">
            <return>
                <ns2:resultCode>9000</ns2:resultCode>
                <ns2:resultMessage>Operation successfully</ns2:resultMessage>
            </return>
        </ns3:cancelRemittanceResponse>
    </S:Body>
</S:Envelope>

Agent Suspend Remittance#

agentSuspendRemittance

This method is used to suspend a remittance sent by the Agent.

Info

Allowed if the remittance status is READY.

Status Change

Calling this method changes the remittance status to SUSPENDED.

Request Inputs#

Field Type Size Mandatory Description
agentCode String 5 Yes Send Agent code assigned by SHIFT
userId String 20 Yes User ID assigned by SHIFT
userPassword String 30 Yes User password assigned by SHIFT
remittancTrackingCode String 20 Yes
reason String 200 Yes Reason for the suspension

Response Outputs#

Field Type Description
resultCode String See the Result Codes and Messages table
resultMessage String

SOAP Request#

<soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/" xmlns:web="http://webservice/">
   <soapenv:Header/>
   <soapenv:Body>
      <web:agentSuspendRemittance>
         <remittancTrackingCode>40957140070</remittancTrackingCode>
         <reason>test reason</reason>
         <agentCode>*****</agentCode>
         <userId>*****</userId>
         <userPassword>*****</userPassword>
      </web:agentSuspendRemittance>
   </soapenv:Body>
</soapenv:Envelope>

SOAP Response#

<S:Envelope xmlns:S="http://schemas.xmlsoap.org/soap/envelope/">
   <S:Body>
      <ns3:agentSuspendRemittanceResponse xmlns:ns2="http://xml.netbeans.org/schema/ApiSchema" xmlns:ns3="http://webservice/">
         <return>
            <ns2:resultCode>9000</ns2:resultCode>
            <ns2:resultMessage>Operation successfully</ns2:resultMessage>
         </return>
      </ns3:agentSuspendRemittanceResponse>
   </S:Body>
</S:Envelope>

Agent Reinstate Suspended Remittance#

agentReinstateSuspendRemittance

This method is used to reinstate a suspended remittance.

Info

Allowed if the remittance status is SUSPENDED.

Request Inputs#

Field Type Size Mandatory Description
agentCode String 5 Yes Send Agent code assigned by SHIFT
userId String 20 Yes User ID assigned by SHIFT
userPassword String 30 Yes User password assigned by SHIFT
remittancTrackingCode String 20 Yes
reason String 200 Yes Reason for reinstating the suspended remittance

Response Outputs#

Field Type Description
resultCode String See the Result Codes and Messages table
resultMessage String

SOAP Request#

<soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/" xmlns:web="http://webservice/">
   <soapenv:Header/>
   <soapenv:Body>
      <web:agentReinstateSuspendRemittance>
         <remittancTrackingCode>40957140070</remittancTrackingCode>
         <reason>test reason</reason>
         <agentCode>*****</agentCode>
         <userId>*****</userId>
         <userPassword>*****</userPassword>
      </web:agentReinstateSuspendRemittance>
   </soapenv:Body>
</soapenv:Envelope>

SOAP Response#

<S:Envelope xmlns:S="http://schemas.xmlsoap.org/soap/envelope/">
   <S:Body>
      <ns3:agentReinstateSuspendRemittanceResponse xmlns:ns2="http://xml.netbeans.org/schema/ApiSchema" xmlns:ns3="http://webservice/">
         <return>
            <ns2:resultCode>9000</ns2:resultCode>
            <ns2:resultMessage>Operation successfully</ns2:resultMessage>
         </return>
      </ns3:agentReinstateSuspendRemittanceResponse>
   </S:Body>
</S:Envelope>

Get Agent Remittances List#

getAgentRemittancesList

This method is used to retrieve the list of remittances executed by the agent.

Request Inputs#

Field Type Size Mandatory Description
agentCode String 5 Yes Agent code assigned by SHIFT
userId String 20 Yes User ID assigned by SHIFT
userPassword String 30 Yes User password assigned by SHIFT
fromDate Date Yes Format: dd/MM/yyyy
toDate Date Yes Format: dd/MM/yyyy

Response Outputs#

Field Type Description
resultCode String See the Result Codes and Messages table
resultMessage String
remittanceTrackingCode String RTC or Remittance tracking number
agentRemittancesList List of Objects See below agentRemittancesList

agentRemittancesList#

agentRemittancesList Object fields
Field Type Description
status String See Remittance Status Values
serviceType String See Service types table
recordingDate Date Format: dd/MM/yyyy
payoutDate Date Format: dd/MM/yyyy
payingAmount Decimal Paying/collected amount from the sender
payoutAmount Decimal Payout amount to the beneficiary
payingCurrencyCode String Paying/collected currency from the sender
payoutCurrencyCode String Payout currency to the beneficiary
charges Decimal Remittance charges
taxPercent Decimal Tax percent
totalPayingAmount Decimal Total paying amount from the customer
payingToPayoutRate Decimal Customer exchange rate
payingSettlementRate Decimal Cost rate for paying amount
payoutSettlementRate Decimal Cost rate for payout amount
settlementPayingAmount Decimal Paying amount in settlement currency
settlementPayoutAmount Decimal Payout amount in settlement currency
settlementCharges Decimal Remittance charges in settlement currency
agentChargesShare Decimal Agent charges share in settlement currency
agentFXChargesShare Decimal Agent FX share in settlement currency
senderName String The full name of the sender
receiverName String The full name of the receiver
sendingCountry String
receivingCountry String
taxAmount Decimal Tax amount in the paying currency
sendingReason String
apiAgentReferenceNumber String Will be returned if available

SOAP Request#

<soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/" xmlns:web="http://webservice/">
   <soapenv:Header/>
   <soapenv:Body>
      <web:getAgentRemittancesList>
         <fromDate>10/07/2020</fromDate>
         <toDate>13/07/2020</toDate>
         <agentCode>*****</agentCode>
         <userId>*****</userId>
         <userPassword>*****</userPassword>
      </web:getAgentRemittancesList>
   </soapenv:Body>
</soapenv:Envelope>

SOAP Response#

<S:Envelope xmlns:S="http://schemas.xmlsoap.org/soap/envelope/">
   <S:Body>
      <ns3:getAgentRemittancesListResponse xmlns:ns2="http://xml.netbeans.org/schema/ApiSchema" xmlns:ns3="http://webservice/">
         <return>
            <ns2:resultCode>9000</ns2:resultCode>
            <ns2:resultMessage>Operation successfully</ns2:resultMessage>
            <ns2:agentRemittancesList>
               <ns2:remittanceTrackingCode>25885075399</ns2:remittanceTrackingCode>
               <ns2:status>READY</ns2:status>
               <ns2:recordingDate>12/07/2020 10:17:01 AM</ns2:recordingDate>
               <ns2:payingAmount>10.0</ns2:payingAmount>
               <ns2:payoutAmount>0.0</ns2:payoutAmount>
               <ns2:payingCurrencyCode>JOD</ns2:payingCurrencyCode>
               <ns2:charges>10.0</ns2:charges>
               <ns2:taxPercent>0.05</ns2:taxPercent>
               <ns2:totalPayingAmount>20.5</ns2:totalPayingAmount>
               <ns2:payingToPayoutRate>0.0</ns2:payingToPayoutRate>
               <ns2:payingSettlementRate>0.709</ns2:payingSettlementRate>
               <ns2:payoutSettlementRate>0.0</ns2:payoutSettlementRate>
               <ns2:settlementPayingAmount>14.1</ns2:settlementPayingAmount>
               <ns2:settlementPayoutAmount>0.0</ns2:settlementPayoutAmount>
               <ns2:settlementCharges>14.1</ns2:settlementCharges>
               <ns2:agentChargesShare>4.94</ns2:agentChargesShare>
               <ns2:agentFXChargesShare>0.32</ns2:agentFXChargesShare>
               <ns2:senderName>Ali Khalil</ns2:senderName>
               <ns2:receiverName>Gfg Fdgfd</ns2:receiverName>
               <ns2:sendingCountry>JOR</ns2:sendingCountry>
               <ns2:receivingCountry>LTU</ns2:receivingCountry>
               <ns2:serviceType>CASH</ns2:serviceType>
               <ns2:taxAmount>0.5</ns2:taxAmount>
               <ns2:sendingReason>Study Expenses</ns2:sendingReason>
            </ns2:agentRemittancesList>
         </return>
      </ns3:getAgentRemittancesListResponse>
   </S:Body>
</S:Envelope>

Get Outstanding Remittances List#

getOutstandingRemittancesList

This method retrieves outstanding point-to-point remittances.

Permissions Required

Permissions are required for the agent to access this method.

Request Inputs#

Field Type Size Mandatory Description
agentCode String 5 Yes Agent code assigned by SHIFT
userId String 20 Yes User ID assigned by SHIFT
userPassword String 30 Yes User password assigned by SHIFT
destinationCountryCode String 3 Yes The destination country code, ISO Alpha3
serviceType String 20 Yes See Service types table

Response Outputs#

Field Type Description
resultCode String See the Result Codes and Messages table
resultMessage String
remittanceOutstandingList List of Objects See below remittanceOutstandingList

remittanceOutstandingList#

remittanceOutstandingList Object fields
Field Type Description
remittanceTrackingCode String
apiAgentReferenceNumber String Will be returned if available
recordingDate Date Format: dd/MM/yyyy
payoutAmount Decimal
payoutCurrencyCode String ISO Alpha3
senderName String
receiverName String
receiverMobile String
serviceType String CASH or CREDIT

SOAP Request#

<soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/" xmlns:web="http://webservice/">
   <soapenv:Header/>
   <soapenv:Body>
      <web:getOutstandingRemittancesList>
         <destinationCountryCode>EGY</destinationCountryCode>
         <serviceType>CASH</serviceType>
         <agentCode>*****</agentCode>
         <userId>*****</userId>
         <userPassword>*****</userPassword>
      </web:getOutstandingRemittancesList>
   </soapenv:Body>
</soapenv:Envelope>

SOAP Response#

<S:Envelope xmlns:S="http://schemas.xmlsoap.org/soap/envelope/">
   <S:Body>
      <ns3:getOutstandingRemittancesListResponse xmlns:ns2="http://xml.netbeans.org/schema/ApiSchema" xmlns:ns3="http://webservice/">
         <return>
            <ns2:resultCode>9000</ns2:resultCode>
            <ns2:resultMessage>Operation successfully</ns2:resultMessage>
            <ns2:remittanceOutstandingList>
               <ns2:remittanceTrackingCode>41687184901</ns2:remittanceTrackingCode>
               <ns2:recordingDate>13/08/2018 09:37:04 AM</ns2:recordingDate>
               <ns2:payoutAmount>102.0</ns2:payoutAmount>
               <ns2:payoutCurrencyCode>JOD</ns2:payoutCurrencyCode>
               <ns2:senderName>Sender name test</ns2:senderName>
               <ns2:receiverName>receiver name test</ns2:receiverName>
               <ns2:receiverMobile>009620000</ns2:receiverMobile>
               <ns2:serviceType>CASH</ns2:serviceType>
            </ns2:remittanceOutstandingList>
         </return>
      </ns3:getOutstandingRemittancesListResponse>
   </S:Body>
</S:Envelope>