models

package
v1.0.1 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Mar 20, 2023 License: GPL-2.0 Imports: 2 Imported by: 0

Documentation

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

This section is empty.

Types

type AcceptPaymentCallback

type AcceptPaymentCallback struct {
	Id             string `json:"id"`
	BillLink       string `json:"bill_link"`
	BillLinkId     int    `json:"bill_link_id"`
	BillTitle      string `json:"bill_title"`
	SenderName     string `json:"sender_name"`
	SenderBank     string `json:"sender_bank"`
	Amount         int    `json:"amount"`
	Status         string `json:"status"`
	SenderBankType string `json:"sender_bank_type"`
	CreatedAt      string `json:"created_at"`
}

AcceptPaymentCallback Accept payment callback will be sent to you if there is a payment status that changed to SUCCESSFUL, CANCELED, or FAILED.

Example AcceptPaymentCallback:

{
  "id": "FT1",
  "bill_link": "flip.id/$<company_code>/#<product_code>",
  "bill_link_id": 4740,
  "bill_title": "Cimol Goreng",
  "sender_name": "Jon Doe",
  "sender_bank": "bni",
  "amount": 10000,
  "status": "SUCCESSFUL",
  "sender_bank_type": "bank_account",
  "created_at": "2021-11-29 10:10:10"
}

type AgentIdentity

type AgentIdentity struct {
	Id                    int    `json:"id"`
	CompanyId             int    `json:"company_id"`
	Name                  string `json:"name"`
	IdentityType          string `json:"identity_type"`
	IdentityNumber        string `json:"identity_number"`
	BirthPlace            string `json:"birth_place"`
	BirthDate             string `json:"birth_date"`
	Gender                string `json:"gender"`
	CountryId             int    `json:"country_id"`
	CountryName           string `json:"country_name"`
	ProvinceId            int    `json:"province_id"`
	ProvinceName          string `json:"province_name"`
	CityId                int    `json:"city_id"`
	CityName              string `json:"city_name"`
	DistrictId            int    `json:"district_id"`
	DistrictName          string `json:"district_name"`
	Address               string `json:"address"`
	ResidenceCountryId    int    `json:"residence_country_id"`
	ResidenceCountryName  string `json:"residence_country_name"`
	ResidenceProvinceId   int    `json:"residence_province_id"`
	ResidenceProvinceName string `json:"residence_province_name"`
	ResidenceCityId       int    `json:"residence_city_id"`
	ResidenceCityName     string `json:"residence_city_name"`
	ResidenceDistrictId   int    `json:"residence_district_id"`
	ResidenceDistrictName string `json:"residence_district_name"`
	ResidenceAddress      string `json:"residence_address"`
	Occupation            string `json:"occupation"`
	PhoneNumber           string `json:"phone_number"`
	Email                 string `json:"email"`
	KycStatus             string `json:"kyc_status"`
}

AgentIdentity

| Attribute | Description | |-------------------------|----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------| | id | Id of the created Agent | | company_id | Id of the company which the Agent belongs to | | name | Agent’s full name | | identity_type | Type of identity. Possible values are:ktpNational Id Card or KTP in Indonesiapassport | | identity_number | Identity number based on the type chosen | | birth_place | Agent’s birth place | | birth_date | Agent’s birth date on DD-MM-YYYY format | | gender | Agent’s gender. Possible values are:malefemale | | country_id | Agent’s country code | | country_name | Agent’s country name based on the country code | | province_id | Agent’s province code | | provice_name | Agent’s province name based on the province code | | city_id | Agent’s city ID in the identity type chosen | | city_name | Agent’s city name based on the city code | | district_id | Agent’s district ID in the identity type chosen | | district_name | Agent’s district name based on the district code | | address | Agent’s address | | residence_country_id | Agent’s current residential address country code | | residence_country_name | Agent’s current residential address country name | | residence_province_id | Agent’s current residential address province code | | residence_provice_name | Agent’s current residential address province name | | residence_city_id | Agent’s current residential address city code | | residence_city_name | Agent’s current residential address city name | | residence_district_id | Agent’s current residential address district code | | residence_district_name | Agent’s current residential address district name | | residence_address | Agent’s current residential address | | occupation | Agent’s job. Possible values are:housewifeentrepreneurprivate_employeegovernment_employeefoundation_boardPeople who work at foundation as an employeeindonesian_migrant_workerAlso known as TKIcompanyIf sender is a company, not individualothers | | phone_number | Agent’s phone number | | email | Agent’s email | | kyc_status | Agent’s KYC status. Values can be seen on the KYC status enum. |

type AgentKYCStatusCallback

type AgentKYCStatusCallback struct {
	AgentId            int    `json:"agent_id"`
	AgentName          string `json:"agent_name"`
	KycStatus          string `json:"kyc_status"`
	RejectedReasonCode int    `json:"rejected_reason_code"`
	RejectedReason     string `json:"rejected_reason"`
	CreatedAt          string `json:"created_at"`
	UpdatedAt          string `json:"updated_at"`
	SubmittedAt        string `json:"submitted_at"`
	VerifiedAt         string `json:"verified_at"`
}

AgentKYCStatusCallback A callback notification will be sent to your Agent KYC callback URL if there is a status update related to the agent’s KYC process.

Example :

{
  "agent_id": 1,
  "agent_name": "John Doe",
  "kyc_status": "UPLOAD_IDENTITY_SELFIE_FAILED",
  "rejected_reason_code": 10,
  "rejected_reason": "The data that is filled in does not match with identity card",
  "created_at": "2022-02-18 05:03:32",
  "updated_at": "2022-03-17 09:48:58",
  "submitted_at": "2022-03-17 09:48:58",
  "verified_at": "2022-01-03 09:11:49"
}

type BankInquiryCallback

type BankInquiryCallback struct {
	BankCode      string `json:"bank_code"`
	AccountNumber string `json:"account_number"`
	AccountHolder string `json:"account_holder"`
	Status        string `json:"status"`
	InquiryKey    string `json:"inquiry_key"`
}

BankInquiryCallback If our system has completed the bank account inquiry process, then we will hit the provided URL for the bank inquiry callback.

Example BankInquiryCallback:

{
  "bank_code": "bca",
  "account_number": "5465327020",
  "account_holder": "PT Fliptech Lentera IP",
  "status": "SUCCESS",
  "inquiry_key": "aVncCDdKW9dciRvH9qSH"
}

type BillBankAccount

type BillBankAccount struct {
	AccountNumber *string `json:"account_number"`
	AccountType   string  `json:"account_type"`
	BankCode      string  `json:"bank_code"`
	AccountHolder string  `json:"account_holder"`
}

BillBankAccount | Attribute | Description | |----------------|------------------------------------------------------------------------------------| | account_number | Account number of the receiver bank. | | account_type | Type of the account, the value could be: virtual_accountbank_accountwallet_account | | bank_code | Bank code of the account. See Bank Code Constants. | | account_holder | Name of the holder of the account. |

type BillPayments

type BillPayments struct {
	Id             string `json:"id"`
	Amount         int    `json:"amount"`
	UniqueCode     int    `json:"unique_code"`
	Status         string `json:"status"`
	SenderBank     string `json:"sender_bank"`
	SenderBankType string `json:"sender_bank_type"`
	UserAddress    string `json:"user_address"`
	UserPhone      string `json:"user_phone"`
	CreatedAt      int    `json:"created_at"`

	ReceiverBankAccount BillBankAccount `json:"receiver_bank_account"`
}

BillPayments | Attribute | Description | |-----------------------|------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------| | id | ID of the transaction. | | amount | Amount of the transaction. Please note that in case of Bank Transfer payment option, the actual amount to be transferred by your customer must be equal to the amount + unique_code returned in the response. | | unique_code | Unique code of the transaction | | status | Status of the transaction NOT_CONFIRMED: If the transaction was just created.PENDING: If the transaction has been confirmed by the userPROCESSED: If the transaction is being processed by the system.CANCELED: If the transaction is canceled.FAILED: If the transaction is failed.DONE: If the transaction is successfully done. | | sender_bank | Bank that is used for the payment. See Bank Code Constants. | | sender_bank_type | Type of the sender bank that is used for the payment. bank_account: if the type of the sender bank uses bank transfer.virtual_account: if the type of the sender bank uses a virtual account.wallet_account: if the type of the sender bank uses e-wallet. | | receiver_bank_account | Account of the receiver of the payment. See Bank Account Object. | | user_address | Address of the User. | | user_phone | Phone number of the User. | | created_at | Unix timestamps of the transaction when it is created. |

type Billings

type Billings struct {
	LinkId                int     `json:"link_id"`
	LinkUrl               string  `json:"link_url"`
	Title                 string  `json:"title"`
	Type                  string  `json:"type"`
	Amount                int     `json:"amount"`
	RedirectUrl           string  `json:"redirect_url"`
	ExpiredDate           *string `json:"expired_date"`
	CreatedFrom           string  `json:"created_from"`
	Status                string  `json:"status"`
	IsAddressRequired     int     `json:"is_address_required"`
	IsPhoneNumberRequired int     `json:"is_phone_number_required"`
	Step                  int     `json:"step"`
	PaymentUrl            string  `json:"payment_url"`

	Customer    *CustomerBillings `json:"customer,omitempty"`
	BillPayment *BillPayments     `json:"bill_payment,omitempty"`
}

Billings | Attribute | Description | |--------------------------|------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------| | link_id | Bill link ID. | | link_url | Bill link URL for the user. | | title | Title of the bill. | | type | Bill type: SINGLE: single useMULTIPLE: multiple use | | amount | Payment amount. | | redirect_url | Redirect URL after payment is success. | | expired_date | Bill expiry date. The bill can’t be used any more beyond the expiry date. | | created_from | Bill created from method. | | status | Bill activation status: ACTIVEINACTIVE | | is_address_required | A flag if user needs to input their address when creating payment. 0: false1: true | | is_phone_number_required | A flag if user needs to input their phone number when creating payment. 0: false1: true | | step | Which step the customers will be redirected to when opening the payment link. 1: input-data (default)2: payment-method3: payment-confirmation | | payment_url | (Returned only if customer’s merchant chooses step 3) URL of the confirmation link or instruction to do the payment action.URL confirmation link is for payment using bank transfer, VA payment method, and QRIS with internal urlURL instruction link is for payment using e-wallet payment method with external url | | customer | (Returned only if customer’s merchant chooses step 2 or 3) Customer Data that is being saved. See Customer Object. | | bill_payment | (Returned only if customer’s merchant chooses step 3) Bill Payment data that has been created. See Bill Payment Object. |

type CityListResponse

type CityListResponse map[string]string // key: city code, value: city name

type ConfirmBillPaymentResponse

type ConfirmBillPaymentResponse struct {
	ConfirmedAt string `json:"confirmed_at"`
	PaymentUrl  string `json:"payment_url"`
}

type CountryCityListResponse

type CountryCityListResponse map[string]string // key: country/city code, value: country/city name

type CountryListResponse

type CountryListResponse map[string]string // key: country code, value: country name

type CreateAgentIdentityRequest

type CreateAgentIdentityRequest struct {
	Id                  int64  `json:"id,omitempty"`
	Name                string `json:"name"`
	IdentityType        string `json:"identity_type"`
	IdentityNumber      string `json:"identity_number"`
	BirthDate           string `json:"birth_date"`
	BirthPlace          string `json:"birth_place"`
	CountryId           string `json:"country_id"`
	ProvinceId          string `json:"province_id"`
	CityId              string `json:"city_id"`
	DistrictId          string `json:"district_id"`
	Address             string `json:"address"`
	Gender              string `json:"gender"`
	Occupation          string `json:"occupation"`
	PhoneNumber         string `json:"phone_number"`
	UseIdentityAddress  string `json:"use_identity_address"`
	ResidenceCountryId  int    `json:"residence_country_id"`
	ResidenceProvinceId int    `json:"residence_province_id"`
	ResidenceCityId     int    `json:"residence_city_id"`
	ResidenceDistrictId int    `json:"residence_district_id"`
	ResidenceAddress    string `json:"residence_address"`
	Email               string `json:"email"`
}

