Crypto
APIs
Send crypto payment
initiates an outbound crypto payment from a given account to a previously created externaladdress or to an inline beneficiary { "name" "endpoint v1/payments", "method" "post", "url" "{sandbox url}/v1/payments", "description" "", "tab" "examples", "examples" { "languages" \[ { "id" "gvbyb xxxg8aaahk3ybhl", "language" "curl", "code" "{\n \\"accountnumber\\" \\"2917000057\\",\n \\"amount\\" 10000000,\n \\"externaladdress\\" {\n \\"title\\" \\"john's metamask wallet sol\\",\n \\"blockchain\\" \\"solana\\",\n \\"address\\" \\"fvfzayzneljydghc3pwe3wumfgxgkdh6hwjrehgmzw84\\",\n \\"tag\\" \\"sol wallet\\",\n \\"beneficiary\\" {\n \\"name\\" \\"john doe\\",\n \\"addressline1\\" \\"2115 linwood\\",\n \\"addressline2\\" \\"ave\\",\n \\"city\\" \\"fort lee\\",\n \\"stateprovince\\" \\"nj\\",\n \\"countrycode\\" \\"us\\",\n \\"postalcode\\" \\"07024\\"\n }\n },\n \\"originator\\" {\n \\"entitytype\\" \\"business\\",\n \\"entityname\\" \\"sk corp\\",\n \\"addressline1\\" \\"2115 linwood\\",\n \\"addressline2\\" \\"ave\\",\n \\"city\\" \\"fort lee\\",\n \\"stateprovince\\" \\"nj\\",\n \\"postalcode\\" \\"07024\\",\n \\"countrycode\\" \\"us\\"\n },\n \\"currency\\" \\"usdc\\",\n \\"feetype\\" \\"net\\",\n \\"feelevel\\" \\"low\\",\n \\"clientidentifier\\" \\"test 1\\"\n}\n", "customlabel" "" } ], "selectedlanguageid" "gvbyb xxxg8aaahk3ybhl" }, "results" { "languages" \[ { "id" "vvw eg1cazm9nswdn62ez", "language" "200", "code" "{\n \\"id\\" \\"b6bf7f13 7b91 41cb 87d7 b3640167c96e\\",\n \\"referenceid\\" \\"crp2694f3l7gun\\",\n \\"partnerid\\" \\"a6154099 f87f 4944 b974 b32f0108a29a\\",\n \\"productid\\" \\"7c3ef848 8d09 4953 ad55 b32f010ddb05\\",\n \\"clientidentifier\\" \\"test 1\\",\n \\"accountnumber\\" \\"2917000057\\",\n \\"direction\\" \\"outbound\\",\n \\"status\\" \\"hold\\",\n \\"blockchain\\" \\"solana\\",\n \\"currency\\" \\"usdc\\",\n \\"unit\\" \\"mwei\\",\n \\"amount\\" 10000000,\n \\"feecurrency\\" \\"sol\\",\n \\"feeunit\\" \\"lamport\\",\n \\"feetype\\" \\"net\\",\n \\"feelevel\\" \\"low\\",\n \\"sourceaddress\\" \\"alpx1irfrmpbbodmqacqvtxewei4vijzgfrdgvzbta1h\\",\n \\"destinationaddress\\" \\"fvfzayzneljydghc3pwe3wumfgxgkdh6hwjrehgmzw84\\",\n \\"createdat\\" \\"2025 09 26t17 49 56 6277343\\",\n \\"lastmodifiedat\\" \\"2025 09 26t21 49 56 6388805z\\",\n \\"postingstatus\\" \\"pending\\",\n \\"transactionhash\\" null\n}", "customlabel" "" } ], "selectedlanguageid" "vvw eg1cazm9nswdn62ez" }, "request" { "pathparameters" \[], "queryparameters" \[], "headerparameters" \[], "bodydataparameters" \[ { "name" "accountnumber", "kind" "required", "type" "string", "description" "account number initiating the payment max length 20", "" "required" }, { "name" "amountnative", "kind" "required", "type" "number", "description" "amount in usd cents (system converts to chain base units) you must provide either the amount or amountnative, not both", "" "amount in usd cents (system converts to chain base units) you must provide either the amount or amountnative, not both" }, { "name" "amount", "kind" "required", "type" "number", "description" "amount in blockchain base units (e g , 0 01 usdc = 10,000 on 6 decimals) you must provide either the amount or amountnative, not both", "" "required" }, { "name" "externaladdressid", "kind" "required", "type" "string", "description" "reference to a saved externaladdress in uuid format max length 36 you must provide either the externaladdressid or the externaladdress object but not both ", "" "reference to a saved externaladdress in uuid format max length 36 you must provide either the externaladdressid or the externaladdress object but not both " }, { "name" "externaladdress", "kind" "required", "type" "object", "description" "beneficiary details including name and address information you must provide either the externaladdressid or the exteraladdress object but not both ", "" "beneficiary details including name and address information you must provide either the externaladdressid or the exteraladdress object but not both ", "children" \[ { "name" "title", "kind" "required", "type" "string", "description" "label for wallet (inline only) max length 255" }, { "name" "blockchain", "kind" "required", "type" "string", "description" "e g , solana, ethereum max length 20" }, { "name" "address", "kind" "required", "type" "string", "description" "destination wallet address max length 255" }, { "name" "tag", "kind" "optional", "type" "string", "description" "memo/tag/destination tag (if chain requires) max length 255" }, { "name" "beneficiary", "kind" "required", "type" "object", "description" "beneficiary kyc address block", "children" \[ { "name" "name", "kind" "required", "type" "string", "description" "full legal ame max length 200" }, { "name" "addressline1", "kind" "required", "type" "string", "description" "street line 1 max length 80" }, { "name" "addressline2", "kind" "optional", "type" "string", "description" "stree line 2 max length 80" }, { "name" "city", "kind" "required", "type" "string", "description" "city max length 40" }, { "name" "stateprovince", "kind" "required", "type" "string", "description" "state/province max length 2" }, { "name" "countrycode", "kind" "required", "type" "string", "description" "iso 3166 1 alpha 2 max length 2" }, { "name" "postalcode", "kind" "required", "type" "string", "description" "postal/zip max length 20" } ] } ], "schema" \[ { "name" "title", "kind" "required", "type" "string", "description" "label for wallet (inline only) max length 255" }, { "name" "blockchain", "kind" "required", "type" "string", "description" "e g , solana, ethereum max length 20" }, { "name" "address", "kind" "required", "type" "string", "description" "destination wallet address max length 255" }, { "name" "tag", "kind" "optional", "type" "string", "description" "memo/tag/destination tag (if chain requires) max length 255" }, { "name" "beneficiary", "kind" "required", "type" "object", "description" "beneficiary kyc address block", "children" \[ { "name" "name", "kind" "required", "type" "string", "description" "full legal ame max length 200" }, { "name" "addressline1", "kind" "required", "type" "string", "description" "street line 1 max length 80" }, { "name" "addressline2", "kind" "optional", "type" "string", "description" "stree line 2 max length 80" }, { "name" "city", "kind" "required", "type" "string", "description" "city max length 40" }, { "name" "stateprovince", "kind" "required", "type" "string", "description" "state/province max length 2" }, { "name" "countrycode", "kind" "required", "type" "string", "description" "iso 3166 1 alpha 2 max length 2" }, { "name" "postalcode", "kind" "required", "type" "string", "description" "postal/zip max length 20" } ] } ] }, { "name" "originator", "kind" "optional", "type" "object", "description" "optional originator details (kyc/travel rule contexts)", "" "optional originator details (kyc/travel rule contexts)", "children" \[], "schema" \[] }, { "name" "currency", "kind" "required", "type" "string", "description" "asset to send (e g , usdc) max length 10", "" "asset to send (e g , usdc) max length 10" }, { "name" "feetype", "kind" "optional", "type" "string", "description" "net (recipient gets full) max length 10", "" "net (recipient gets full) max length 10" }, { "name" "feelevel", "kind" "optional", "type" "string", "description" "low max length 10", "" "low max length 10" }, { "name" "clientidentifier", "kind" "optional", "type" "string", "description" "client reference for idempotency/recon max length 50", "" "client reference for idempotency/recon max length 50" } ], "formdataparameters" \[] }, "currentnewparameter" { "label" "body parameter", "value" "bodydataparameters" }, "hastryitout" false, "response" \[ { "name" "id", "kind" "optional", "type" "string", "description" "unique identifier of the payment" }, { "name" "referenceid", "kind" "optional", "type" "string", "description" "cross river generated tracking reference", "children" \[] }, { "name" "partnerid", "kind" "optional", "type" "string", "description" "partner identifier", "children" \[] }, { "name" "productid", "kind" "optional", "type" "string", "description" "product identifier", "children" \[] }, { "name" "clientidentifier", "kind" "optional", "type" "string", "description" "client reference provided in payment", "children" \[] }, { "name" "accountnumber", "kind" "optional", "type" "string", "description" "debited account", "children" \[] }, { "name" "direction", "kind" "optional", "type" "string", "description" "outbound", "children" \[] }, { "name" "status", "kind" "optional", "type" "string", "description" "created, hold, completed, rejected, etc ", "children" \[] }, { "name" "blockchain", "kind" "optional", "type" "string", "description" "network used", "children" \[] }, { "name" "currency", "kind" "optional", "type" "string", "description" "asset (e g , usdc)", "children" \[] }, { "name" "unit", "kind" "optional", "type" "string", "description" "base unit (e g , mwei)", "children" \[] }, { "name" "amountnative", "kind" "optional", "type" "number", "description" "usd cents (if provided/computed)", "children" \[] }, { "name" "amount", "kind" "optional", "type" "number", "description" "blockchain base units", "children" \[] }, { "name" "netamount", "kind" "optional", "type" "string", "description" "net after fees", "children" \[] }, { "name" "feecurrency", "kind" "optional", "type" "string", "description" "fee asset + unit (e g , sol / lamport)", "children" \[] }, { "name" "feetype", "kind" "optional", "type" "string", "description" "alsof known as feelevel fee configuration", "children" \[] }, { "name" "servicefee", "kind" "optional", "type" "number", "description" "platform fee", "children" \[] }, { "name" "sourceaddress/destinationaddress", "kind" "optional", "type" "string", "description" "on chain addresses", "children" \[] }, { "name" "externaladdressid", "kind" "optional", "type" "string", "description" "linked external address, if used", "children" \[] }, { "name" "createdat", "kind" "optional", "type" "string", "description" "iso timestamps", "children" \[] }, { "name" "lastmodifiedat", "kind" "optional", "type" "string", "description" "iso timestamps", "children" \[] }, { "name" "canceledat", "kind" "optional", "type" "string", "description" "iso timestamps", "children" \[] }, { "name" "rejectedat", "kind" "optional", "type" "string", "description" "iso timestamps", "children" \[] }, { "name" "processedat", "kind" "optional", "type" "string", "description" "iso timestamps", "children" \[] }, { "name" "completedat", "kind" "optional", "type" "string", "description" "iso timestamps", "children" \[] }, { "name" "transactionhash", "kind" "optional", "type" "string", "description" "blockchain tx hash", "children" \[] }, { "name" "postingstatus", "kind" "optional", "type" "string", "description" "internal posting status (pending, posted, etc )", "children" \[] } ] } relevent webhooks for this endpoint be sure you have accounts, cards and payment events for these webhooks event name description webhook events crypto docid\ l2nt0zp yk zwesb7d pt outbound crypto payment successfully sent/broadcast to chain webhook events crypto docid\ l2nt0zp yk zwesb7d pt outbound payment canceled before blockchain initiation webhook events crypto docid\ l2nt0zp yk zwesb7d pt outbound payment rejected during validation/compliance