<aside> 💡 The quickest way to get up and running with Routefusion in days not months

</aside>

Summary

This walkthrough will show you how to implement the routefusion API for products looking to deliver a 100% self-serve workflow to their customers to unlock cross-border payments. The implementation guide will take you through the execution of each workflow required will look like:

  1. Create an entity
  2. Create a Beneficiary
  3. Create a Transfer
  4. Get a quote (optional)
  5. Finalize the Transfer

Authentication

We will send you an API key in the form of a Bearer token which will need to be added as an Authorization header in every network call to Routefusion.

curl --location --request POST '<https://sandbox.external.routefusion.com/graphql>' \\
--header 'Content-Type: application/json' \\
--header 'Authorization: Bearer yourBearerToken' \\
--data '{ someQuery }'

Create an entity

Now that the user has been created on routefusion we need to create the entity that is ultimately making the payment.

mutation createBusinessEntity($user_id: UUID!) {
  createBusinessEntity(
		user_id: $user_id
		email: "[email protected]"
		phone: "5125468912"
		contact_first_name: "john"
		contact_last_name: "smith"
		business_name: "routefusion"
		business_address1: "1305 E 6th"
		business_address2: "unit 10"
		business_city: "autin"
		business_state_province_region: "tx"
		business_postal_code: "78702"
		business_country: "US"
		business_type: "financial technology"
		accept_terms_and_conditions: true
	)
}

Create a beneficiary

Now that you have a user and an entity, you can go ahead and create a beneficiary (the recipient of the payment). The first thing you will want to do is acquire the requirements for creating a beneficiary in the desired region.

query beneficiaryRequiredFields (
    $bank_country: ISO3166_1!
    $currency: ISO4217!
		$beneficiary_country: ISO3166_1
		
) {
    beneficiaryRequiredFields (
        bank_country: $bank_country 
        currency: $currency
				beneficiary_country: $beneficiary_country	
    ) {
        personal {
            variable
            regex
            variable_sub_type
            example
        }
        business {
            variable
            regex
            variable_sub_type
            example
        }
    }
}

Once you have the requirements for the type of beneficiary you want to create, you can create the beneficiary with the appropriate mutation. We are using a personal beneficiary example below, however, you may also use createBusinessBeneficiary