CreateAgentIdentityRequest | Attribute | Description | |-----------------------|------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------| | name | string (required)Agent’s full name. Validation:Alphanumeric1-50 characters | | identity_type | string (required)Type of identity. Validation:Accepted values are as follows:ktp (National Id Card or KTP in Indonesia)passport (Passport) | | identity_number | string (required)Identity number based on the type chosen. Validation:16 characters for KTP20 characters for Passport | | birth_date | string (required)Agent’s birth date. Validation:DD-MM-YYYY format | | birth_place | string (required)Agent’s birth place. Validation:Alphanumeric255 characters | | country_id | integer (required)Agent’s country code based on the identity chosen. Validation:Available values can be retrieved from the country list API here. | | province_id | integer (required)Agent’s province code based on the identity chosen. Validation:Available values can be retrieved from the province list API here. | | city_id | integer (required)Agent’s city code based on the identity chosen. Validation:Available values can be retrieved from the city list API here. | | district_id | integer (required)Agent’s district code based on the identity chosen. Validation:Available values can be retrieved from the district list API here. | | address | string (required)Agent’s address based on the identity chosen. Validation:Alphanumeric10-300 charactersSpaces, ., -, /, (, and ) | | gender | string (required)Agent’s gender. Validation:Accepted value are as follows:malefemale | | occupation | string (required)Agent’s job. Validation:Accepted value are as follows:housewifeentrepreneurprivate_employeegovernment_employeefoundation_boardPeople who work at foundation as an employeeindonesian_migrant_workerAlso known as TKIcompanyIf sender is a company, not individualothers | | phone_number | string (required)Agent’s phone number. It must be the one that has been verified by the company. Validation:If it starts with “0”, length is 8-24 charactersIf it starts with “+”, length is 10-26 characters | | use_identity_address | integer (optional)A flag to set if the current residential address of the Agent is the same as the identity address. Validation:Accepted value are as follows:0: false1: true | | residence_country_id | integer (optional)Agent’s current residential address country code. Validation:Available values can be retrieved from the country list API here. | | residence_province_id | integer (optional)Agent’s current residential address province code. Validation:Available values can be retrieved from the province list API here. | | residence_city_id | integer (optional)Agent’s current residential address city code. Validation:Available values can be retrieved from the city list API here. | | residence_district_id | integer (optional)Agent’s current residential address district code. Validation:Available values can be retrieved from the district list API here. | | residence_address | string (optional)Agent’s current residential address. Validation:Alphanumeric10-300 charactersSpaces, ., -, /, (, and ) | | email | string (optional)Agent’s email. Validation:Alphanumeric with email format (xxx@xxx.xxx) |

Example CreateAgentIdentityRequest:

{
    "name": "John Doe",
    "identity_type": "ktp",
    "identity_number": "1234567890123456",
    "birth_date": "31-10-1990",
    "birth_place": "Kota Depok",
    "country_id": "1",
    "province_id": "12",
    "city_id": "184",
    "district_id": "1234",
    "address": "Jalan Margonda Raya",
    "gender": "male",
    "occupation": "entrepreneur",
    "phone_number": "0812345678901",
    "use_identity_address": "1",
    "residence_country_id": 1,
    "residence_province_id": 1,
    "residence_city_id": 1,
    "residence_district_id": 1,
    "residence_address": "Jalan Kematian",
    "email": "example@mail.com"
}

type CreateAgentIdentityResponse

type CreateAgentIdentityResponse AgentIdentity

CreateAgentIdentityResponse The response the same as AgentIdentity

Example CreateAgentIdentityResponse:

{
   "id": 1,
   "company_id": 1,
   "name": "John Doe",
   "identity_type": "ktp",
   "identity_number": "1234567890123456",
   "birth_place": "Kota Depok",
   "birth_date": "31-10-1990",
   "gender": "male",
   "country_id": 1,
   "country_name": "Indonesia",
   "province_id": 12,
   "province_name": "Jawa Barat",
   "city_id": 184,
   "city_name": "Kota Depok",
   "district_id": 1234,
   "district_name": "Sukmajaya",
   "address": "Jalan Margonda Raya",
   "residence_country_id": 1,
   "residence_country_name": "Indonesia",
   "residence_province_id": 12,
   "residence_province_name": "Jawa Barat",
   "residence_city_id": 128,
   "residence_city_name": "Kota Depok",
   "residence_district_id": 1234,
   "residence_district_name": "Sukmajaya",
   "residence_address": "Jalan Margonda Raya",
   "occupation": "entrepreneur",
   "phone_number": "+628123456789",
   "email": "example@mail.com",
   "kyc_status":"BASIC_DATA"
}

type CreateBillRequest

type CreateBillRequest struct {
	Attribute             string `json:"Attribute"`
	Title                 string `json:"title"`
	Type                  string `json:"type"`
	Amount                string `json:"amount"`
	ExpiredDate           string `json:"expired_date"`
	RedirectUrl           string `json:"redirect_url"`
	IsAddressRequired     string `json:"is_address_required"`
	IsPhoneNumberRequired string `json:"is_phone_number_required"`
	Step                  string `json:"step"`
	SenderName            string `json:"sender_name"`
	SenderEmail           string `json:"sender_email"`
	SenderPhoneNumber     string `json:"sender_phone_number"`
	SenderAddress         string `json:"sender_address"`
	SenderBank            string `json:"sender_bank"`
	SenderBankType        string `json:"sender_bank_type"`
}

CreateBillRequest | Attribute | Description | |--------------------------|-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------| | title | string (required) The title of the bill. | | type | string (required) Bill type: SINGLE: single useMULTIPLE: multiple use For bill created with step 3 only SINGLE is permissible. | | amount | integer (optional) Payment amount, minimum Rp10.000 and maximum Rp10.000.000. Leave blank if want to set a flexible amount. Optional for bill created with Step 1 and mandatory for bill created with Step 2/ Step 3. | | expired_date | string (optional) Bill expiry date. The bill can’t be used any more beyond the expiry date. Format: YYYY-MM-DD HH:mm. | | redirect_url | string (optional) Redirect URL after payment is success. | | is_address_required | integer (optional) A flag if user needs to input their address when creating payment. 0: false (default)1: true | | is_phone_number_required | integer (optional) A flag if user needs to input their phone number when creating payment. 0: false (default)1: true | | step | integer (required) Which step the customers will be redirected to when opening the payment link. 1: input-data (default)2: payment-method3: payment-confirmation | | sender_name | string (required for step 2-payment method or step 3-payment-confirmation) Name of the Customer. | | sender_email | string (required for step 2-payment method or step 3-payment-confirmation) Email of the Customer. | | sender_phone_number | string (applicable for step 2-payment method or step 3-payment-confirmation) Phone number of the Customer. | | sender_address | string (applicable for step 2-payment method or step 3-payment-confirmation) Address of the Customer. | | sender_bank | string (required for step 3-payment-confirmation) Bank that is used for the payment. Value will be bank_code of Flip. Please instruct your users to follow these steps for making BSI VA payments | | sender_bank_type | string (required for step 3-payment-confirmation) For a virtual account the value must be set as virtual_accountFor e-wallet the value must be set as wallet_account.See Bank Account Constants. |

Example CreateBillRequest:

{
    "title": "Coffee Table",
    "type": "SINGLE",
    "amount": "900000",
    "expired_date": "2024-12-30 15:50",
    "redirect_url": "https://someurl.com",
    "is_address_required": "0",
    "is_phone_number_required": "0",
    "step": "1"
}

type CreateBillResponse

type CreateBillResponse Billings

type CreateDisbursementAgentRequest

type CreateDisbursementAgentRequest struct {
	AgentId          string `json:"agent_id"`
	AccountNumber    string `json:"account_number"`
	Amount           string `json:"amount"`
	BankCode         string `json:"bank_code"`
	Direction        string `json:"direction"`
	Remark           string `json:"remark"`
	BeneficiaryEmail string `json:"beneficiary_email"`
}

CreateDisbursementAgentRequest Example CreateDisbursementAgentRequest:

{
  "agent_id":"1",
  "account_number":"1122333301",
  "amount":"10000",
  "bank_code":"bni",
  "direction":"DOMESTIC_SPECIAL_TRANSFER",
  "remark":"some remark",
  "beneficiary_email":"example@mail.com"
}

type CreateDisbursementAgentResponse

type CreateDisbursementAgentResponse DisbursementModel

type CreateDisbursementRequest

type CreateDisbursementRequest struct {
	AccountNumber    string `json:"account_number"`
	BankCode         string `json:"bank_code"`
	Amount           string `json:"amount"`
	Remark           string `json:"remark"`
	RecipientCity    string `json:"recipient_city"`
	BeneficiaryEmail string `json:"beneficiary_email"`
}

CreateDisbursementRequest | Attribute | Description | |------------------|----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------| | AccountNumber | string (required) The account number of the recipient. Validation:Numeric | | BankCode | string (required) Bank code of the recipient bank.Validation:Accepted values are listed here. | | Amount | integer (required) The amount of money to be disbursed Validation:Numeric | | Remark | string (optional) Remark to be included in the transfer made to the recipient. Usually will appear as berita transfer or remark in the transfer receipt. Only for disbursement with the bank code being bri, the remark will be prepended with the beneficiary name. Example: tes remark will be john doe test remark. Validation:1-18 characterAlphanumericSpaces, ., -, /, (, and ) | | RecipientCity | integer (optional) City code of the recipient city. Validation:Accepted values are listed here. | | BeneficiaryEmail | string (optional) List of the recipient emails. Validation:Alphanumeric with email format (xxx@xxx.xxx)Separate each email with a comma (if any) |

Example CreateDisbursementRequest:

{
  "account_number":"1122333300",
  "bank_code":"bni",
  "amount":"10000",
  "remark":"some remark",
  "recipient_city":"391,",
  "beneficiary_email":"test@mail.com,user@mail.com"
}

type CreateDisbursementResponse

type CreateDisbursementResponse DisbursementModel

type CreateInternationalTransferB2CB2BResponse

type CreateInternationalTransferB2CB2BResponse InternationalTransfer

CreateInternationalTransferB2CB2BResponse Documentation on InternationalTransfer

type CreateInternationalTransferB2XFileRequest

type CreateInternationalTransferB2XFileRequest struct {
	AttachmentData requests.UploadFile `json:"attachment_data"`
}

type CreateInternationalTransferB2XRequest

type CreateInternationalTransferB2XRequest struct {
	DestinationCountry                 string `json:"destination_country"`
	SourceCountry                      string `json:"source_country"`
	TransactionType                    string `json:"transaction_type"`
	Amount                             string `json:"amount"`
	AttachmentType                     string `json:"attachment_type"`
	BeneficiaryAccountNumber           string `json:"beneficiary_account_number"`
	BeneficiaryAchCode                 string `json:"beneficiary_ach_code"`
	BeneficiaryAddress                 string `json:"beneficiary_address"`
	BeneficiaryBankId                  string `json:"beneficiary_bank_id"`
	BeneficiaryBankName                string `json:"beneficiary_bank_name"`
	BeneficiaryBranchNumber            string `json:"beneficiary_branch_number"`
	BeneficiaryBsbNumber               string `json:"beneficiary_bsb_number"`
	BeneficiaryCity                    string `json:"beneficiary_city"`
	BeneficiaryDocumentReferenceNumber string `json:"beneficiary_document_reference_number"`
	BeneficiaryEmail                   string `json:"beneficiary_email"`
	BeneficiaryFullName                string `json:"beneficiary_full_name"`
	BeneficiaryIban                    string `json:"beneficiary_iban"`
	BeneficiaryIdExpirationDate        string `json:"beneficiary_id_expiration_date"`
	BeneficiaryIfsCode                 string `json:"beneficiary_ifs_code"`
	BeneficiaryIdNumber                string `json:"beneficiary_id_number"`
	BeneficiaryMsisdn                  string `json:"beneficiary_msisdn"`
	BeneficiaryNationality             string `json:"beneficiary_nationality"`
	BeneficiaryPostalCode              string `json:"beneficiary_postal_code"`
	BeneficiaryProvince                string `json:"beneficiary_province"`
	BeneficiaryRelationship            string `json:"beneficiary_relationship"`
	BeneficiaryRemittancePurposes      string `json:"beneficiary_remittance_purposes"`
	BeneficiarySortCode                string `json:"beneficiary_sort_code"`
	BeneficiarySourceOfFunds           string `json:"beneficiary_source_of_funds"`
}

CreateInternationalTransferB2XRequest | Attribute | Description | |---------------------------------------|------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------| | destination_country | string (required) Destination country code using ISO 3166 (Alpha-3). See supported Destination Countries. | | source_country | string (required) Source country code using ISO 3166 (Alpha-3). Currently possible value is IDN. | | transaction_type | string (required) Transaction type information. Possible values are: B2CB2B | | amount | string (required) Amount of money that wants to be disbursed to the beneficiary (in beneficiary currency). Maximum 2 decimal places, for Japan there can be no decimal. Must be within the minimum and maximum amount based on transaction currency. | | attachment_data | file (required, if the destination country need it) File of invoice for Malaysia B2B Accepted extensions: txt, pdf, doc, docx, jpg, jpeg, png, bmp, rtf, xls, xlsx | | attachment_type | string (required, if the destination country need it)Currently possible value is invoice for MYS | | beneficiary_account_number | string (required) Account number of the beneficiary bank | | beneficiary_ach_code | string (required, if the destination country need it)Ach code of the beneficiary | | beneficiary_address | string (required, if the destination country need it) Address of the beneficiary | | beneficiary_bank_id | string (required, if the destination country need it) ID of beneficiary bank | | beneficiary_bank_name | string (required, if the destination country need it) Name of beneficiary bank. Can be used for destination countries AUS and GBR | | beneficiary_branch_number | string (required, if the destination country need it) Identifier of banks and branches across Japan | | beneficiary_bsb_number | string (required, if the destination country need it) Identifier of banks and branches across Australia | | beneficiary_city | string (required, if the destination country need it) City of the beneficiary | | beneficiary_document_reference_number | string (required, if the destination country need it) Reference number of document related to the transaction | | beneficiary_email | string (optional) Email of beneficiary | | beneficiary_full_name | string (required, if the destination country need it) Full name of the beneficiary | | beneficiary_iban | string (required, if the destination country need it) Identifier of individual account involved in the international transaction | | beneficiary_id_expiration_date | string (required, if the destination country need it)ID expiration date using YYYY-MM-DD format | | beneficiary_ifs_code | string (required, if the destination country need it)Indian financial system code | | beneficiary_id_number | string (required, if the destination country need it)ID Number | | beneficiary_msisdn | string (required, if the destination country need it) A number used to identify a phone number internationally | | beneficiary_nationality | string (required, if the destination country need it) Country code using ISO 3166 (Alpha-3) of beneficiary nationality | | beneficiary_postal_code | string (required, if the destination country need it) Postal code of the beneficiary | | beneficiary_province | string (required, if the destination country need it) Province or state of the beneficiary | | beneficiary_relationship | string (required, if the destination country need it) Relationship of beneficiary | | beneficiary_remittance_purposes | string (required, if the destination country need it) Purpose of remittance | | beneficiary_sort_code | string (required, if the destination country need it) Digits of code which is used by British and Irish banks | | beneficiary_source_of_funds | string (required, if the destination country need it) Source of funds |

Example CreateInternationalTransferB2XRequest:

{
  "destination_country":"MYS",
  "source_country":"IDN",
  "transaction_type":"B2B",
  "amount":"300.6",
  "attachment_data":(binary),
  "attachment_type":"invoice",
  "beneficiary_account_number":"1187710200",
  "beneficiary_bank_id":"2122",
  "beneficiary_document_reference_number":"doc_reference_123456",
  "beneficiary_full_name":"Jane Doe",
  "beneficiary_remittance_purposes":"TRAVEL"
}

type CreateInternationalTransferC2CC2BRequest

type CreateInternationalTransferC2CC2BRequest struct {
	IdNumber                           string `json:"id_number"`
	IdExpirationDate                   string `json:"id_expiration_date"`
	Amount                             string `json:"amount"`
	SourceCountry                      string `json:"source_country"`
	DestinationCountry                 string `json:"destination_country"`
	TransactionType                    string `json:"transaction_type"`
	BeneficiaryFullName                string `json:"beneficiary_full_name"`
	BeneficiaryAccountNumber           string `json:"beneficiary_account_number"`
	BeneficiaryBankId                  string `json:"beneficiary_bank_id"`
	BeneficiaryBankName                string `json:"beneficiary_bank_name"`
	BeneficiaryEmail                   string `json:"beneficiary_email"`
	BeneficiaryMsisdn                  string `json:"beneficiary_msisdn"`
	BeneficiaryNationality             string `json:"beneficiary_nationality"`
	BeneficiaryProvince                string `json:"beneficiary_province"`
	BeneficiaryCity                    string `json:"beneficiary_city"`
	BeneficiaryAddress                 string `json:"beneficiary_address"`
	BeneficiaryPostalCode              string `json:"beneficiary_postal_code"`
	BeneficiaryRelationship            string `json:"beneficiary_relationship"`
	BeneficiaryBeneficiaryRelationship string `json:"beneficiary_beneficiary_relationship"`
	BeneficiarySourceOfFunds           string `json:"beneficiary_source_of_funds"`
	BeneficiaryRemittancePurposes      string `json:"beneficiary_remittance_purposes"`
	BeneficiaryIban                    string `json:"beneficiary_iban"`
	BeneficiarySwiftBicCode            string `json:"beneficiary_swift_bic_code"`
	BeneficiarySortCode                string `json:"beneficiary_sort_code"`
	BeneficiaryIfsCode                 string `json:"beneficiary_ifs_code"`
	BeneficiaryBsbNumber               string `json:"beneficiary_bsb_number"`
	BeneficiaryBranchNumber            string `json:"beneficiary_branch_number"`
	BeneficiaryDocumentReferenceNumber string `json:"beneficiary_document_reference_number"`
	BeneficiaryRegistrationNumber      string `json:"beneficiary_registration_number"`
	BeneficiaryRegion                  string `json:"beneficiary_region"`
	SenderName                         string `json:"sender_name"`
	SenderCountry                      string `json:"sender_country"`
	SenderPlaceOfBirth                 string `json:"sender_place_of_birth"`
	SenderDateOfBirth                  string `json:"sender_date_of_birth"`
	SenderAddress                      string `json:"sender_address"`
	SenderIdentityType                 string `json:"sender_identity_type"`
	SenderIdentityNumber               string `json:"sender_identity_number"`
	SenderJob                          string `json:"sender_job"`
	SenderEmail                        string `json:"sender_email"`
	SenderCity                         string `json:"sender_city"`
	SenderPhoneNumber                  string `json:"sender_phone_number"`
}

CreateInternationalTransferC2CC2BRequest | Attribute | Description | |---------------------------------------|---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------| | id_number | string (required, if the destination country need it) Id number. | | id_expiration_date | string (required, if the destination country need it) ID expiration date using YYYY-MM-DD&nbsp;format. | | amount | string (required) Amount of money that wants to be disbursed to the beneficiary (in beneficiary currency). Maximum 2 decimal places, for Japan there can be no decimal. Must be within the minimum and maximum amount based on transaction currency. | | source_country | string (required) Source country code using ISO 3166 (Alpha-3). Currently possible value is IDN. | | destination_country | string (required) Destination country code using ISO 3166 (Alpha-3). See supported Destination Countries. | | transaction_type | string (required) Transaction type information. Possible values are: C2CC2B | | beneficiary_full_name | string (required) Full name of the beneficiary | | beneficiary_account_number | string (required) Account number of the beneficiary bank | | beneficiary_bank_id | string (required) ID of beneficiary bank | | beneficiary_bank_name | string (optional) Name of beneficiary bank. Can be used for destination countries AUS and GBR | | beneficiary_email | string (optional) Email of beneficiary | | beneficiary_msisdn | string (required, if the destination country need it) A number used to identify a phone number internationally | | beneficiary_nationality | string (required) Country code using ISO 3166 (Alpha-3) of beneficiary nationality | | beneficiary_province | string (required) Province or state of the beneficiary | | beneficiary_city | string (required) City of the beneficiary | | beneficiary_address | string (required) Address of the beneficiary | | beneficiary_postal_code | string (optional) Postal code of the beneficiary | | beneficiary_relationship | string (required) Relationship of beneficiary | | beneficiary_source_of_funds | string (required) Source of funds | | beneficiary_remittance_purposes | string (required) Purpose of remittance | | beneficiary_iban | string (required, if the destination country need it) Identifier of individual account involved in the international transaction | | beneficiary_swift_bic_code | string (required, if the destination country need it) Identifier of specific bank during an international transaction | | beneficiary_sort_code | string (required, if the destination country need it) Digits of code which is used by British and Irish banks | | beneficiary_ifs_code | string (required, if the destination country need it) Indian financial system code | | beneficiary_bsb_number | string (required, if the destination country need it) Identifier of banks and branches across Australia | | beneficiary_branch_number | string (required, if the destination country need it) Identifier of banks and branches across Japan | | beneficiary_document_reference_number | string (required, if the destination country need it) Reference number of document related to the transaction | | beneficiary_registration_number | string (required, if the destination country need it) Registration number | | beneficiary_region | string (required, if the destination country need it) Required for destination country China code. | | sender_name | string (required) The name of the user of the Money Transfer Company that act as a sender | | sender_country | integer (required) Country code of the sender’s residence. Available value can be retrieved from country list. | | sender_place_of_birth | integer (required) City/country code of the sender’s place of birth. Use city code if the sender’s place of birth is in Indonesia, and country code if outside Indonesia. Available value can be retrieved from city/country list. | | sender_date_of_birth | string (required) Sender’s date of birth with YYYY-MM-DD format | | sender_address | string (required) Sender’s address | | sender_identity_type | string (required) Sender’s ID type. Accepted value are: nat_id (National Id Card or KTP in Indonesia)passport (Passport) | | sender_identity_number | string (required) Sender’s ID number | | sender_job | string (required) Sender’s job. Accepted values are: housewifeentrepreneurprivate_employeegovernment_employeefoundation_board (People who work at foundation as an employee)indonesian_migrant_worker (Also known as TKI)company (If sender is a company, not individual)others | | sender_email | string (required) Sender’s email. Only accept one email. | | sender_city | string (required) Sender’s city. | | sender_phone_number | string (required) Sender’s phone number. Start with country phone code. |

Example CreateInternationalTransferC2CC2BRequest:

{
  "id_number":"44943733088",
  "id_expiration_date":"2022-11-29",
  "amount":"52.63",
  "source_country":"IDN",
  "destination_country":"GBR",
  "transaction_type":"C2C",
  "beneficiary_full_name":"John Smith",
  "beneficiary_account_number":"1122333300",
  "beneficiary_bank_id":"1807",
  "beneficiary_bank_name":"Allica Bank",
  "beneficiary_email":"emial@email.com",
  "beneficiary_msisdn":"09584008222",
  "beneficiary_nationality":"IDN",
  "beneficiary_province":"United Kingdom",
  "beneficiary_city":"Manchester",
  "beneficiary_address":"Mosley St Manchester",
  "beneficiary_postal_code":"M2",
  "beneficiary_relationship":"SON",
  "beneficiary_source_of_funds":"BUSINESS",
  "beneficiary_remittance_purposes":"EDUCATION",
  "beneficiary_sort_code":"506967",
  "sender_name":"John Doe",
  "sender_country":100252,
  "sender_place_of_birth":100230,
  "sender_date_of_birth":"1963-12-01",
  "sender_address":"Some Address Street 123",
  "sender_identity_type":"nat_id",
  "sender_identity_number":"1234789012347890",
  "sender_job":"entrepreneur",
  "sender_email":"sender@mail.com",
  "sender_city":"Sender City",
  "sender_phone_number":" 628123456789",
  "beneficiary_region":"10274"
}

type CreateInternationalTransferC2CC2BResponse

type CreateInternationalTransferC2CC2BResponse InternationalTransfer

CreateInternationalTransferC2CC2BResponse Detail params can see on InternationalTransfer

type CreateSpecialDisbursementRequest

type CreateSpecialDisbursementRequest struct {
	AccountNumber        string `json:"account_number"`
	BankCode             string `json:"bank_code"`
	Amount               string `json:"amount"`
	Remark               string `json:"remark"`
	RecipientCity        string `json:"recipient_city"`
	SenderCountry        string `json:"sender_country"`
	SenderPlaceOfBirth   string `json:"sender_place_of_birth"`
	SenderDateOfBirth    string `json:"sender_date_of_birth"`
	SenderIdentityType   string `json:"sender_identity_type"`
	SenderName           string `json:"sender_name"`
	SenderAddress        string `json:"sender_address"`
	SenderIdentityNumber string `json:"sender_identity_number"`
	SenderJob            string `json:"sender_job"`
	Direction            string `json:"direction"`
	BeneficiaryEmail     string `json:"beneficiary_email"`
}

CreateSpecialDisbursementRequest | Attribute | Description | |------------------------|----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------| | account_number | string (required) The account number of the recipient. Validation:Numeric | | bank_code | string (required) Bank code of the recipient bank. Validation:Accepted value are listed here | | amount | integer (required) The amount of money to be disbursed. Validation:Numeric | | remark | string (optional) Remark to be included in the transfer made to the recipient. Usually will appear as berita transfer or remark in the transfer receipt. Only for disbursement with the bank code being bri, the remark will be prepended with the beneficiary name. Example: tes remark will be john doe test remark. Validation:1-18 characterAlphanumericSpaces, ., -, /, (, and ) | | recipient_city | integer (optional) City code of the recipient city. Default value is 394. Validation:Accepted values are listed here. | | sender_country | integer (required) Country code of the sender’s residence. Validation:Accepted values are listed here. | | sender_place_of_birth | integer (optional) City/country code of the sender’s place of birth. Use city code if the sender’s place of birth is in Indonesia, and country code if outside Indonesia. Validation:Accepted values are listed here. | | sender_date_of_birth | string/date (optional) Sender’s birth date. Validation:YYYY-MM-DD format | | sender_identity_type | string (optional) Sender’s ID type. Validation:Accepted value are as follows: nat_idNational Id Card or KTP in Indonesiadrv_licDriving licensepassportbank_accBank Account (DEFAULT) | | sender_name | string (required) The name of the user of the Money Transfer Company that act as a sender. Validation:Alphanumeric1-50 characters | | sender_address | string (required) Sender’s address. Validation:Alphanumeric255 characters | | sender_identity_number | string (optional) Sender’s ID number. Default value is from attribute account_number. Validation:16 characters for KTP20 characters for Passport | | sender_job | string (required) Sender’s job. Validation:Accepted value are as follows:housewifeentrepreneurprivate_employeegovernment_employeefoundation_boardPeople who work at foundation as an employeeindonesian_migrant_workerAlso known as TKIcompanyIf sender is a company, not individualothers | | direction | string (required) The direction of the transaction. Validation:Accepted values are as follows: DOMESTIC_SPECIAL_TRANSFERWhen the sender and the recipient are both residing in IndonesiaFOREIGN_INBOUND_SPECIAL_TRANSFERWhen the sender are in a foreign country, but the recipient are in Indonesia | | beneficiary_email | string (optional) List of the recipient emails. Validation:Alphanumeric with email format (xxx@xxx.xxx)Separate each email with a comma (if any) |

Example CreateSpecialDisbursementRequest:

{
  "account_number":"1122333301",
  "bank_code":"bni",
  "amount":"10000",
  "remark":"some remark",
  "recipient_city":"391",
  "sender_country":"100252",
  "sender_place_of_birth":"391",
  "sender_date_of_birth":"1992-01-01",
  "sender_identity_type":"nat_id",
  "sender_name":"John Doe",
  "sender_address":"Some Address Street 123",
  "sender_identity_number":"123456789",
  "sender_job":"entrepreneur",
  "direction":"DOMESTIC_SPECIAL_TRANSFER",
  "beneficiary_email":"test@mail.com,user@mail.com"
}

type CreateSpecialDisbursementResponse

type CreateSpecialDisbursementResponse DisbursementModel

type CustomerBillings

type CustomerBillings struct {
	Name    string `json:"name"`
	Email   string `json:"email"`
	Address string `json:"address"`
	Phone   string `json:"phone"`
}

CustomerBillings | Attribute | Description | |-----------|-------------------------------| | name | Name of the Customer. | | email | Email of the Customer. | | phone | Phone number of the Customer. | | address | Address of the Customer. |

type DisbursementCallback

type DisbursementCallback struct {
	Id            int         `json:"id"`
	UserId        int         `json:"user_id"`
	Amount        int         `json:"amount"`
	Status        string      `json:"status"`
	Reason        string      `json:"reason"`
	Timestamp     string      `json:"timestamp"`
	BankCode      string      `json:"bank_code"`
	AccountNumber string      `json:"account_number"`
	RecipientName string      `json:"recipient_name"`
	SenderBank    string      `json:"sender_bank"`
	Remark        string      `json:"remark"`
	Receipt       string      `json:"receipt"`
	TimeServed    string      `json:"time_served"`
	BundleId      int         `json:"bundle_id"`
	CompanyId     int         `json:"company_id"`
	RecipientCity int         `json:"recipient_city"`
	CreatedFrom   string      `json:"created_from"`
	Direction     string      `json:"direction"`
	Sender        interface{} `json:"sender"`
	Fee           int         `json:"fee"`
}

DisbursementCallback Disbursement callback will be sent to you if you transaction status is changed to DONE or CANCELLED. This callback is used for the V2 and V3 Disbursement.

Example DisbursementCallback:

{
  "id": 790,
  "user_id": 23,
  "amount": 10000,
  "status": "DONE",
  "reason": "",
  "timestamp": "2017-08-28 14:32:47",
  "bank_code": "bni",
  "account_number": "0437051936",
  "recipient_name": "- FLIPTECH LENTERA INSPIRASI P",
  "sender_bank": "bri",
  "remark": "testing",
  "receipt": "https://storage.biznetgiocloud.com/v1/AUTH_GIOOST443831/bukti_transfer/123993_2017-08-04%202017:07:26.jpg",
  "time_served": "2017-08-28 14:42:47",
  "bundle_id": 0,
  "company_id": 7,
  "recipient_city": 391,
  "created_from": "API",
  "direction": "DOMESTIC_TRANSFER",
  "sender": null,
  "fee": 1500
}

type DisbursementModel

type DisbursementModel struct {
	Id               int64                    `json:"id"`
	UserId           int64                    `json:"user_id"`
	Amount           float64                  `json:"amount"`
	Status           string                   `json:"status"`
	Reason           string                   `json:"reason"`
	Timestamp        string                   `json:"timestamp"`
	BankCode         string                   `json:"bank_code"`
	AccountNumber    string                   `json:"account_number"`
	RecipientName    string                   `json:"recipient_name"`
	SenderBank       string                   `json:"sender_bank"`
	Remark           string                   `json:"remark"`
	Receipt          string                   `json:"receipt"`
	TimeServed       string                   `json:"time_served"`
	BundleId         int64                    `json:"bundle_id"`
	CompanyId        int64                    `json:"company_id"`
	RecipientCity    int                      `json:"recipient_city"`
	CreatedFrom      string                   `json:"created_from"`
	Direction        string                   `json:"direction"`
	Sender           *DisbursementSenderModel `json:"sender"`
	Fee              float64                  `json:"fee"`
	BeneficiaryEmail string                   `json:"beneficiary_email"`
	IdempotencyKey   string                   `json:"idempotency_key"`
}

DisbursementModel | Attribute | Description | |-------------------|-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------| | id | Flip’s transaction id | | user_id | Your account user id in our system | | amount | The amount of money to be disbursed in IDR | | status | Transaction status. Possible values are: PENDINGDisbursement is still in processCANCELLEDThe transaction is cancelled and the amount of the transaction plus the transaction fee will be credited to your balance. This will happen if the transfer process are failed for reason such as inactive recipient account, wrong account number, etcDONEDisbursement process is finished and the money have been sent to the recipient | | reason | The reason value will be given if the transaction status is CANCELLED. Possible values are: INACTIVE_ACCOUNT Inactive account / Nomor rekening tidak aktifNOT_REGISTERED_ACCOUNT Not registered account / Nomor rekening tidak terdaftarCANT_RECEIVE_TRANSFER Can’t receive transfer / Rekening tujuan tidak dapat menerima transferINTERMITTENT_DISTURBANCE_ON_BENEFICIARY_BANK Intermittent disturbance on destination bank / Bank tujuan sementara mengalami gangguanBENEFICIARY_ACCOUNT_NOT_VERIFIED Account is not verified / Rekening tujuan belum terverifikasi | | timestamp | The time when the disbursement request created. Time will be in GMT+7 with yyyy-mm-dd hh:mm:ss format | | bank_code | Bank code of the recipient bank | | account_number | The account number of the recipient | | recipient_name | The name of the recipient account holder. If the account number haven’t cached by Flip yet, this attribute will show - (dash) instead | | sender_bank | The default sender bank in your account | | remark | Remark to be included in the transfer made to the recipient | | receipt | Url of the transfer receipt. The receipt will be a screenshot taken from the internet banking interface of each bank. This attribute will only show the url when the status is DONE | | time_served | The time when the transaction is finished. Will only show valid value when the status is DONE | | bundle_id | The bundle id of the transaction made from Flip for Business Dashboard (csv upload or manual input). For the transaction created from API, the value will always be 0 | | company_id | Your Flip for Business account user id in our system | | recipient_city | City code of the recipient city | | created_from | The channel of which the transaction was created. Possible values are: APIDASHBOARD | | direction | The direction of the transaction. Possible values are: DOMESTIC_TRANSFERCommon Disbursement from Indonesia to Indonesian recipientDOMESTIC_SPECIAL_TRANSFERSpecial disbursement from the user of a Money Transfer Company residing in Indonesia to Indonesian recipientFOREIGN_INBOUND_SPECIAL_TRANSFERSpecial disbursement from the user of a Money Transfer Company residing in a foreign country to Indonesian recipient | | sender | Possible values are null if the transaction is a common disbursement, and sender object if the transaction is a special disbursment. | | fee | The fee of the transaction | | beneficiary_email | List of the recipient emails | | idempotency_key | The idempotency key used to create the disbursement |

Example DisbursementModel:

{
  "id": 10,
  "user_id": 20,
  "amount": 10000,
  "status": "PENDING",
  "reason": "",
  "timestamp": "2017-08-28 14:32:47",
  "bank_code": "bni",
  "account_number": "1122333300",
  "recipient_name": "John Doe",
  "sender_bank": "bri",
  "remark": "some remark",
  "receipt": "",
  "time_served": "0000-00-00 00:00:00",
  "bundle_id": 0,
  "company_id": 7,
  "recipient_city": 391,
  "created_from": "API",
  "direction": "DOMESTIC_TRANSFER",
  "sender": {
    "sender_name": "John Doe",
    "place_of_birth": 391,
    "date_of_birth": "1992-01-01",
    "address": "Some Address Street 123",
    "sender_identity_type": "nat_id",
    "sender_identity_number": "asdas213123",
    "sender_country": 100252,
    "job": "entrepreneur"
  },
  "fee": 1500,
  "beneficiary_email": "test@mail.com,user@mail.com",
  "idempotency_key": "idem-key-1"
}

type DisbursementSenderModel

type DisbursementSenderModel struct {
	SenderName           string `json:"sender_name"`
	PlaceOfBirth         int    `json:"place_of_birth"`
	DateOfBirth          string `json:"date_of_birth"`
	Address              string `json:"address"`
	SenderIdentityType   string `json:"sender_identity_type"`
	SenderIdentityNumber string `json:"sender_identity_number"`
	SenderCountry        int    `json:"sender_country"`
	Job                  string `json:"job"`
}

DisbursementSenderModel | Attribute | Description | |------------------------|-------------------------------------------------------------------------------------------------------------------------------------------------| | sender_name | The name of the user of the Money Transfer Company that act as a sender | | place_of_birth | City/country code of the Sender’s place of birth | | date_of_birth | Sender’s date of birth | | address | Sender’s address | | sender_identity_type | Sender’s identity type. Possible value are: nat_id,drv_lic,passport,bank_acc | | sender_identity_number | Sender’s identity number | | sender_country | Country code of the Sender’s country | | job | Sender’s job. Possible values are:housewife,entrepreneur,private_employee,government_employee,foundation_board,indonesian_migrant_worker,others |

Example DisbursementSenderModel:

{
    "sender_name": "John Doe",
    "place_of_birth": 391,
    "date_of_birth": "1992-01-01",
    "address": "Some Address Street 123",
    "sender_identity_type": "nat_id",
    "sender_identity_number": "asdas213123",
    "sender_country": 100252,
    "job": "entrepreneur"
}

type EditBillingRequest

type EditBillingRequest struct {
	Title                 string `json:"title"`
	Type                  string `json:"type"`
	Amount                string `json:"amount"`
	ExpiredDate           string `json:"expired_date"`
	RedirectUrl           string `json:"redirect_url"`
	Status                string `json:"status"`
	IsAddressRequired     string `json:"is_address_required"`
	IsPhoneNumberRequired string `json:"is_phone_number_required"`
}

EditBillingRequest | Attribute | Description | |--------------------------|------------------------------------------------------------------------------------------------------------------------------| | title | string (optional) The title of the bill. | | type | string (optional) Bill type: SINGLE: single useMULTIPLE: multiple use for bill with step 3, type can only be “SINGLE” | | amount | integer (optional) Payment amount, minimum Rp10.000 and maximum Rp10.000.000. Leave blank if want to set a flexible amount. | | expired_date | string (optional) Bill expiry date. The bill can’t be used any more beyond the expiry date. Format: YYYY-MM-DD HH:mm. | | redirect_url | string (optional) Redirect URL after payment is success. | | status | string (optional) Bill activation status: ACTIVEINACTIVE | | is_address_required | integer (optional) A flag if user needs to input their address when creating payment. 0: false (default)1: true | | is_phone_number_required | integer (optional) A flag if user needs to input their phone number when creating payment. 0: false (default)1: true |

Example EditBillingRequest:

{
  "title":"Coffee Table",
  "amount":"900000",
  "type":"SINGLE",
  "expired_date":"2022-12-30 15:50",
  "redirect_url":"https://someurl.com",
  "status":"INACTIVE",
  "is_address_required":"0",
  "is_phone_number_required":"0"
}

type EditBillingResponse

type EditBillingResponse Billings

type ExchangeRateArrivalMessage

type ExchangeRateArrivalMessage struct {
	Id string `json:"id"`
	En string `json:"en"`
}

type ExchangeRates

type ExchangeRates struct {
	CurrencyCode     string      `json:"currency_code"`
	CountryCode      string      `json:"country_code"`
	CountryName      string      `json:"country_name"`
	CountryIsoCode   string      `json:"country_iso_code"`
	FlipExchangeRate float64     `json:"flip_exchange_rate"`
	FlipTransferFee  int         `json:"flip_transfer_fee"`
	MinimumAmount    float64     `json:"minimum_amount"`
	MaximumAmount    float64     `json:"maximum_amount"`
	PaymentSpeed     string      `json:"payment_speed"`
	ArrivalMessage   interface{} `json:"arrival_message"`
	Notes            *string     `json:"notes"`
	TransactionType  string      `json:"transaction_type"`
	FlipCutoffTime   string      `json:"flip_cutoff_time"`
	FlipArrivalTime  string      `json:"flip_arrival_time"`
}

ExchangeRates Model | Attribute | Description | |--------------------|-----------------------------------------------------------------------------------| | currency_code | Currency code of the country | | country_code | Country code using ISO 3166 (Alpha-2) | | country_name | Name of the country | | country_iso_code | Country code using ISO 3166 (Alpha-3) | | flip_exchange_rate | The country exchange rates to IDR | | flip_transfer_fee | Transfer fee to the country | | minimum_amount | Minimum transfer amount | | maximum_amount | Maximum transfer amount | | payment_speed | Expected payment completion speed: Real TimeSame Day +1 day or “+N day” | | arrival_message | Message related to payment speed, available in Bahasa (ID) and English (EN) | | notes | Additional notes | | transaction_type | Transaction type information | | flip_cutoff_time | Transfer cutoff time. Time will be in GMT+7 with yyyy-mm-dd hh:mm:ss format | | flip_arrival_time | Estimation of arrival time. Time will be in GMT+7 with yyyy-mm-dd hh:mm:ss format |

type GetAgentIdentityResponse

type GetAgentIdentityResponse struct {
	Id                 int         `json:"id"`
	CompanyId          int         `json:"company_id"`
	Name               string      `json:"name"`
	IdentityType       string      `json:"identity_type"`
	IdentityNumber     string      `json:"identity_number"`
	PhoneNumber        string      `json:"phone_number"`
	Email              string      `json:"email"`
	KycStatus          string      `json:"kyc_status"`
	RejectedReasonCode interface{} `json:"rejected_reason_code"`
	RejectedReason     string      `json:"rejected_reason"`
	Status             string      `json:"status"`
	CreatedAt          string      `json:"created_at"`
}

GetAgentIdentityResponse | Attribute | Description | |------------------------|-----------------------------------------------------------------------------------------------------------------------------------------------------------| | id | Id of the created Agent | | company_id | Id of the company which the Agent belongs to | | name | Agent’s full name | | identity_type | Type of identity. Possible values are:ktpNational Id Card or KTP in Indonesiapassport | | identity_number | Identity number based on the type chosen | | phone_number | Agent’s phone number | | email | Agent’s email | | kyc_status | Agent’s KYC status. Values can be seen on the KYC status enum. | | rejected_reason_code | Rejected reason code for Agent’s KYC. This value will be:null - if there’s no valueinteger from Agent’s KYC Rejection Reasons Code - if there’s a value | | rejected_reason | Rejected reason for Agent’s KYC. Full list of rejected reasons can be seen in the Agent’s KYC Rejection Reasons list. | | status | Enum of agent status:0 - Deleted10 - Active20 - Blacklisted30 - Blocked | | created_at | Created timestamp |

Example GetAgentIdentityResponse:

type GetAllBillingResponse

type GetAllBillingResponse []Billings

type GetAllDisbursementRequest

type GetAllDisbursementRequest struct {
	Pagination string  `json:"pagination"`
	Page       string  `json:"page"`
	Sort       string  `json:"sort"`
	Attribute  *string `json:"attribute,omitempty"`
}

GetAllDisbursementRequest | param | value | |------------|-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------| | pagination | integer (optional) The pagination of the result. Default value is 20. Validation:Numeric | | page | integer (optional) The page number of the result to be viewed. Validation:Numeric | | sort | string (optional) Sort the result by the attribute. Use the attribute name (e.g sort=id) to sort in ascending order or dash+attribute name (e.g sort=-id) to sort in descending order. Validation:Accepted values are as listed below. |

You can also filter the result by changing attribute with the attribute to be filtered and value with the filter value. You can filter more than one attribute by appending another attribute filter to the url.

Attribute that can be filtered are:

id - exact comparison
amount - exact comparison
status - exact comparison
timestamp - “like” comparison
bank_code - “like” comparison
account_number - “like” comparison
recipient_name - “like” comparison
remark - “like” comparison
time_served - “like” comparison
created_from - “like” comparison
direction - exact comparison

Example GetAllDisbursementRequest: pagination:10 page:1 sort:id attribute:11223333

type GetAllDisbursementResponse

type GetAllDisbursementResponse struct {
	TotalData   int                 `json:"total_data"`
	DataPerPage int                 `json:"data_per_page"`
	TotalPage   int                 `json:"total_page"`
	Page        int                 `json:"page"`
	Reason      string              `json:"reason"`
	Data        []DisbursementModel `json:"data"`
}

type GetAllInternationalTransferRequest

type GetAllInternationalTransferRequest Pagination

GetAllInternationalTransferRequest | Param | Value | |------------|-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------| | pagination | integer (optional) The pagination of the result. Default value is 20. | | page | integer (optional) The page number of the result to be viewed. Default value is 1. | | sort_by | string (optional) Sort the result by the attribute. Use the attribute name (e.g sort=id) to sort in ascending order or dash+attribute name (e.g sort=-id) to sort in descending order. Possible values are: id (default)amountsource_countrydestination_countrystatus |

More Documentation on Pagination

type GetAllInternationalTransferResponse

type GetAllInternationalTransferResponse struct {
	TotalData   int                     `json:"total_data"`
	DataPerPage int                     `json:"data_per_page"`
	TotalPage   int                     `json:"total_page"`
	Page        int                     `json:"page"`
	Data        []InternationalTransfer `json:"data"`
}

GetAllInternationalTransferResponse | Attribute | Description | |---------------|----------------------------------------| | total_data | Total data returned in all page | | data_per_page | Total data returned in current page | | total_page | Total/max page available | | page | Current page | | data | Array of InternationalTransfer |

type GetAllPaymentRequest

type GetAllPaymentRequest Pagination

GetAllPaymentRequest See documentation on Pagination

type GetAllPaymentResponse

type GetAllPaymentResponse struct {
	TotalData   int        `json:"total_data"`
	DataPerPage int        `json:"data_per_page"`
	TotalPage   int        `json:"total_page"`
	Page        int        `json:"page"`
	Data        []Payments `json:"data"`
}

GetAllPaymentResponse | Attribute | Description | |---------------|-------------------------------------| | total_data | Total data returned in all page | | data_per_page | Total data returned in current page | | total_page | Total/max page available | | page | Current page | | data | Array of Payments object. |

Example GetAllPaymentResponse:

{
  "total_data": 3,
  "data_per_page": 3,
  "total_page": 1,
  "page": 1,
  "data": [
    {
      "id": "FT12345678",
      "bill_link": "flip.id/$companyname/#coffeetable",
      "bill_title": "Coffee Table",
      "sender_name": "John Smith",
      "sender_bank": "mandiri",
      "amount": 900000,
      "status": "SUCCESSFUL",
      "settlement_status": "Pending",
      "created_at": "2021-02-01 14:57:44"
    }
  ]
}

type GetBalanceResponse

type GetBalanceResponse struct {
	Balance float64 `json:"balance"`
}

type GetBankInfoRequest

type GetBankInfoRequest struct {
	BankCode string `json:"code,omitempty"`
}

GetBankInfoRequest Example GetBankInfoRequest:

{
  "code":"mandiri"
}

type GetBankInfoResponse

type GetBankInfoResponse []struct {
	BankCode string `json:"bank_code"`
	Name     string `json:"name"`
	Fee      int    `json:"fee"`
	Queue    int    `json:"queue"`
	Status   string `json:"status"`
}

GetBankInfoResponse | Attribute | Description | |-----------|------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------| | bank_code | Flip’s bank code. cimb is the code for both CIMB Niaga and CIMB Niaga Syariah | | name | The name of the bank as we usually say it in Indonesian | | fee | The fee that you’ll be charged if you send money to this bank | | queue | Current queue for related bank. The longer/higher the queue number, the longer the transaction will be finished. | | status | The status of the disbursement process in related bank. Possible values are: OPERATIONALBanks are operational, disbursement will be processed as soon as possibleDISTURBEDBanks are slow or have another problem. Disbursement will still be processed, but in slower pace and might be delayedHEAVILY_DISTURBEDBanks are having an error, offline, or another problem that result in a nearly unusable system. Disbursement to this bank can not be processed in a short time, and maybe won’t be processed in the same day. You can ask for a refund if this happen. |

Example GetBankInfoResponse: [

{
    "bank_code": "mandiri",
    "name": "Mandiri",
    "fee": 5000,
    "queue": 8,
    "status": "DISTURBED"
}

]

type GetBillingResponse

type GetBillingResponse Billings

type GetDisbursementAgentListRequest

type GetDisbursementAgentListRequest struct {
	AgentId    string `json:"agent_id,omitempty"`
	Pagination string `json:"pagination,omitempty"`
	Page       string `json:"page,omitempty"`
	Sort       string `json:"sort,omitempty"`
}

GetDisbursementAgentListRequest | Param | Value | |------------|----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------| | agent_id | integer (optional) The agent ID that wants to be retrieved. If not provided, will return all agent disbursement for the company instead. Validation:Numeric | | pagination | integer (optional) The pagination of the result. Default value is 20. Validation:Numeric | | page | integer (optional) The page number of the result to be viewed. Validation:Numeric | | sort | string (optional) Sort the result by the attribute. Use the attribute name (e.g sort=id) to sort in ascending order or dash+attribute name (e.g sort=-id) to sort in descending order. Validation:Possible values are: idamountstatus |

Example GetDisbursementAgentListRequest: agent_id:1 pagination:10 page:1 sort:id

type GetDisbursementAgentListResponse

type GetDisbursementAgentListResponse struct {
	TotalData   int                 `json:"total_data"`
	DataPerPage int                 `json:"data_per_page"`
	TotalPage   int                 `json:"total_page"`
	Page        int                 `json:"page"`
	Data        []DisbursementModel `json:"data"`
}

type GetExchangeRateResponse

type GetExchangeRateResponse ExchangeRates

GetExchangeRateResponse Detail params on ExchangeRates

type GetExchangeRatesRequest

type GetExchangeRatesRequest struct {
	CountryIsoCode  string `json:"country_iso_code,omitempty"`
	TransactionType string `json:"transaction_type"`
}

GetExchangeRatesRequest | Param | Value | |------------------|-------------------------------------------------------------------------------------------------------------------------------------------------| | country_iso_code | string (optional) Country code using ISO 3166 (Alpha-3). You can choose multiple countries separate by comma. See supported Country ISO Codes. | | transaction_type | string (required) Transaction type information. Possible values are: C2CC2BB2CB2B |

Example GetExchangeRatesRequest: [URL]?country_iso_code=country_iso_code&transaction_type=transaction_type

type GetFormDataRequest

type GetFormDataRequest struct {
	CountryIsoCode  string `json:"country_iso_code,omitempty"`
	TransactionType string `json:"transaction_type"`
}

GetFormDataRequest | Param | Value | |------------------|-------------------------------------------------------------------------------------------------------------------------------------------------| | country_iso_code | string (optional) Country code using ISO 3166 (Alpha-3). You can choose multiple countries separate by comma. See supported Country ISO Codes. | | transaction_type | string (required) Transaction type information. Possible values are: C2CC2BB2CB2B |

Example GetFormDataRequest: [URL]?country_iso_code=country_iso_code&transaction_type=transaction_type

type GetFormDataResponse

type GetFormDataResponse struct {
	CountryIsoCode           string            `json:"country_iso_code"`
	CurrencyCode             string            `json:"currency_code"`
	BeneficiaryRelationships map[string]string `json:"beneficiary_relationships"`
	SourceOfFunds            map[string]string `json:"source_of_funds"`
	RemittancePurposes       map[string]string `json:"remittance_purposes"`
	Banks                    map[string]string `json:"banks"`
	SpecialIdentifiers       []string          `json:"special_identifiers"`
	Regions                  []interface{}     `json:"regions"`
	NationalityCountries     []interface{}     `json:"nationality_countries"`
}

GetFormDataResponse | Attribute | Description | |---------------------------|------------------------------------------| | country_iso_code | Country code using ISO 3166 (Alpha-3) | | currency_code | Currency code of the country | | beneficiary_relationships | Object of relationship of beneficiary | | source_of_funds | Object of source of funds | | remittance_purposes | Object of purpose of remittance | | banks | Object of bank in specific country | | special_identifiers | Required identifier for specific country | | regions | Array of region object | | nationality_countries | Array of country object |

type GetInternationalTransferResponse

type GetInternationalTransferResponse InternationalTransfer

GetInternationalTransferResponse Documentation on InternationalTransfer

type GetMaintenanceStatusResponse

type GetMaintenanceStatusResponse struct {
	Maintenance bool `json:"maintenance"`
}

GetMaintenanceStatusResponse | Attribute | Description | |-------------|-------------------------| | maintenance | Flip maintenance status |

Example GetMaintenanceStatusResponse:

{
    "maintenance": false
}

type GetPaymentRequest

type GetPaymentRequest Pagination

GetPaymentRequest See documentation on Pagination

type GetPaymentResponse

type GetPaymentResponse struct {
	LinkId      int        `json:"link_id"`
	TotalData   int        `json:"total_data"`
	DataPerPage int        `json:"data_per_page"`
	TotalPage   int        `json:"total_page"`
	Page        int        `json:"page"`
	Data        []Payments `json:"data"`
}

GetPaymentResponse | Attribute | Description | |---------------|-------------------------------------| | total_data | Total data returned in all page | | data_per_page | Total data returned in current page | | total_page | Total/max page available | | page | Current page | | data | Array of Payments object. |

Example GetPaymentResponse:

{
  "link_id": 1065,
  "total_data": 2,
  "data_per_page": 2,
  "total_page": 1,
  "page": 1,
  "data": [
    {
      "id": "PGPWF3453271107384587",
      "bill_link": "flip.id/$companyname/#coffeetable",
      "bill_title": "Coffee Table",
      "sender_name": "John Smith",
      "sender_bank": "qris",
      "amount": 900000,
      "status": "SUCCESSFUL",
      "settlement_status": "Pending",
      "created_at": "2022-07-01 14:57:44"
    }
  ]
}

type InterTransferBeneficiary

type InterTransferBeneficiary struct {
	IdNumber                string  `json:"id_number"`
	IdExpirationDate        string  `json:"id_expiration_date"`
	AchCode                 string  `json:"ach_code"`
	FullName                string  `json:"full_name"`
	BankAccountNumber       string  `json:"bank_account_number"`
	Bank                    string  `json:"bank"`
	Email                   *string `json:"email"`
	Msisdn                  string  `json:"msisdn"`
	Nationality             string  `json:"nationality"`
	Country                 string  `json:"country"`
	Province                string  `json:"province"`
	City                    string  `json:"city"`
	Address                 string  `json:"address"`
	PostalCode              *string `json:"postal_code"`
	Relationship            string  `json:"relationship"`
	SourceOfFunds           string  `json:"source_of_funds"`
	RemittancePurpose       string  `json:"remittance_purpose"`
	Iban                    *string `json:"iban"`
	SwiftBicCode            *string `json:"swift_bic_code"`
	SortCode                *string `json:"sort_code"`
	IfsCode                 *string `json:"ifs_code"`
	BsbNumber               *string `json:"bsb_number"`
	BranchNumber            *string `json:"branch_number"`
	DocumentReferenceNumber string  `json:"document_reference_number"`
	RegistrationNumber      *string `json:"registration_number"`
}

InterTransferBeneficiary | Attribute | Description | |---------------------------|----------------------------------------------------------------------------| | id_number | Id number | | id_expiration_date | ID expiration date using YYYY-MM-DD&nbsp;format | | full_name | Full name of the beneficiary | | bank_account_number | Account number of the beneficiary bank | | bank | Bank name of beneficiary bank | | email | Email of beneficiary | | msisdn | A number used to identify a phone number internationally | | nationality | Country code using ISO 3166 (Alpha-3) of beneficiary nationality | | country | Country code using ISO 3166 (Alpha-3) of the beneficiary’s country | | province | Province or state of the beneficiary | | city | City of the beneficiary | | address | Address of the beneficiary | | postal_code | Postal code of the beneficiary | | relationship | Relationship of sender and beneficiary | | source_of_funds | Source of funds | | remittance_purpose | Purpose of remittance | | iban | Identifier of individual account involved in the international transaction | | swift_bic_code | Identifier of specific bank during an international transaction | | sort_code | Digits of code which is used by British and Irish banks | | ifs_code | Indian financial system code | | bsb_number | Identifier of banks and branches across Australia | | branch_number | Identifier of bank for Japan | | document_reference_number | Reference number of document related to the transaction | | registration_number | Registration number |

type InterTransferSender

type InterTransferSender struct {
	Name           string `json:"name"`
	PlaceOfBirth   int64  `json:"place_of_birth"`
	DateOfBirth    string `json:"date_of_birth"`
	Address        string `json:"address"`
	IdentityType   string `json:"identity_type"`
	IdentityNumber string `json:"identity_number"`
	Country        int64  `json:"country"`
	Job            string `json:"job"`
	Email          string `json:"email"`
	City           string `json:"city"`
	PhoneNumber    string `json:"phone_number"`
}

InterTransferSender | Attribute | Description | |-----------------|--------------------------------------------------------------------------------------------------------------------------------------------| | name | The name of the user of the Money Transfer Company that act as a sender | | place_of_birth | City/country code of the Sender’s place of birth | | date_of_birth | Sender’s date of birth | | address | Sender’s address | | identity_type | Sender’s identity type. Possible values are: nat_idpassport | | identity_number | Sender’s identity number | | country | Country code of the Sender’s country | | job | Sender’s job. Possible values are: housewifeentrepreneurprivate_employeegovernment_employeefoundation_boardindonesian_migrant_workerothers | | email | Sender’s email | | city | Sender’s city | | phone_number | Sender’s phone number |

type InternationalTransfer

type InternationalTransfer struct {
	Id                      int64   `json:"id"`
	UserId                  int64   `json:"user_id"`
	CompanyId               int64   `json:"company_id"`
	ExchangeRate            float64 `json:"exchange_rate"`
	Fee                     int64   `json:"fee"`
	Amount                  int64   `json:"amount"`
	SourceCountry           string  `json:"source_country"`
	DestinationCountry      string  `json:"destination_country"`
	BeneficiaryAmount       float64 `json:"beneficiary_amount"`
	BeneficiaryCurrencyCode string  `json:"beneficiary_currency_code"`
	Status                  string  `json:"status"`
	Timestamp               string  `json:"timestamp"`
	TimeServed              string  `json:"time_served"`
	CreatedFrom             string  `json:"created_from"`
	Receipt                 string  `json:"receipt"`
	TransactionType         string  `json:"transaction_type"`
	IdempotencyKey          string  `json:"idempotency_key"`
	Reason                  string  `json:"reason"`

	Beneficiary InterTransferBeneficiary `json:"beneficiary"`
	Sender      InterTransferSender      `json:"sender"`
}

InternationalTransfer | Attribute | Description | |---------------------------|--------------------------------------------------------------------------------------------------------------------------------------------| | id | Id of international transfer | | user_id | Id creator of transaction | | company_id | Id of company | | exchange_rate | The country exchange rates to IDR | | fee | Transfer fee to the country | | amount | Transfer amount in IDR | | source_country | Source country code using ISO 3166 (Alpha-3) | | destination_country | Destination country code using ISO 3166 (Alpha-3) | | beneficiary_amount | Amount to be received by beneficiary | | beneficiary_currency_code | Currency code of the beneficiary | | status | Transaction status. Possible values are: PENDING,CANCELLED,DONE | | timestamp | The time when the disbursement request was created. Time will be in GMT+7 with yyyy-mm-dd hh:mm:ss format | | time_served | The time when the disbursement is finished | | created_from | The channel of which the transaction was created. Possible values are: APIDashboard | | receipt | URL of the transfer receipt | | transaction_type | Transaction type information. Possible values are: C2CC2BB2CB2B | | idempotency_key | Idempotency key information | | beneficiary | Beneficiary object | | sender | Sender object | | reason | The reason value will be given if the transaction status is CANCELLED. Possible values can be seen in Cancelled Transaction Reasons table. |

type InternationalTransferCallback

type InternationalTransferCallback struct {
	Id                      int     `json:"id"`
	UserId                  int     `json:"user_id"`
	CompanyId               int     `json:"company_id"`
	ExchangeRate            float64 `json:"exchange_rate"`
	Amount                  int     `json:"amount"`
	BeneficiaryAmount       float64 `json:"beneficiary_amount"`
	Fee                     int     `json:"fee"`
	SourceCountry           string  `json:"source_country"`
	DestinationCountry      string  `json:"destination_country"`
	BeneficiaryCurrencyCode string  `json:"beneficiary_currency_code"`
	Status                  string  `json:"status"`
	Timestamp               string  `json:"timestamp"`
	TimeServed              string  `json:"time_served"`
	CreatedFrom             string  `json:"created_from"`
	Receipt                 string  `json:"receipt"`
	TransactionType         string  `json:"transaction_type"`
	IdempotencyKey          string  `json:"idempotency_key"`
	Beneficiary             struct {
		FullName                string      `json:"full_name"`
		BankAccountNumber       string      `json:"bank_account_number"`
		Bank                    string      `json:"bank"`
		Email                   string      `json:"email"`
		Msisdn                  string      `json:"msisdn"`
		Nationality             string      `json:"nationality"`
		Country                 string      `json:"country"`
		Province                string      `json:"province"`
		City                    string      `json:"city"`
		Address                 string      `json:"address"`
		PostalCode              string      `json:"postal_code"`
		Relationship            string      `json:"relationship"`
		SourceOfFunds           string      `json:"source_of_funds"`
		RemittancePurpose       string      `json:"remittance_purpose"`
		Iban                    interface{} `json:"iban"`
		SwiftBicCode            interface{} `json:"swift_bic_code"`
		SortCode                string      `json:"sort_code"`
		IfsCode                 interface{} `json:"ifs_code"`
		BsbNumber               interface{} `json:"bsb_number"`
		BranchNumber            interface{} `json:"branch_number"`
		DocumentReferenceNumber interface{} `json:"document_reference_number"`
		RegistrationNumber      interface{} `json:"registration_number"`
	} `json:"beneficiary"`
	Sender struct {
		Name           string `json:"name"`
		PlaceOfBirth   int    `json:"place_of_birth"`
		DateOfBirth    string `json:"date_of_birth"`
		Address        string `json:"address"`
		IdentityType   string `json:"identity_type"`
		IdentityNumber string `json:"identity_number"`
		Country        int    `json:"country"`
		Job            string `json:"job"`
		Email          string `json:"email"`
		City           string `json:"city"`
		PhoneNumber    string `json:"phone_number"`
	} `json:"sender"`
}

InternationalTransferCallback International transfer callback will be sent to you if you transaction status is changed.

Example InternationalTransferCallback:

{
  "id": 10,
  "user_id": 12345,
  "company_id": 123456,
  "exchange_rate": 19000.55,
  "amount": 1000000,
  "beneficiary_amount": 52.63,
  "fee": 88888,
  "source_country": "IDN",
  "destination_country": "GBR",
  "beneficiary_currency_code": "GBP",
  "status": "DONE",
  "timestamp": "2021-12-02 15:27:24",
  "time_served": "(not set)",
  "created_from": "API",
  "receipt": "someurl.png",
  "transaction_type": "C2C",
  "idempotency_key": "idem-1",
  "beneficiary": {
    "full_name": "John Smith",
    "bank_account_number": "1122333300",
    "bank": "Allica Bank",
    "email": "emial@email.com",
    "msisdn": "09584008222",
    "nationality": "IDN",
    "country": "GBR",
    "province": "United Kingdom",
    "city": "Manchester",
    "address": "Mosley St Manchester",
    "postal_code": "M2",
    "relationship": "SON",
    "source_of_funds": "BUSINESS",
    "remittance_purpose": "EDUCATION",
    "iban": null,
    "swift_bic_code": null,
    "sort_code": "506967",
    "ifs_code": null,
    "bsb_number": null,
    "branch_number": null,
    "document_reference_number": null,
    "registration_number": null
  },
  "sender": {
    "name": "John Doe",
    "place_of_birth": 100230,
    "date_of_birth": "1963-12-01",
    "address": "Some Address Street 123",
    "identity_type": "nat_id",
    "identity_number": "1234789012347890",
    "country": 100252,
    "job": "entrepreneur",
    "email": "sender@mail.com",
    "city": "Sender City",
    "phone_number": "+628123456789"
  }
}

type KycSubmissionRequest

type KycSubmissionRequest struct {
	UserType string `json:"user_type"`
}

type KycSubmissionResponse

type KycSubmissionResponse struct {
	Message string `json:"message"`
}

type LocationKycRequest

type LocationKycRequest struct {
	UserType   string `json:"user_type"`
	CountryID  int64  `json:"country_id,omitempty"`
	ProvinceID int64  `json:"province_id,omitempty"`
	CityID     int64  `json:"city_id,omitempty"`
}

LocationKycRequest | Param | Value | |-------------|--------------------------------------------------------------| | user_type | string (required)Type of user. Validation:User type Agent: 1 | | country_id | integer (optional) Country ID for filtering the provinces | | province_id | integer (optional) City ID for filtering the province_id | | city_id | integer (optional) City ID for filtering the districts |

type LocationKycResponse

type LocationKycResponse struct {
	Countries []Locations `json:"countries,omitempty"`
	Provinces []Locations `json:"provinces,omitempty"`
	Cities    []Locations `json:"cities,omitempty"`
	Districts []Locations `json:"districts,omitempty"`
}

type Locations

type Locations struct {
	Id   int    `json:"id"`
	Name string `json:"name"`
}

Locations | Attribute | Description | |-----------|---------------------------------------| | id | ID Country/Province/Cities/District | | name | Country/Province/Cities/District Name |

Example Locations:

{
  "countries": [
    {
      "id": 1,
      "name": "Indonesia"
    }
  ],
  "provinces": [
    {
      "id": 1,
      "name": "West Java"
    }
  ],
  "cities": [
    {
      "id": 1,
      "name": "Depok"
    }
  ],
  "districts": [
    {
      "id": 1,
      "name": "Sukmajaya"
    }
  ]
}

type Pagination

type Pagination struct {
	StartDate  string `json:"start_date,omitempty"`
	EndDate    string `json:"end_date,omitempty"`
	Pagination string `json:"pagination,omitempty"`
	Page       string `json:"page,omitempty"`
	SortBy     string `json:"sort_by,omitempty"`
	SortType   string `json:"sort_type,omitempty"`
}

Pagination | Param | Value | |------------|---------------------------------------------------------------------------------------------------------------| | start_date | integer (optional) Starting date of the data. Example: "2020-01-01". | | end_date | integer (optional) Ending date of the data. Example: "2020-12-12". End date must be greater than start_date. | | pagination | integer (optional) Pagination of the data. | | page | integer (optional) The desired page of the data pagination. | | sort_by | string (optional) Sort the result by the attribute. | | sort_type | string (optional) You can sort in sort_desc (descending)sort_asc (ascending) |

Example Pagination: [URL]?start_date=start_date&end_date=end_date&pagination=pagination&page=page&sort_by=sort_by&sort_type=sort_type

type Payments

type Payments struct {
	Id               string `json:"id"`
	BillLink         string `json:"bill_link"`
	BillTitle        string `json:"bill_title"`
	SenderName       string `json:"sender_name"`
	SenderBank       string `json:"sender_bank"`
	Amount           int    `json:"amount"`
	Status           string `json:"status"`
	SettlementStatus string `json:"settlement_status"`
	CreatedAt        string `json:"created_at"`
}

Payments | Attribute | Description | |-------------------|---------------------------------------------------------------------------------------------| | id | Payment ID. | | bill_link | Bill link URL of the payment. | | bill_title | Title of the bill. | | sender_name | Name of the user who did the payment. | | sender_bank | Bank code of the user’s bank. | | amount | Payment amount done by the user. | | status | Payment status. FAILEDSUCCESSFULPENDING | | settlement_status | Merchant settlement status. CancelledSettledPending | | created_at | The time when the payment is created. Time will be in GMT+7 with yyyy-mm-dd hh:mm:ss format |

Example Payments:

{
  "id": "PGPWF3453271107384587",
  "bill_link": "flip.id/$companyname/#coffeetable",
  "bill_title": "Coffee Table",
  "sender_name": "John Smith",
  "sender_bank": "qris",
  "amount": 900000,
  "status": "SUCCESSFUL",
  "settlement_status": "Pending",
  "created_at": "2022-07-01 14:57:44"
}

type RepairDataRequest

type RepairDataRequest struct {
	UserType            string `json:"user_type"`
	Name                string `json:"name"`
	IdentityType        string `json:"identity_type"`
	IdentityNumber      string `json:"identity_number"`
	BirthDate           string `json:"birth_date"`
	BirthPlace          string `json:"birth_place"`
	Gender              string `json:"gender"`
	Occupation          string `json:"occupation"`
	CountryId           string `json:"country_id"`
	ProvinceId          string `json:"province_id"`
	CityId              string `json:"city_id"`
	DistrictId          string `json:"district_id"`
	Address             string `json:"address"`
	ResidenceCountryId  string `json:"residence_country_id"`
	ResidenceProvinceId string `json:"residence_province_id"`
	ResidenceCityId     string `json:"residence_city_id"`
	ResidenceDistrictId string `json:"residence_district_id"`
	ResidenceAddress    string `json:"residence_address"`
}

RepairDataRequest | Attribute | Description | |-----------------------|------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------| | user_type | string (required)Type of user. Validation:User type Agent: 1 | | name | string (optional)Agent’s full name. Validation:Alphanumeric1-50 characters | | identity_type | string (optional)Type of identity. Validation:Accepted value are as follows:1: National Id Card or KTP in Indonesia2: Passport | | identity_number | string (optional)Identity number based on the type chosen. Validation:16 characters for KTP20 characters for Passport | | birth_date | string (optional)Agent’s birth date. Validation:DD-MM-YYYY format | | birth_place | string (optional)Agent’s birth place.Validation:Alphanumeric255 characters | | gender | string (optional)Agent’s gender. Validation:Accepted value are as follows:1 for male2 for female | | occupation | string (optional)Agent’s job. Validation:Accepted value are as follows:housewifeentrepreneurprivate_employeegovernment_employeefoundation_boardPeople who work at foundation as an employeeindonesian_migrant_workerAlso known as TKIcompanyIf sender is a company, not individualothers | | country_id | string (optional)Agent’s country code based on the identity chosen. Validation:Available values can be retrieved from the country list API here. | | province_id | string (optional)Agent’s province code based on the identity chosen. Validation:Available values can be retrieved from the province list API here. | | city_id | string (optional)Agent’s city code based on the identity chosen. Validation:Available values can be retrieved from the city list API here. | | district_id | string (optional)Agent’s district code based on the identity chosen. Validation:Available values can be retrieved from the district list API here. | | address | string (optional)Agent’s address based on the identity chosen. Validation:Alphanumeric10-300 charactersSpaces, ., -, /, (, and ) | | residence_country_id | string (optional)Agent’s current residential address country code. Validation:Available values can be retrieved from the country list API here. | | residence_province_id | string (optional)Agent’s current residential address province code. Validation:Available values can be retrieved from the province list API here. | | residence_city_id | string (optional)Agent’s current residential address city code. Validation:Available values can be retrieved from the city list API here. | | residence_district_id | string (optional)Agent’s current residential address district code. Validation:Available values can be retrieved from the district list API here. | | residence_address | string (optional)Agent’s current residential address. Validation:Alphanumeric10-300 charactersSpaces, ., -, /, (, and ) |

Example RepairDataRequest:

{
  "user_type":"1",
  "name":"John Smith",
  "identity_type":"1",
  "identity_number":"1234567890123456",
  "birth_date":"31-10-1990",
  "birth_place":"Kota Depok",
  "gender":"1",
  "occupation":"entrepreneur",
  "country_id":"1",
  "province_id":"12",
  "city_id":"184",
  "district_id":"1234",
  "address":"Jalan Margonda Raya",
  "residence_country_id":"1",
  "residence_province_id":"12",
  "residence_city_id":"184",
  "residence_district_id":"1234",
  "residence_address":"Jalan Margonda Raya"
}

type RepairDataResponse

type RepairDataResponse struct {
	Attribute           string `json:"Attribute"`
	UserId              string `json:"user_id"`
	UserType            string `json:"user_type"`
	Name                string `json:"name"`
	BirthDate           string `json:"birth_date"`
	BirthPlace          string `json:"birth_place"`
	Gender              string `json:"gender"`
	Status              string `json:"status"`
	BasicDataFilled     string `json:"basic_data_filled"`
	IdentityType        string `json:"identity_type"`
	Nik                 string `json:"nik"`
	PassportNumber      string `json:"passport_number"`
	Occupation          string `json:"occupation"`
	CountryId           string `json:"country_id"`
	ProvinceId          string `json:"province_id"`
	CityId              string `json:"city_id"`
	DistrictId          string `json:"district_id"`
	Address             string `json:"address"`
	ResidenceCountryId  string `json:"residence_country_id"`
	ResidenceProvinceId string `json:"residence_province_id"`
	ResidenceCityId     string `json:"residence_city_id"`
	ResidenceDistrictId string `json:"residence_district_id"`
	ResidenceAddress    string `json:"residence_address"`
	CreatedAt           string `json:"created_at"`
	UpdatedAt           string `json:"updated_at"`
}

RepairDataResponse | Attribute | Description | |-------------------------|------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------| | user_id | Id of the Agent | | user_type | User type Agent: 1 | | name | Agent’s full name | | birth_date | Agent’s birth date | | birth_place | Agent’s birth place | | gender | Agent’s gender. Possible values are:1 for male2 for female | | status | For this endpoint, the returned status will always be 20. It means PENDING (See KYC status enum) | | basic_data_filled | Flag if the Agent’s basic data has been filled | | identity_type | Type of identity. Possible values:1: National Id Card or KTP in Indonesia2: Passport | | nik | Identity number value if the identity_type is KTP (1) | | passport_number | Identity number value if the identity_type is Passport (2) | | occupation | Agent’s job. Possible values are:housewifeentrepreneurprivate_employeegovernment_employeefoundation_boardPeople who work at foundation as an employeeindonesian_migrant_workerAlso known as TKIcompanyIf sender is a company, not individualothers | | country_id | Agent’s country code | | province_id | Agent’s province code | | city_id | Agent’s city ID in the identity type chosen | | district_id | Agent’s district ID in the identity type chosen | | address | Agent’s address | | residence_country_id | Agent’s current residential address country code | | residence_province_id | Agent’s current residential address province code | | residence_city_id | Agent’s current residential address city code | | residence_district_id | Agent’s current residential address district code | | residence_address | Agent’s current residential address | | created_at | Agent’s identity data created at timestamp | | updated_at | Agent’s identity data updated at timestamp |

Example RepairDataResponse:

type RepairIdentityImageFileRequest

type RepairIdentityImageFileRequest struct {
	Image requests.UploadFile `json:"image"`
}

type RepairIdentityImageRequest

type RepairIdentityImageRequest struct {
	UserType string `json:"user_type"`
}

RepairIdentityImageRequest | Attribute | Description | |-----------|---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------| | user_type | string (required)Type of user. Validation:User type Agent: 1 | | image | file (required)Agent’s identity image file. Validation:Size less than 2MBDimension between 256 (W) x 256 (H) and 4096 (W) x 4096 (H)File type should be png, jpg, or jpegImage should be uploaded right from Camera app (not Gallery or File or Document app) |

Example RepairIdentityImageRequest:

{
  "user_type":"1",
  "image":(binary)
}

type RepairIdentityImageResponse

type RepairIdentityImageResponse struct {
	ImageUrl string `json:"image_url"`
}

RepairIdentityImageResponse | Attribute | Description | |-----------|---------------------------| | image_url | URL of the uploaded image |

Example RepairIdentityImageResponse:

type SendBankAccountInquiryRequest

type SendBankAccountInquiryRequest struct {
	AccountNumber string `json:"account_number,omitempty"`
	BankCode      string `json:"bank_code,omitempty"`
	InquiryKey    string `json:"inquiry_key,omitempty"`
}

SendBankAccountInquiryRequest | Attribute | Description | |----------------|-------------------------------------------------------------------------------------| | account_number | string (required) The account number of the bank account | | bank_code | string (required) Bank code of the account. Accepted value are listed above | | inquiry_key | string (optional) Inquiry key for handling multiple request with multiple callback |

Example SendBankAccountInquiryRequest:

{
  "account_number": "5465327020",
  "bank_code": "bca",
  "inquiry_key": "aVncCDdKW9dciRvH9qSH"
}

type SendBankAccountInquiryResponse

type SendBankAccountInquiryResponse []struct {
	BankCode      string `json:"bank_code"`
	AccountNumber string `json:"account_number"`
	AccountHolder string `json:"account_holder"`
	Status        string `json:"status"`
	InquiryKey    string `json:"inquiry_key"`
}

SendBankAccountInquiryResponse | Attribute | Description | |----------------|--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------| | bank_code | Bank code of the account | | inquiry_key | Inquiry key for handling multiple request with multiple callback | | account_number | Account number of the bank account | | account_holder | Name of the bank account holder | | status | Possible values are PENDINGInquiry still in processSUCCESSInquiry process is complete and bank account number is validINVALID_ACCOUNT_NUMBERInquiry process is complete but the account number is invalid or maybe a virtual account numberSUSPECTED_ACCOUNTBank account have been suspected on doing fraud. You still can do a disbursement to this account.BLACK_LISTEDBank account have been confirmed on doing a fraud and therefore is blacklisted. You can’t do a disbursment to this account.FAILEDThe inquiry process is failed before we get the final status of the inquiry, e.g due to timeout or any other errors from the bank. If you get this response, please retry the inquiry to trigger reverification of the account.CLOSEDThe inquiry process is complete and the account is valid, but it is closed/inactive so that it cannot receive money. You cannot do a disbursement to this account. |

Example SendBankAccountInquiryResponse:

{
    "bank_code": "bca",
    "account_number": "5465327020",
    "account_holder": "PT Fliptech Lentera IP",
    "status": "SUCCESS",
    "inquiry_key": "aVncCDdKW9dciRvH9qSH",
}

type SpecialDisbursementCallback

type SpecialDisbursementCallback struct {
	Id            int    `json:"id"`
	UserId        int    `json:"user_id"`
	Amount        string `json:"amount"`
	Status        string `json:"status"`
	Reason        string `json:"reason"`
	Timestamp     string `json:"timestamp"`
	BankCode      string `json:"bank_code"`
	AccountNumber string `json:"account_number"`
	RecipientName string `json:"recipient_name"`
	SenderBank    string `json:"sender_bank"`
	Remark        string `json:"remark"`
	Receipt       string `json:"receipt"`
	TimeServed    string `json:"time_served"`
	BundleId      int    `json:"bundle_id"`
	CompanyId     int    `json:"company_id"`
	RecipientCity int    `json:"recipient_city"`
	CreatedFrom   string `json:"created_from"`
	Direction     string `json:"direction"`
	Sender        struct {
		SenderName           string `json:"sender_name"`
		PlaceOfBirth         int    `json:"place_of_birth"`
		DateOfBirth          string `json:"date_of_birth"`
		Address              string `json:"address"`
		SenderIdentityType   string `json:"sender_identity_type"`
		SenderIdentityNumber string `json:"sender_identity_number"`
		SenderCountry        int    `json:"sender_country"`
		Job                  string `json:"job"`
	} `json:"sender"`
	Fee int `json:"fee"`
}

SpecialDisbursementCallback Special Disbursement callback will be sent to you if you transaction status is changed to DONE or CANCELLED. This callback is used for the V2 and V3 Special Disbursement.

Example SpecialDisbursementCallback:

{
  "id": 812,
  "user_id": 23,
  "amount": "10000",
  "status": "DONE",
  "reason": "",
  "timestamp": "2017-09-06 14:29:55",
  "bank_code": "bni",
  "account_number": "0437051936",
  "recipient_name": "- FLIPTECH LENTERA INSPIRASI P",
  "sender_bank": "bri",
  "remark": "testing",
  "receipt": "https://storage.biznetgiocloud.com/v1/AUTH_GIOOST443831/bukti_transfer/123993_2017-08-04%202017:07:26.jpg",
  "time_served": "2017-09-06 14:39:55",
  "bundle_id": 0,
  "company_id": 7,
  "recipient_city": 391,
  "created_from": "API",
  "direction": "DOMESTIC_SPECIAL_TRANSFER",
  "sender": {
    "sender_name": "John Doe",
    "place_of_birth": 391,
    "date_of_birth": "1992-01-31",
    "address": "taman bakokekok di jalan bakokekok 15 no.2 - 230",
    "sender_identity_type": "nat_id",
    "sender_identity_number": "asdas213123",
    "sender_country": 100252,
    "job": "private_employee"
  },
  "fee": 1500
}

type SupportDocuments

type SupportDocuments struct {
	Id        int       `json:"id"`
	Type      int       `json:"type"`
	Selfie    bool      `json:"selfie"`
	Path      string    `json:"path"`
	CreatedAt time.Time `json:"created_at"`
	UpdatedAt time.Time `json:"updated_at"`
}

SupportDocuments | Attribute | Description | |------------|-----------------------------------------------| | id | ID of the uploaded image | | type | User type: 1 (Agent) | | selfie | Flag if the uploaded file is the selfie image | | path | Uploaded file path URL | | created_at | Timestamp of creation of the uploaded file | | updated_at | Timestamp of update of the uploaded file |

Example SupportDocuments:

{
    "id": 1,
    "type": 1,
    "selfie": false,
    "path": "someurl.png",
    "created_at": "2022-01-02T15:38:49.317601182+07:00",
    "updated_at": "2022-01-02T15:38:49.317601182+07:00"
}

type UpdateAgentIdentityRequest

type UpdateAgentIdentityRequest CreateAgentIdentityRequest

UpdateAgentIdentityRequest // the params the same as CreateAgentIdentityRequest

type UpdateAgentIdentityResponse

type UpdateAgentIdentityResponse AgentIdentity

UpdateAgentIdentityResponse the response the same as AgentIdentity

type UploadAgentIdentityFileRequest

type UploadAgentIdentityFileRequest struct {
	Image requests.UploadFile `json:"image"`
}

type UploadAgentIdentityRequest

type UploadAgentIdentityRequest struct {
	UserType     string `json:"user_type"`
	IdentityType string `json:"identity_type"`
	Selfie       string `json:"selfie,omitempty"`
}

UploadAgentIdentityRequest | Attribute | Description | |---------------|-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------| | user_type | string (required)Type of user. Validation:User type Agent: 1 | | image | file (required)Image file that wants to be uploaded. Validation:Size less than 2MBDimension between 256 (W) x 256 (H) and 4096 (W) x 4096 (H)File type should be png, jpg, or jpegImage should be uploaded right from Camera app (not Gallery or File or Document app) | | identity_type | string (required)Type of identity. Validation:Accepted value are as follows:1: National Id Card or KTP in Indonesia2: Passport | | selfie | string (optional)Flag denotes the uploaded file is the identity image or selfie with identity image. Validation:Accepted value are as follows:0: False (default). Denotes that the uploaded file is identity image.1: True. Denotes that the uploaded file is selfie with identity image. |

Example :

{
  "user_type":"1",
  "image":(binary),
  "identity_type":"1",
  "selfie":"1"
}

type UploadAgentIdentityResponse

type UploadAgentIdentityResponse struct {
	ImageUrl string `json:"image_url"`
}

UploadAgentIdentityResponse | Attribute | Description | |-----------|---------------------------| | image_url | URL of the uploaded image |

Example UploadAgentIdentityResponse:

type UploadSupportingDocumentFilesRequest

type UploadSupportingDocumentFilesRequest map[string]requests.UploadFile

type UploadSupportingDocumentResponse

type UploadSupportingDocumentResponse []SupportDocuments

UploadSupportingDocumentResponse the response the same as SupportDocuments

type UploadSupportingDocumentsRequest

type UploadSupportingDocumentsRequest struct {
	UserId   int64  `json:"user_id"`
	UserType string `json:"user_type"`
}

UploadSupportingDocumentsRequest | Attribute | Description | |-------------------------|--------------------------------------------------------------| | user_id | string (required)Agent’s ID. Validation:Numeric | | user_type | string (required)Type of user. Validation:User type Agent: 1 | | student_card | file (optional)Student card image file. | | student_card_selfie | file (optional)Selfie with student card image file. | | employee_card | file (optional)Employee card image file. | | employee_card_selfie | file (optional)Selfie with employee card image file. | | last_certificate | file (optional)Certificate image file. | | last_certificate_selfie | file (optional)Selfie with certificate image file. | | passport | file (optional)Passport image file. | | passport_selfie | file (optional)Selfie with passport image file. | | family_card | file (optional)Family card image file. | | family_card_selfie | file (optional)Selfie with family card image file. | | driving_license | file (optional)Driving license image file. | | driving_license_selfie | file (optional)Selfie with driving license image file. | | married_card | file (optional)Married card image file. | | married_card_selfie | file (optional)Selfie with married card image file. | | npwp | file (optional)NPWP image file. | | npwp_selfie | file (optional)Selfie with NPWP image file. | | bpjs_kesehatan | file (optional)BPJS Kesehatan image file. | | bpjs_kesehatan_selfie | file (optional)Selfie with BPJS Kesehatan image file. |

Example UploadSupportingDocumentsRequest:

{
  "user_id":"1",
  "user_type":"1",
  "passport":"(binary)"
}

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL